Airflow MCP server — DAG list, runs, task instances, log tails, trigger and clear over the Airflow REST API
接入配置
选择客户端,复制配置,再按项目文档补齐环境变量。
claude mcp add airflow --env AIRFLOW_API_URL='<AIRFLOW_API_URL>' --env AIRFLOW_USERNAME='<AIRFLOW_USERNAME>' --env AIRFLOW_PASSWORD='<AIRFLOW_PASSWORD>' -- npx -y @us-all/airflow-mcp~/.codex/config.toml
[mcp_servers.airflow]
command = "npx"
args = ["-y", "@us-all/airflow-mcp"]
env = { AIRFLOW_API_URL = "<AIRFLOW_API_URL>", AIRFLOW_USERNAME = "<AIRFLOW_USERNAME>", AIRFLOW_PASSWORD = "<AIRFLOW_PASSWORD>" }
# codex mcp add airflow --env AIRFLOW_API_URL='<AIRFLOW_API_URL>' --env AIRFLOW_USERNAME='<AIRFLOW_USERNAME>' --env AIRFLOW_PASSWORD='<AIRFLOW_PASSWORD>' -- npx -y @us-all/airflow-mcp~/.cursor/mcp.json
{
"mcpServers": {
"airflow": {
"command": "npx",
"args": [
"-y",
"@us-all/airflow-mcp"
],
"env": {
"AIRFLOW_API_URL": "<AIRFLOW_API_URL>",
"AIRFLOW_USERNAME": "<AIRFLOW_USERNAME>",
"AIRFLOW_PASSWORD": "<AIRFLOW_PASSWORD>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"airflow": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@us-all/airflow-mcp"
],
"env": {
"AIRFLOW_API_URL": "<AIRFLOW_API_URL>",
"AIRFLOW_USERNAME": "<AIRFLOW_USERNAME>",
"AIRFLOW_PASSWORD": "<AIRFLOW_PASSWORD>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"airflow": {
"command": "npx",
"args": [
"-y",
"@us-all/airflow-mcp"
],
"env": {
"AIRFLOW_API_URL": "<AIRFLOW_API_URL>",
"AIRFLOW_USERNAME": "<AIRFLOW_USERNAME>",
"AIRFLOW_PASSWORD": "<AIRFLOW_PASSWORD>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"airflow": {
"command": "npx",
"args": [
"-y",
"@us-all/airflow-mcp"
],
"env": {
"AIRFLOW_API_URL": "<AIRFLOW_API_URL>",
"AIRFLOW_USERNAME": "<AIRFLOW_USERNAME>",
"AIRFLOW_PASSWORD": "<AIRFLOW_PASSWORD>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"airflow": {
"command": "npx",
"args": [
"-y",
"@us-all/airflow-mcp"
],
"env": {
"AIRFLOW_API_URL": "<AIRFLOW_API_URL>",
"AIRFLOW_USERNAME": "<AIRFLOW_USERNAME>",
"AIRFLOW_PASSWORD": "<AIRFLOW_PASSWORD>"
}
}
}
}需要的环境变量
AIRFLOW_API_URLAIRFLOW_USERNAMEAIRFLOW_PASSWORD
把占位值换成你自己的密钥;不要把密钥提交到代码仓库。