developer-tools

astro-airflow-mcp

by astronomer

astro-airflow-mcp: AI assistant access to Apache Airflow REST API for DAG management, task monitoring, logs, and diagnos

An MCP server that enables AI assistants to interact with Apache Airflow's REST API for DAG management, task monitoring, and system diagnostics. It provides comprehensive tools for triggering workflows, retrieving logs, and inspecting system health across Airflow 2.x and 3.x versions.

github stars

8

Supports Airflow 2.x and 3.xBuilt by AstronomerOne-click IDE installation

best for

  • / Data engineers managing Airflow pipelines
  • / DevOps teams monitoring workflow systems
  • / Debugging failed DAG runs
  • / Airflow system administration

capabilities

  • / Trigger DAG runs
  • / Retrieve task and workflow logs
  • / Monitor DAG and task statuses
  • / Check system health
  • / List and inspect DAGs
  • / Query workflow execution history

what it does

Connects AI assistants to Apache Airflow's REST API to manage workflows, monitor tasks, and diagnose system issues. Provides comprehensive Airflow operations through conversational interface.

about

astro-airflow-mcp is an official MCP server published by astronomer that provides AI assistants with tools and capabilities via the Model Context Protocol. astro-airflow-mcp: AI assistant access to Apache Airflow REST API for DAG management, task monitoring, logs, and diagnos It is categorized under developer tools.

how to install

You can install astro-airflow-mcp in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

license

Apache-2.0

astro-airflow-mcp is released under the Apache-2.0 license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

readme

[!WARNING] This project has been relocated to the Astronomer agents monorepo.


Airflow MCP Server

CI Python 3.10+ PyPI - Version License: Apache 2.0

A Model Context Protocol (MCP) server for Apache Airflow that provides AI assistants with access to Airflow's REST API. Built with FastMCP.

Quickstart

IDEs

<a href="https://insiders.vscode.dev/redirect?url=vscode://ms-vscode.vscode-mcp/install?%7B%22name%22%3A%22astro-airflow-mcp%22%2C%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22astro-airflow-mcp%22%2C%22--transport%22%2C%22stdio%22%5D%7D"><img src="https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white" alt="Install in VS Code" height="32"></a> <a href="https://cursor.com/en-US/install-mcp?name=astro-airflow-mcp&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyJhc3Ryby1haXJmbG93LW1jcCIsIi0tdHJhbnNwb3J0Iiwic3RkaW8iXX0"><img src="https://cursor.com/deeplink/mcp-install-dark.svg" alt="Add to Cursor" height="32"></a>

<details> <summary>Manual configuration</summary>

Add to your MCP settings (Cursor: ~/.cursor/mcp.json, VS Code: .vscode/mcp.json):

{
  "mcpServers": {
    "airflow": {
      "command": "uvx",
      "args": ["astro-airflow-mcp", "--transport", "stdio"]
    }
  }
}
</details>

CLI Tools

<details> <summary>Claude Code</summary>
claude mcp add airflow -- uvx astro-airflow-mcp --transport stdio
</details> <details> <summary>Gemini CLI</summary>
gemini mcp add airflow -- uvx astro-airflow-mcp --transport stdio
</details> <details> <summary>Codex CLI</summary>
codex mcp add airflow -- uvx astro-airflow-mcp --transport stdio
</details>

Desktop Apps

<details> <summary>Claude Desktop</summary>

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "airflow": {
      "command": "uvx",
      "args": ["astro-airflow-mcp", "--transport", "stdio"]
    }
  }
}
</details>

Other MCP Clients

<details> <summary>Manual JSON Configuration</summary>

Add to your MCP configuration file:

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

Or connect to a running HTTP server: "url": "http://localhost:8000/mcp"

</details>

Note: No installation required - uvx runs directly from PyPI. The --transport stdio flag is required because the server defaults to HTTP mode.

Configuration

By default, the server connects to http://localhost:8080 (Astro CLI default). Set environment variables for custom Airflow instances:

VariableDescription
AIRFLOW_API_URLAirflow webserver URL
AIRFLOW_USERNAMEUsername (Airflow 3.x uses OAuth2 token exchange)
AIRFLOW_PASSWORDPassword
AIRFLOW_AUTH_TOKENBearer token (alternative to username/password)

Example with auth (Claude Code):

claude mcp add airflow -e AIRFLOW_API_URL=https://your-airflow.example.com -e AIRFLOW_USERNAME=admin -e AIRFLOW_PASSWORD=admin -- uvx astro-airflow-mcp --transport stdio

Features

  • Airflow 2.x and 3.x Support: Automatic version detection with adapter pattern
  • MCP Tools for accessing Airflow data:
    • DAG management (list, get details, get source code, stats, warnings, import errors, trigger, pause/unpause)
    • Task management (list, get details, get task instances, get logs)
    • Pool management (list, get details)
    • Variable management (list, get specific variables)
    • Connection management (list connections with credentials excluded)
    • Asset/Dataset management (unified naming across versions, data lineage)
    • Plugin and provider information
    • Configuration and version details
  • Consolidated Tools for agent workflows:
    • explore_dag: Get comprehensive DAG information in one call
    • diagnose_dag_run: Debug failed DAG runs with task instance details
    • get_system_health: System overview with health, errors, and warnings
  • MCP Resources: Static Airflow info exposed as resources (version, providers, plugins, config)
  • MCP Prompts: Guided workflows for common tasks (troubleshooting, health checks, onboarding)
  • Dual deployment modes:
    • Standalone server: Run as an independent MCP server
    • Airflow plugin: Integrate directly into Airflow 3.x webserver
  • Flexible Authentication:
    • Bearer token (Airflow 2.x and 3.x)
    • Username/password with automatic OAuth2 token exchange (Airflow 3.x)
    • Basic auth (Airflow 2.x)

Available Tools

Consolidated Tools (Agent-Optimized)

ToolDescription
explore_dagGet comprehensive DAG info: metadata, tasks, recent runs, source code
diagnose_dag_runDebug a DAG run: run details, failed task instances, logs
get_system_healthSystem overview: health status, import errors, warnings, DAG stats

Core Tools

ToolDescription
list_dagsGet all DAGs and their metadata
get_dag_detailsGet detailed info about a specific DAG
get_dag_sourceGet the source code of a DAG
get_dag_statsGet DAG run statistics (Airflow 3.x only)
list_dag_warningsGet DAG import warnings
list_import_errorsGet import errors from DAG files that failed to parse
list_dag_runsGet DAG run history
get_dag_runGet specific DAG run details
trigger_dagTrigger a new DAG run (start a workflow execution)
pause_dagPause a DAG to prevent new scheduled runs
unpause_dagUnpause a DAG to resume scheduled runs
list_tasksGet all tasks in a DAG
get_taskGet details about a specific task
get_task_instanceGet task instance execution details
get_task_logsGet logs for a specific task instance execution
list_poolsGet all resource pools
get_poolGet details about a specific pool
list_variablesGet all Airflow variables
get_variableGet a specific variable by key
list_connectionsGet all connections (credentials excluded for security)
list_assetsGet assets/datasets (unified naming across versions)
list_pluginsGet installed Airflow plugins
list_providersGet installed provider packages
get_airflow_configGet Airflow configuration
get_airflow_versionGet Airflow version information

MCP Resources

Resource URIDescription
airflow://versionAirflow version information
airflow://providersInstalled provider packages
airflow://pluginsInstalled Airflow plugins
airflow://configAirflow configuration

MCP Prompts

PromptDescription
troubleshoot_failed_dagGuided workflow for diagnosing DAG failures
daily_health_checkMorning health check routine
onboard_new_dagGuide for understanding a new DAG

Advanced Usage

Running as Standalone Server

For HTTP-based integrations or connecting multiple clients to one server:

# Run server (HTTP mode is default)
uvx astro-airflow-mcp --airflow-url https://my-airflow.example.com --username admin --password admin

Connect MCP clients to: http://localhost:8000/mcp

Airflow Plugin Mode

Install into your Airflow 3.x environment to expose MCP at http://your-airflow:8080/mcp/v1:

# Add to your Astro project
echo astro-airflow-mcp >> requirements.txt

CLI Options

FlagEnvironment VariableDefaultDescription
--transportMCP_TRANSPORTstdioTransport mode (stdio or http)
--hostMCP_HOSTlocalhostHost to bind to (HTTP mode only)
--portMCP_PORT8000Port to bind to (HTTP mode only)
--airflow-urlAIRFLOW_API_URLAuto-discovered or http://localhost:8080Airflow webserver URL
--airflow-project-dirAIRFLOW_PROJECT_DIR$PWDAstro project directory for auto-discovering Airflow URL from .astro/config.yaml
--auth-tokenAIRFLOW_AUTH_TOKENNoneBearer token for authentication
--usernameAIRFLOW_USERNAMENoneUsername for authentication (Airflow 3.x uses OAuth2 token exchange)
--passwordAIRFLOW_PASSWORDNonePassword for authentication

Architecture

The server is built using FastMCP with an adapter pattern for Airflow version compatibility:

Core Components

  • Adapters (adapters/): Version-specific API implementations
    • AirflowAdapter (base): Abstract interface for all Airflow API operations
    • AirflowV2Adapter: Airflow 2.x API (/api/v1) with basic auth
    • AirflowV3Adapter: Airflow 3.x API (/api/v2) with OAuth2 token exchange
  • Version Detection: Automatic detection at startup by probing API endpoints
  • Models (models.py): Pydantic models for type-safe API responses

Version Handling Strategy

  1. Major versions (2.x vs 3.x): Adapter pattern with runtime version detection
  2. Minor versions (3.1 vs 3.2): Runtime feature detection with graceful fallbacks
  3. New API parameters: Pass-th

FAQ

What is the astro-airflow-mcp MCP server?
astro-airflow-mcp is a Model Context Protocol (MCP) server profile on explainx.ai. MCP lets AI hosts (e.g. Claude Desktop, Cursor) call tools and resources through a standard interface; this page summarizes categories, install hints, and community ratings.
How do MCP servers relate to agent skills?
Skills are reusable instruction packages (often SKILL.md); MCP servers expose live capabilities. Teams frequently combine both—skills for workflows, MCP for APIs and data. See explainx.ai/skills and explainx.ai/mcp-servers for parallel directories.
How are reviews shown for astro-airflow-mcp?
This profile displays 10 aggregated ratings (sample rows for discoverability plus signed-in user reviews). Average score is about 4.5 out of 5—verify behavior in your own environment before production use.
MCP server reviews

Ratings

4.510 reviews
  • Shikha Mishra· Oct 10, 2024

    astro-airflow-mcp is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.

  • Piyush G· Sep 9, 2024

    We evaluated astro-airflow-mcp against two servers with overlapping tools; this profile had the clearer scope statement.

  • Chaitanya Patil· Aug 8, 2024

    Useful MCP listing: astro-airflow-mcp is the kind of server we cite when onboarding engineers to host + tool permissions.

  • Sakshi Patil· Jul 7, 2024

    astro-airflow-mcp reduced integration guesswork — categories and install configs on the listing matched the upstream repo.

  • Ganesh Mohane· Jun 6, 2024

    I recommend astro-airflow-mcp for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.

  • Oshnikdeep· May 5, 2024

    Strong directory entry: astro-airflow-mcp surfaces stars and publisher context so we could sanity-check maintenance before adopting.

  • Dhruvi Jain· Apr 4, 2024

    astro-airflow-mcp has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.

  • Rahul Santra· Mar 3, 2024

    According to our notes, astro-airflow-mcp benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.

  • Pratham Ware· Feb 2, 2024

    We wired astro-airflow-mcp into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.

  • Yash Thakker· Jan 1, 2024

    astro-airflow-mcp is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.