AirTrack 的
Apache Airflow的模型上下文协议(MCP)服务器,支持对DAG元数据、运行状态和任务洞察的标准化访问,允许与MCP客户端无缝集成以进行监控和自动化。
关于
该项目实现了一个模型上下文协议服务器,该服务器封装了Apache Airflow的REST API,允许MCP客户端以标准化的方式与Airflow交互。它使用官方的Apache Airflow客户端库来确保兼容性和可维护性。
项目结构
combined_project/
├── airflow/ # Airflow project files
│ ├── dags/ # Airflow DAG definitions
│ ├── logs/ # Airflow logs
│ ├── plugins/ # Airflow plugins
│ └── Docker-compose.yaml # Docker compose file for Airflow
│
└── mpc/ # MPC application files
├── utils/ # Utility functions
├── server.py # Main server file
└── main.py # Entry point运行项目
需求
- Docker和Docker Compose for Airflow
- MPC应用程序的Python 3.8+
- MPC应用程序的虚拟环境
气流
- 导航到气流目录:
cd airflow- 使用Docker Compose启动气流:
docker-compose up - 访问Airflow web界面http://localhost:8181
用户名: admin 密码: airflow
MPC应用程序
- 导航到mpc目录:
cd mpc- 创建并激活虚拟环境:
python -m venv .venv
.venv\Scripts\activate # On Windows
source .venv/bin/activate # On Unix/MacOS- 安装依赖项:
pip install -r requirements.txt- 运行MPC服务器:
python server.py使用Claude Desktop
{
"mcpServers": {
"FlowPredictor": {
"command": "D:\\Apps\\conda\\Scripts\\uv.EXE",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
""
]
}
}
}整合
气流DAG可以通过API调用与MPC应用程序交互。确保在执行需要MPC功能的工作流时,这两个服务都在运行。
未来发展
- 🔄 实时更新–通过WebSocket或SSE流式传输DAG/任务状态。
- 🔐 安全性–添加OAuth2、API密钥和基于角色的访问。
- ⚡ 事件触发器–DAG事件上的自动触发代理。
- A.📊 分析–DAG性能和趋势的仪表板。
- 🤖 AI故障排除-使用LLM进行问题分析和修复。
- ## 与OpenWebUi集成
- 1. 安装MCPO
pip install mcpo2.在mcp文件夹中创建config.js
{
"mcpServers": {
"airflow-mcp-server": {
"command": "C:\\Users\\RakeshReddyBijjam\\pipx\\venvs\\meltano\\Scripts\\uv.EXE",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"C:\\Users\\RakeshReddyBijjam\\Desktop\\claude_sam\\AirTrack\\mcp\\server.py"
]
}
}
}- 运行服务器
uvx mcpo --config config.json --port 8001
