mcp-airflow

mcp-airflow

MCP server exposing Apache Airflow REST API operations as tools — list DAGs, inspect runs and task instances, trigger DAG runs, and check failed DAGs and scheduler health

Category
Visit Server

README

mcp-airflow

MCP server that exposes Apache Airflow REST API operations as tools. Built with FastMCP.

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):

Variable Description Example
AIRFLOW_BASE_URL Airflow REST API base URL. Use /api/v2 for Airflow 3.x or /api/v1 for 2.x http://100.x.x.x:8080/api/v2
AIRFLOW_USERNAME Auth username (JWT on 3.x, basic auth on 2.x) admin
AIRFLOW_PASSWORD Auth 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

Tool Description
list_dags List all DAGs with paused/active status
get_dag_runs_today Get all DAG runs from today with status
get_dag_run_status Get the latest run status for a specific DAG
trigger_dag_run Trigger a manual DAG run
get_task_instances Get task instances for a specific DAG run
check_failed_dags Check for failed DAGs in the last 24 hours
check_scheduler_health Check scheduler heartbeat and metadatabase status

Tests

pytest

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured