基本能力
产品定位
airflow-mcp-server 是一个用于控制 Airflow 的 MCP 服务器,主要用于通过 Airflow API 进行任务管理和监控。
核心功能
- 操作模式:
- 安全模式(Safe Mode):仅允许只读操作(GET 请求),防止对 Airflow 实例的修改。
- 普通模式(Unsafe Mode):允许所有操作,包括修改操作(默认模式)。
- 认证方式:
- Basic Auth:通过
AUTH_TOKEN
环境变量使用 base64 编码的用户名和密码进行认证。 - Cookie:通过
COOKIE
环境变量使用会话 Cookie 进行认证。 - 配置灵活性:支持通过环境变量配置 Airflow API 的基本 URL、认证信息和 OpenAPI 规范文件路径。
适用场景
- 开发环境:在开发过程中通过 API 快速管理和监控 Airflow 任务。
- 生产环境:在生产环境中通过安全模式监控 Airflow 任务状态,避免误操作。
- 自动化脚本:集成到自动化脚本中,通过 API 批量管理 Airflow 任务。
工具列表
- uvx:用于启动 airflow-mcp-server 的工具。
- airflow-mcp-server:主服务工具,支持安全模式和普通模式。
常见问题解答
- 认证问题:必须提供
AUTH_TOKEN
或COOKIE
环境变量中的至少一种认证方式。 - 分页限制:默认每页返回 100 条记录,可通过修改
airflow.cfg
文件中的maximum_page_limit
配置项调整。
使用教程
使用依赖
- 确保已安装 Python 和 pip。
- 安装必要的依赖:
bash
pip install uvx
安装教程
- 通过 uvx 启动服务:
bash
uvx airflow-mcp-server - 配置环境变量:
bash
export AIRFLOW_BASE_URL="http://<host:port>/api/v1"
export AUTH_TOKEN="<base64_encoded_username_password>"
# 或
export COOKIE="<session_cookie>"
调试方式
- 启动服务并检查日志:
bash
airflow-mcp-server --unsafe - 验证 API 访问:
bash
curl http://localhost:<port>/api/v1/tasks