Airflow控制器
STDIO通过API控制Airflow的MCP服务器
通过API控制Airflow的MCP服务器
A Model Context Protocol server for controlling Airflow via Airflow APIs.
https://github.com/user-attachments/assets/f3e60fff-8680-4dd9-b08e-fa7db655a705
{ "mcpServers": { "airflow-mcp-server": { "command": "uvx", "args": [ "airflow-mcp-server", "--base-url", "http://localhost:8080", "--auth-token", "<jwt_token>" ] } } }
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.
The server supports two operation modes:
--safe
): Only allows read-only operations (GET requests). This is useful when you want to prevent any modifications to your Airflow instance.--unsafe
): Allows all operations including modifications. This is the default mode.To start in safe mode:
airflow-mcp-server --safe
To explicitly start in unsafe mode (though this is default):
airflow-mcp-server --unsafe
The server supports two tool discovery approaches:
--static-tools
): All tools available immediately. Better for programmatic access but can be overwhelming.To use static tools:
airflow-mcp-server --static-tools
Authentication
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.