Skip to main content

本项目是一个与 Apache Airflow 集成的 Model Context Protocol (MCP) 服务器,提供多种工具来管理和监控 Airflow 的 DAG 运行。它支持触发 DAG、获取 DAG 状态、回填数据、获取日志等操作。

Project description

Airflow MCP 服务器

项目概述

本项目是一个与 Apache Airflow 集成的 Model Context Protocol (MCP) 服务器,提供多种工具来管理和监控 Airflow 的 DAG 运行。它支持触发 DAG、获取 DAG 状态、回填数据、获取日志等操作。

功能特性

  • 触发 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 数据。

使用

{
  "mcpServers": {
    "airflow": {
      "command": "uvx",
      "args": [
        "airflow-mcp"
      ]
    }
  }
}

开发

  1. uv sync
  2. 修改 mcp_config.json, 加入 airflow 配置
{
  "mcpServers": {
    "airflow": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/airflow-mcp",
        "run",
        "airflow_mcp.py"
      ]
    }
  }
}
  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

贡献

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

许可

本项目采用 MIT 许可协议。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

airflow_mcp-0.1.1.tar.gz (20.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

airflow_mcp-0.1.1-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file airflow_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: airflow_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 20.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.5

File hashes

Hashes for airflow_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 807714fa52681e1d6bcb7fdc32e35d5fe532d10c79106bcca02d66a397d35be9
MD5 5e1e48f6722af44248e0f888218776a0
BLAKE2b-256 2183336250e1d0f1cc18c83ce3acc17a5135b2614a43c963ac2c52e689374a50

See more details on using hashes here.

File details

Details for the file airflow_mcp-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for airflow_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 baea1de4f6e3925e786f1bae291bb794925fad4c43d8acbb5bd89c182ade077e
MD5 407b562f9ec5a8db949e3a3a15b5e709
BLAKE2b-256 76d6f2bd21a36fc0c1aaae9dcaca98fc94aca25a41992ed75140e946fc8f064e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page