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)
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
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 -1343PythonMIT License
- -securityFlicense-qualityAn MCP server for Claude Desktop that allows users to check the status of their Airbyte connections.Last updated -Python
- Python