The airflow-mcp-server is a Model Context Protocol server that provides comprehensive control over Apache Airflow instances via its API. It operates in either read-only (safe) mode or read-write (unsafe) mode.
Capabilities include:
- DAG Management: List, create, update, delete, parse, and monitor DAGs and DAG runs
- Task Management: Control task instances, view dependencies, update states, and retrieve logs
- Resource Management: Create and manage connections, pools, variables, XCom entries
- User Administration: Handle users, roles, and permissions
- Dataset Operations: Manage datasets and related events
- System Information: Retrieve health status, configuration, version details, and providers
The server supports JWT authentication and automatically parses the OpenAPI specification from the Airflow instance.
airflow-mcp-server: An MCP Server for controlling Airflow
Find on Glama
Overview
A Model Context Protocol server for controlling Airflow via Airflow APIs.
Demo Video
https://github.com/user-attachments/assets/f3e60fff-8680-4dd9-b08e-fa7db655a705
Setup
Usage with Claude Desktop
Note:
- Set
base_url
to the root Airflow URL (e.g.,http://localhost:8080
).- Do not include
/api/v2
in the base URL. The server will automatically fetch the OpenAPI spec from${base_url}/openapi.json
.- Only JWT token is required for authentication. Cookie and basic auth are no longer supported in Airflow 3.0.
Operation Modes
The server supports two operation modes:
- Safe Mode (
--safe
): Only allows read-only operations (GET requests). This is useful when you want to prevent any modifications to your Airflow instance. - Unsafe Mode (
--unsafe
): Allows all operations including modifications. This is the default mode.
To start in safe mode:
To explicitly start in unsafe mode (though this is default):
Considerations
Authentication
- Only JWT authentication is supported in Airflow 3.0. You must provide a valid
AUTH_TOKEN
.
Page Limit
The default is 100 items, but you can change it using maximum_page_limit
option in [api] section in the airflow.cfg
file.
Tasks
- Airflow 3 readiness
- Parse OpenAPI Spec
- Safe/Unsafe mode implementation
- Parse proper description with list_tools.
- Airflow config fetch (specifically for page limit)
- Env variables optional (env variables might not be ideal for airflow plugins)
You must be authenticated.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
https://github.com/abhishekbhakat/airflow-mcp-server
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityProvides a standardized way for MCP clients to interact with Apache Airflow's REST API, supporting operations like DAG management and monitoring Airflow system health.Last updated -1332PythonMIT License
- AsecurityAlicenseAqualityThis is an MCP server that can be used with NetlifyLast updated -94JavaScriptMIT License
- -securityFlicense-qualityAn MCP server for Claude Desktop that allows users to check the status of their Airbyte connections.Last updated -Python