Airflow Mcp

Airflow Mcp

🚀 Airflow MCP 服务器

本项目是一个与 Apache Airflow 集成的模型上下文协议 (MCP) 服务器,提供了一系列工具,可用于管理和监控 Airflow 的 DAG 运行。借助该服务器,用户能够轻松触发 DAG、获取 DAG 状态、回填数据以及获取日志等。

🚀 快速开始

使用此服务器时,可参考以下配置示例:

{
"mcpServers": {
"airflow": {
"command": "uvx",
"args": [
"airflow-mcp"
],
"env": {
"AIRFLOW_API_BASE": "http://localhost:8000/api/v1",
"AIRFLOW_USERNAME": "admin",
"AIRFLOW_PASSWORD": "admin"
}
}
}
}

✨ 主要特性

  • 触发 DAG (trigger-dag):触发指定 DAG 的运行。
  • 启用 DAG (enable-dag):启用指定的 DAG。
  • 获取每日报告 (get-daily-report):获取指定时间范围内的所有 DAG 运行的汇总报告。
  • 列出所有 DAG (list-dags):列出所有可用的 DAG。
  • 批量获取 DAG 运行记录 (list-dag-runs):批量获取 DAG 的运行记录。
  • 获取 DAG 运行状态 (get-dag-status):获取特定 DAG 的运行状态。
  • 获取 DAG 日志 (get-dag-logs):获取 DAG 运行的日志。
  • 回填 DAG (backfill-dag):回填指定日期范围内的 DAG 数据。

📦 安装指南

开发环境搭建

  1. 同步代码:将项目代码同步到本地。
  2. 修改配置文件:修改 mcp_config.json,添加 Airflow 配置。
{
"mcpServers": {
"airflow": {
"command": "uv",
"args": [
"--directory",
"/path/to/airflow-mcp",
"run",
"airflow_mcp.py"
],
"env": {
"AIRFLOW_API_BASE": "http://localhost:8000/api/v1",
"AIRFLOW_USERNAME": "admin",
"AIRFLOW_PASSWORD": "admin"
}
}
}
}
  1. 启动 Airflow 实例
mkdir ~/airflow-docker
cd ~/airflow-docker
curl -LfO 'https://airflow.apache.org/docs/apache-airflow/2.8.3/docker-compose.yaml'
cat << EOF > .env
AIRFLOW_UID=$(id -u)
AIRFLOW__CORE__LOAD_EXAMPLES=false
AIRFLOW__CORE__EXECUTOR=SequentialExecutor
EOF
docker compose up -d

💻 使用示例

基础用法

以下是使用该服务器的基础配置示例:

{
"mcpServers": {
"airflow": {
"command": "uvx",
"args": [
"airflow-mcp"
],
"env": {
"AIRFLOW_API_BASE": "http://localhost:8000/api/v1",
"AIRFLOW_USERNAME": "admin",
"AIRFLOW_PASSWORD": "admin"
}
}
}
}

🤝 贡献

欢迎贡献代码!请提交 Pull Request 并确保遵循项目的编码规范。

📄 许可证

本项目采用 MIT 许可协议。

  • 0 关注
  • 0 收藏,27 浏览
  • system 提出于 2025-10-06 13:12

相似服务问题

相关AI产品