# us-all/airflow-mcp-server [Health: Active]

**Category:** 📊 Data Platforms  
**Repository:** https://github.com/us-all/airflow-mcp-server  
**GitHub Stars:** 2  
**npm Downloads (last month):** 269  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/us-all-airflow-mcp-server

## Description
Airflow REST API — 7 tools (DAG list, runs, task instances, log tails, trigger, clear). dag-health-rollup aggregation. Airflow 3.x /api/v2 + JWT (SimpleAuthManager); pin 0.1.x for Airflow 2.x. Read-only by default; trigger/clear write-gated.

## Tools
Capabilities this server exposes over MCP:

- **airflow-list-dags** — List active DAGs with tag/search filters
- **airflow-list-runs** — Recent runs of one DAG (state filter, ordered newest first)
- **airflow-get-task-instances** — Task instances for a specific DAG run
- **airflow-get-task-logs** — Tail (last N kB) of one task instance log
- **airflow-trigger-dag** — Trigger a new run (write-gated)
- **airflow-clear-task** — Clear specific task instances → re-run (write-gated)
- **dag-health-rollup** — Aggregated DAG health: success rate + avg duration + last failed run + failing tasks

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "airflow-mcp-server": {
    "command": "npx",
    "args": ["-y","@us-all/airflow-mcp"],
    "env": {
      "AIRFLOW_API_URL": "",
      "AIRFLOW_USERNAME": "",
      "AIRFLOW_PASSWORD": "",
      "AIRFLOW_ALLOW_WRITE": "",
      "AIRFLOW_TOOLS": "",
      "AIRFLOW_DISABLE": ""
    }
  }
}
```

**Requires environment variables:** `AIRFLOW_API_URL`, `AIRFLOW_USERNAME`, `AIRFLOW_PASSWORD`, `AIRFLOW_ALLOW_WRITE`, `AIRFLOW_TOOLS`, `AIRFLOW_DISABLE` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What us-all/airflow-mcp-server does

The us-all/airflow-mcp-server MCP server connects an MCP client to the Airflow 3.x REST API at `/api/v2`. It provides tools for finding active DAGs, reviewing recent runs, inspecting task instances, and retrieving the end of a task log. A health rollup combines operational signals into a DAG-level view with success rate, average duration, the most recent failed run, and failing tasks.

The server also includes two workflow prompts. `dag-failure-triage` gathers run and task information, retrieves relevant logs, and proposes remediation for a failed DAG. `dag-schedule-audit` checks DAGs for low success rates and stuck runs. The `search-tools` meta tool supports natural-language discovery of available tools.

## How it works

At startup, the server receives an Airflow host base URL and adds `/api/v2` internally. If the supplied URL ends in `/api/v1` or `/api/v2`, that suffix is removed first. Authentication uses Airflow SimpleAuthManager: the server sends the configured credentials to `/auth/token`, caches the resulting JWT for the session, and refreshes it one minute before expiration.

The us-all/airflow-mcp-server MCP server uses MCP stdio by default, so it can be configured in local clients such as Claude Desktop and Cursor. Setting `MCP_TRANSPORT=http` switches to Streamable HTTP transport, which provides Bearer authentication and a `/health` endpoint.

## Setup and configuration

Install the npm package as a development dependency with pnpm, or run the published package directly with npx. The server requires `AIRFLOW_API_URL`, `AIRFLOW_USERNAME`, and `AIRFLOW_PASSWORD`. The URL should identify the Airflow host rather than include an API path.

Set `AIRFLOW_ALLOW_WRITE=true` only when the client should be able to use `airflow-trigger-dag` and `airflow-clear-task`. Without that setting, the server remains read-only for those operations. `AIRFLOW_TOOLS` and `AIRFLOW_DISABLE` are available for category-level tool toggles.

## Tools and capabilities

- List active DAGs with tag and search filters.
- Retrieve recent runs for a selected DAG, optionally filtered by state and ordered newest first.
- Inspect task instances for a specific DAG run.
- Read the last N kilobytes of a task instance log.
- Trigger a DAG run or clear selected task instances when writes are enabled.
- Produce an aggregated health report for a DAG.

## Limitations and notes

The us-all/airflow-mcp-server MCP server targets Airflow 3.0–3.2 and the `/api/v2` API; the README reports verification against Airflow 3.2.1. Version 0.2 and later do not support Airflow 2.x deployments because the required basic-auth and `/api/v1` behavior was removed. Airflow 2.x users should use `@us-all/airflow-mcp@0.1.0` instead.

This package does not provide the deeper dbt artifact, lineage, source-freshness, or data-quality capabilities described for the companion `@us-all/dbt-mcp` server. The HTTP transport is opt-in; stdio is the default transport.

## Getting started with this us-all/airflow-mcp-server MCP server
Always refer to the official documentation for the most accurate and up-to-date information.

_Full upstream README: https://allmcps.com/mcp/us-all-airflow-mcp-server/readme_

