# yangkyeongmo@/mcp-server-apache-airflow [Health: Active]

**Category:** 📊 Data Platforms  
**Repository:** https://github.com/yangkyeongmo/mcp-server-apache-airflow  
**GitHub Stars:** 180  
**Views:** 6  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/yangkyeongmo-mcp-server-apache-airflow

## Description
MCP server that connects to Apache Airflow using official client.

## Tools
Capabilities this server exposes over MCP:

- **get_config** — Get current configuration
- **get_value** — Get a specific option from configuration
- **list_connections** — List all connections
- **create_connection** — Create a connection
- **get_connection** — Get a connection by ID
- **update_connection** — Update a connection by ID
- **delete_connection** — Delete a connection by ID
- **test_connection** — Test a connection
- **fetch_dags** — Fetch all DAGs
- **get_dag** — Get a DAG by ID
- **get_dag_details** — Get a simplified representation of DAG
- **get_dag_source** — Get a source code
- **pause_dag** — Pause a DAG by ID
- **unpause_dag** — Unpause a DAG by ID
- **get_dag_tasks** — Get tasks for DAG
- **get_task** — Get a task by ID
- **get_tasks** — Get tasks for DAG
- **patch_dag** — Update a DAG
- **patch_dags** — Update multiple DAGs
- **delete_dag** — Delete a DAG
- **clear_task_instances** — Clear a set of task instances
- **set_task_instances_state** — Set a state of task instances
- **reparse_dag_file** — Request re-parsing of a DAG file
- **post_dag_run** — Trigger a DAG by ID
- **get_dag_runs** — Get DAG runs by ID
- **get_dag_runs_batch** — List DAG runs (batch)
- **get_dag_run** — Get a DAG run by DAG ID and DAG run ID
- **update_dag_run_state** — Update a DAG run state by DAG ID and DAG run ID
- **delete_dag_run** — Delete a DAG run by DAG ID and DAG run ID
- **clear_dag_run** — Clear a DAG run
- **set_dag_run_note** — Update the DagRun note
- **get_upstream_dataset_events** — Get dataset events for a DAG run
- **get_dag_stats** — Get DAG stats
- **get_datasets** — List datasets
- **get_dataset** — Get a dataset by URI
- **get_dataset_events** — Get dataset events
- **create_dataset_event** — Create dataset event
- **get_dag_dataset_queued_event** — Get a queued Dataset event for a DAG
- **get_dag_dataset_queued_events** — Get queued Dataset events for a DAG
- **delete_dag_dataset_queued_event** — Delete a queued Dataset event for a DAG
- **delete_dag_dataset_queued_events** — Delete queued Dataset events for a DAG
- **get_dataset_queued_events** — Get queued Dataset events for a Dataset
- **delete_dataset_queued_events** — Delete queued Dataset events for a Dataset
- **get_event_logs** — List log entries from event log
- **get_event_log** — Get a specific log entry by ID
- **get_import_errors** — List import errors
- **get_import_error** — Get a specific import error by ID
- **get_health** — Get instance status
- **get_version** — Get version information
- **get_plugins** — Get a list of loaded plugins
- **get_pools** — List pools
- **get_pool** — Get a pool by name
- **delete_pool** — Delete a pool
- **post_pool** — Create a pool
- **patch_pool** — Update a pool
- **get_providers** — Get a list of loaded providers
- **get_task_instance** — Get a task instance by DAG ID, task ID, and DAG run ID
- **list_task_instances** — List task instances by DAG ID and DAG run ID
- **update_task_instance** — Update a task instance by DAG ID, DAG run ID, and task ID
- **get_log** — Get the log from a task instance by DAG ID, task ID, DAG run ID and task try number
- **list_task_instance_tries** — List task instance tries by DAG ID, DAG run ID, and task ID
- **list_variables** — List all variables
- **create_variable** — Create a variable
- **get_variable** — Get a variable by key
- **update_variable** — Update a variable by key
- **delete_variable** — Delete a variable by key
- **get_xcom_entries** — Get all XCom entries
- **get_xcom_entry** — Get an XCom entry

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

```json
"mcpServers": {
  "mcp-server-apache-airflow": {
    "command": "uvx",
    "args": ["mcp-server-apache-airflow"]
  }
}
```

## Documentation

## What yangkyeongmo@/mcp-server-apache-airflow MCP server does

yangkyeongmo@/mcp-server-apache-airflow provides an MCP interface over Apache Airflow's REST API. It is intended for MCP clients that need to work with Airflow objects through standardized tool calls rather than constructing HTTP requests themselves. The implementation uses Apache Airflow's official client library.

The supported resource areas include DAG definitions, DAG runs, task metadata and instances, Airflow variables, connections, pools, and XCom entries.

## How it works

The server translates MCP requests into operations against Airflow REST API endpoints under `/api/v1`. Read operations can retrieve DAGs, run details, task information, logs, variables, connections, pools, XCom entries, and related resources. Write operations cover actions such as pausing or unpausing DAGs, creating or updating DAG runs, changing task states, managing variables and connections, and modifying pools.

The API mapping follows Airflow resource paths. For example, DAG operations use `/api/v1/dags`, DAG-run operations use paths beneath a DAG identifier, and task-instance operations use paths beneath a specific run and task. The implementation also includes operations for clearing runs or task instances, reparsing a DAG source, testing a connection, and setting a DAG-run note.

## Tools and capabilities

The documented capabilities cover:

- Listing, retrieving, updating, pausing, unpausing, deleting, and batch-patching DAGs.
- Reading DAG source files and requesting DAG-file reparsing.
- Listing, creating, updating, deleting, clearing, and inspecting DAG runs.
- Reading task definitions, task instances, task tries, and task-instance logs.
- Updating task instances and changing the state of multiple task instances.
- Creating, reading, updating, and deleting Airflow variables.
- Creating, reading, updating, deleting, and testing Airflow connections.
- Creating, reading, updating, and deleting pools.
- Listing and retrieving XCom entries for a task instance.

These operations include both monitoring-oriented access and mutating actions. Agents using the server may therefore need permissions appropriate to the Airflow actions they are allowed to perform.

## Limitations and notes

yangkyeongmo@/mcp-server-apache-airflow is described as an Airflow REST API wrapper, so its usable scope depends on the API and permissions available from the target Airflow deployment. The material does not specify an Airflow version matrix, authentication method, required environment variables, transport configuration, or a command for launching the package.

The feature table marks the listed endpoints as implemented, but it does not document request schemas, response formats, pagination behavior, error handling, or permission requirements for individual operations. Review the target Airflow deployment and the project's current source before enabling write operations in an automated agent workflow.

_Full upstream README: https://allmcps.com/mcp/yangkyeongmo-mcp-server-apache-airflow/readme_

