The Apache Airflow MCP Server provides a standardized way to interact with Apache Airflow through the Model Context Protocol. It wraps Apache Airflow's REST API, allowing MCP clients to manage DAGs, runs, tasks, variables, connections, and more in a consistent manner. Built on the official Apache Airflow client library, it ensures compatibility and maintainability while enabling AI assistants to help with workflow automation.
The Apache Airflow MCP Server implements the Model Context Protocol (MCP) for Apache Airflow, enabling AI assistants and other MCP clients to interact with Airflow instances. This server acts as a bridge between MCP clients and Apache Airflow's REST API, providing a standardized interface for workflow automation tasks.
The server supports a comprehensive set of Airflow operations, including:
You can install the Apache Airflow MCP Server using pip:
pip install mcp-server-apache-airflow
For development or the latest version, you can install directly from the repository:
pip install git+https://github.com/yangkyeongmo/mcp-server-apache-airflow.git
Before using the server, you need to set up the following environment variables:
export AIRFLOW_HOST=<your-airflow-host>
export AIRFLOW_USERNAME=<your-airflow-username>
export AIRFLOW_PASSWORD=<your-airflow-password>
Once installed, you can run the server directly:
mcp-server-apache-airflow
If you're using uv
(a faster Python package installer and resolver):
uvx mcp-server-apache-airflow
To use this MCP server with Claude Desktop, add the following configuration to your claude_desktop_config.json
:
{
"mcpServers": {
"mcp-server-apache-airflow": {
"command": "uvx",
"args": ["mcp-server-apache-airflow"],
"env": {
"AIRFLOW_HOST": "https://your-airflow-host",
"AIRFLOW_USERNAME": "your-username",
"AIRFLOW_PASSWORD": "your-password"
}
}
}
}
Alternatively, if you prefer using uv
with a specific directory:
{
"mcpServers": {
"mcp-server-apache-airflow": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-server-apache-airflow",
"run",
"mcp-server-apache-airflow"
],
"env": {
"AIRFLOW_HOST": "https://your-airflow-host",
"AIRFLOW_USERNAME": "your-username",
"AIRFLOW_PASSWORD": "your-password"
}
}
}
}
The repository includes a Dockerfile for containerized deployment. To build and run the Docker container:
# Build the Docker image
docker build -t mcp-server-apache-airflow .
# Run the container
docker run -e AIRFLOW_HOST=<your-airflow-host> \
-e AIRFLOW_USERNAME=<your-airflow-username> \
-e AIRFLOW_PASSWORD=<your-airflow-password> \
-p 8000:8000 \
mcp-server-apache-airflow
Once the server is running and connected to your Claude Desktop or other MCP client, you can perform operations like:
The MCP server handles the translation between natural language requests and the appropriate Airflow API calls, making workflow automation more accessible through conversational interfaces.