MCP Airflow logo

MCP Airflow

by antonio-mello-ai

Manage Airflow DAGs, runs, tasks, failures, and scheduler health through MCP tools.

Install MCP Airflow

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "antonio-mello-ai-mcp-airflow": {
      "command": "uvx",
      "args": [
        "mcp-airflow"
      ],
      "env": {
        "AIRFLOW_BASE_URL": "YOUR_VALUE_HERE",
        "AIRFLOW_USERNAME": "YOUR_VALUE_HERE",
        "AIRFLOW_PASSWORD": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Automated check passed— started and listed 7 tools correctly (11d ago).

Overview

antonio-mello-ai/mcp-airflow MCP server exposes Apache Airflow REST API operations through seven FastMCP tools. It lets an agent inspect DAGs, runs, task instances, recent failures, and scheduler health, as well as trigger a manual DAG run. Configure the Airflow API URL and credentials through environment variables, then run it with `uvx` or an installed command. Reach for it when an MCP client needs operational visibility or controlled DAG actions in an Airflow deployment.

Use cases

  • List active and paused Airflow DAGs
  • Review today's DAG run statuses
  • Trigger a manual DAG run
  • Inspect task instances after a failed run
  • Check recent failures and scheduler health

Key features

  • Airflow REST API access through MCP
  • DAG listing with paused and active status
  • DAG run and task-instance inspection
  • Manual DAG run triggering
  • Recent failure checks
  • Scheduler heartbeat and metadatabase checks

Tools7

What MCP Airflow lets your agent do. Expand a tool for its parameters.

Verified live~510 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

6/6 checks healthy over the last 78d

What it can do

From the 7 tools this server returned when we ran it.

Read-only tools · 7
Network at startup2 connections
Files written at startupNone

Observed 2026-10-16 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 6d ago via OSV.dev · mcp-airflow (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars2Stargazers on the source repository.
Last commit29d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed7Callable tools this server registers over MCP.
Directory activity2 viewsConfig copies, upvotes, and views on AllMCPs.

How MCP Airflow works

What antonio-mello-ai/mcp-airflow MCP server does

antonio-mello-ai/mcp-airflow MCP server connects an MCP client to an Apache Airflow instance through its REST API. It provides seven tools for inspecting workflow state and initiating a manual run. The read-oriented tools cover DAG inventory, current-day DAG runs, the latest run for a selected DAG, task instances within a run, failed DAGs from the previous 24 hours, and scheduler or metadatabase health.

The trigger_dag_run tool adds a write operation for manually starting a DAG run. This makes the package suitable for agents that need to answer operational questions and, where the connected Airflow account permits it, start a workflow without switching to the Airflow web interface.

How it works

The package is implemented with the FastMCP API from the MCP Python SDK. It presents the listed operations as MCP tools while using the configured Airflow REST API as the backend; it does not provide or host an Airflow service itself.

For Airflow 3.x, point the client at the /api/v2 API and provide credentials used to obtain a JWT from /auth/token. The resulting bearer token is refreshed automatically. For Airflow 2.x, point the base URL at /api/v1; when the JWT flow is unavailable, the client uses HTTP basic authentication with the same username and password.

Setup and configuration

Install without a separate package step by running uvx mcp-airflow, or install the package with pip install mcp-airflow. After installation, the server can be started with mcp-airflow. A development setup is also documented through an editable install with the development dependency group, but that is intended for contributors rather than normal use.

The base URL must include the API path matching the Airflow version.

Tools and capabilities

The seven exposed tools are:

  • list_dags: returns DAGs with paused or active status.
  • get_dag_runs_today: returns the day's DAG runs and their statuses.
  • get_dag_run_status: reports the latest run status for a specified DAG.
  • trigger_dag_run: starts a manual run for a DAG.
  • get_task_instances: retrieves task instances for a selected DAG run.
  • check_failed_dags: checks for DAG failures during the last 24 hours.
  • check_scheduler_health: checks scheduler heartbeat and metadatabase status.

Together, these tools support common monitoring flows: finding available DAGs, checking whether today's runs completed, investigating tasks within a run, identifying recent failures, and checking core scheduler health. The tool set does not describe general Airflow administration beyond these operations.

Limitations and notes

The repository does not operate a public hosted Airflow endpoint. You must provide access to an Airflow deployment and valid credentials through the configuration variables. The README distinguishes Airflow 3.x and 2.x by API path and authentication behavior, so using the matching base URL is part of setup.

The documented client example is for Claude Desktop. The package is licensed under MIT.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about MCP Airflow

antonio-mello-ai/mcp-airflow is an MCP server that connects MCP clients to Apache Airflow through its REST API. Its main tools list DAGs, inspect DAG runs and task instances, trigger manual runs, check recent failed DAGs, and check scheduler heartbeat and metadatabase health. It is built with FastMCP.

Install it by running `uvx mcp-airflow`, or use `pip install mcp-airflow`. After installation, start the server with `mcp-airflow`. Configure the Airflow URL and credentials through environment variables before connecting an MCP client.

Set `AIRFLOW_BASE_URL`, `AIRFLOW_USERNAME`, and `AIRFLOW_PASSWORD`. Use an `/api/v2` URL for Airflow 3.x and an `/api/v1` URL for Airflow 2.x. The client uses JWT authentication for Airflow 3.x and falls back to basic authentication for Airflow 2.x.

It can list DAGs, show today's runs, report the latest run status for a DAG, trigger a manual run, inspect task instances, find DAGs that failed in the last 24 hours, and check scheduler and metadatabase health.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMCP Airflow AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/antonio-mello-ai-mcp-airflow?style=directory)](https://allmcps.com/mcp/antonio-mello-ai-mcp-airflow)
HTML Embed
<a href="https://allmcps.com/mcp/antonio-mello-ai-mcp-airflow"><img src="https://allmcps.com/api/badge/antonio-mello-ai-mcp-airflow?style=directory" alt="MCP Airflow on AllMCPs" /></a>