- Home
- MCP servers
- Airflow
Airflow
- python
30
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
This MCP server lets you control Airflow 3 via MCP clients. It exposes tools to interact with Airflow through its APIs, supports multiple transport methods, and includes options for safe (read-only) or full (read/write) operation. It’s designed to be simple to connect to from your MCP client and to scale with HTTP transport when needed.
How to use
Connect from your MCP client using either a local stdio setup or an HTTP transport for remote access. In stdio, you launch the MCP server process and connect via the host process I/O. In HTTP, you run a web-facing MCP server and connect through HTTP requests. You can switch between Safe mode for read-only access or Unsafe mode for full control.
Key usage patterns you’ll perform include listing Airflow entities, reading configurations, and triggering API actions exposed by the MCP server. When you connect, provide your JWT token for authentication and your Airflow base URL (without the /api path). The MCP server automatically fetches its OpenAPI spec from the base URL and exposes the tools through the MCP client interface.
How to install
Prerequisites you need before starting: you must have a runtime capable of hosting the MCP server (the examples use the uvx runtime). Ensure you have a valid JWT token ready for authentication and your Airflow instance reachable at its base URL (for example, http://localhost:8080). Then choose either stdio or HTTP transport and follow the appropriate steps.
Option A — Git-like stdio transport (default) Run the MCP server with stdio transport and provide the Airflow base URL and your auth token.
{
"mcpServers": {
"airflow_mcp": {
"command": "uvx",
"args": [
"airflow-mcp-server",
"--base-url",
"http://localhost:8080",
"--auth-token",
"<jwt_token>"
]
}
}
}
Option B — HTTP transport
Run the MCP server with HTTP transport for scalable web deployment. You’ll provide the same base Airflow URL and JWT token.
{
"mcpServers": {
"airflow_mcp_http": {
"command": "uvx",
"args": [
"airflow-mcp-server",
"--http",
"--port",
"3000",
"--base-url",
"http://localhost:8080",
"--auth-token",
"<jwt_token>"
]
}
}
}