MCP Airflow

Communauté Santé

Manage Apache Airflow via its REST API: list DAGs, inspect runs and task instances, trigger runs, and check failed DAGs and scheduler health.

Installation

Les étapes d'installation sont dans la documentation ci-dessous. Documentation

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. Install
  2. Configuration
  3. Usage
  4. Tools
  5. Tests
  6. Documentation
  7. License

title: MCP Airflow kind: source_doc area: engineering project: mcp-airflow collection: mcp-airflow owner: maintainers status: current canonical: README.md globalRef: qmd://mcp-airflow/README.md reviewCadenceDays: 90 lastReviewedAt: 2026-09-28 sourceRefs:

  • pyproject.toml related:
  • AGENTS.md
  • docs/fluxos-negocio.md
  • docs/arquitetura.md
  • docs/operacao.md
  • docs/index.md supersedes: [] supersededBy: [] sensitivity: public --- # mcp-airflow

MCP server that exposes Apache Airflow REST API operations as tools. Built with the FastMCP API from the MCP Python SDK.

This is an open-source package. The maintainers do not operate a public hosted Airflow endpoint through this repository.

Install

# Run directly with uvx (no install needed)
uvx mcp-airflow

# Or install with pip
pip install mcp-airflow

For development:

uv pip install -e ".[dev]"
# or with dependency groups
uv sync --group dev

Configuration

Set these environment variables (or create a .env file from .env.example):

VariableDescriptionExample
AIRFLOW_BASE_URLAirflow REST API base URL. Use /api/v2 for Airflow 3.x or /api/v1 for 2.xhttp://100.x.x.x:8080/api/v2
AIRFLOW_USERNAMEAuth username (JWT on 3.x, basic auth on 2.x)admin
AIRFLOW_PASSWORDAuth password
Authentication

The client picks the auth scheme automatically based on your Airflow version:

  • Airflow 3.x (JWT) — a JWT token is obtained from the /auth/token endpoint using AIRFLOW_USERNAME/AIRFLOW_PASSWORD, sent as a Bearer token, and refreshed automatically. Point AIRFLOW_BASE_URL at /api/v2.
  • Airflow 2.x (basic auth) — if the JWT flow is unavailable, the client falls back to HTTP basic auth with the same username/password. Point AIRFLOW_BASE_URL at /api/v1.

Usage

Run the server:

mcp-airflow

Or add to your MCP client config (e.g., Claude Desktop):

{
  "mcpServers": {
    "airflow": {
      "command": "mcp-airflow",
      "env": {
        "AIRFLOW_BASE_URL": "http://100.x.x.x:8080/api/v2",
        "AIRFLOW_USERNAME": "admin",
        "AIRFLOW_PASSWORD": "your-password"
      }
    }
  }
}

Tools

ToolDescription
list_dagsList all DAGs with paused/active status
get_dag_runs_todayGet all DAG runs from today with status
get_dag_run_statusGet the latest run status for a specific DAG
trigger_dag_runTrigger a manual DAG run
get_task_instancesGet task instances for a specific DAG run
check_failed_dagsCheck for failed DAGs in the last 24 hours
check_scheduler_healthCheck scheduler heartbeat and metadatabase status

Tests

pytest

Documentation

Start at docs/index.md for the supported flows, architecture, operational guidance, and security boundary.

Roadmap and delivery status live in GitHub Issues and pull requests.

License

MIT

Questions fréquentes

Qu'est-ce que MCP Airflow ?

Manage Apache Airflow via its REST API: list DAGs, inspect runs and task instances, trigger runs, and check failed DAGs and scheduler health.

Comment installer MCP Airflow ?

Suivez les étapes d'installation de sa documentation, affichée sur cette page et dans son dépôt.

MCP Airflow est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient MCP Airflow ?

Il est publié par antonio-mello-ai. AI.tn le référence sans le maintenir ni le recommander.

Issu des listes communautaires awesome-mcp-servers et du dépôt GitHub du projet. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.