基本能力
产品定位
mcp-server-apache-airflow 是一个用于 Apache Airflow 的 MCP 服务器实现,旨在通过标准化的协议与 Apache Airflow 进行交互,提升开发和管理效率。
核心功能
- DAG 管理:包括 DAG 的列表、详情、暂停、取消暂停、更新、删除等操作。
- DAG 运行管理:支持 DAG 运行的创建、详情查看、更新、删除等操作。
- 任务管理:支持任务的列表、详情查看、实例管理、状态更新等操作。
- 变量管理:支持变量的创建、读取、更新、删除等操作。
- 连接管理:支持连接的创建、测试、更新、删除等操作。
- 数据集管理:支持数据集的列表、详情查看、事件管理等操作。
- 监控与健康检查:提供健康状态检查和版本信息获取功能。
适用场景
- 自动化工作流管理:适用于需要管理和监控复杂工作流的场景。
- 任务调度与监控:适用于需要调度和监控任务的场景。
- 数据管道管理:适用于需要管理数据管道的场景。
- 开发与测试环境:适用于开发和测试环境中需要与 Apache Airflow 交互的场景。
使用教程
使用依赖
- 确保已安装
apache-airflow-client
库,安装命令:
bash
pip install apache-airflow-client
环境变量设置
设置以下环境变量:
bash
export AIRFLOW_HOST=<your-airflow-host>
export AIRFLOW_USERNAME=<your-airflow-username>
export AIRFLOW_PASSWORD=<your-airflow-password>
安装与运行
-
通过 Smithery 安装:
bash
npx -y @smithery/cli install @yangkyeongmo/mcp-server-apache-airflow --client claude -
手动运行:
bash
make run
或直接运行 SSE 服务器:
bash
make run-sse
调试方式
- 检查服务是否正常运行:
bash
curl http://localhost:8000/api/v1/health - 查看版本信息:
bash
curl http://localhost:8000/api/v1/version
工具列表
- uvx:用于运行 MCP 服务器的命令行工具。
- uv:另一种运行 MCP 服务器的命令行工具。
- Smithery CLI:用于自动化安装和管理 MCP 服务器的工具。
常见问题解答
- 如何选择特定的 API 组?
使用--apis
参数指定需要启用的 API 组,例如:
bash
uv run mcp-server-apache-airflow --apis "dag,dagrun" - 如何修改监听端口?
使用--port
参数指定端口号,例如:
bash
make run --port 8080 - 如何切换传输类型?
使用--transport
参数指定传输类型(stdio/sse),例如:
bash
make run --transport sse