Skip to main content
Glama

MCP Server for Apache Airflow

by yangkyeongmo

mcp-сервер-apache-airflow

значок кузнеца

Реализация сервера Model Context Protocol (MCP) для Apache Airflow, обеспечивающая бесшовную интеграцию с клиентами MCP. Этот проект предоставляет стандартизированный способ взаимодействия с Apache Airflow через Model Context Protocol.

О

Этот проект реализует сервер Model Context Protocol , который оборачивает REST API Apache Airflow, позволяя клиентам MCP взаимодействовать с Airflow стандартизированным образом. Он использует официальную клиентскую библиотеку Apache Airflow для обеспечения совместимости и удобства обслуживания.

Статус реализации функции

Особенность

API-путь

Статус

Управление DAG

Список DAG

/api/v1/dags

Получить сведения о DAG

/api/v1/dags/{dag_id}

Пауза DAG

/api/v1/dags/{dag_id}

Возобновить DAG

/api/v1/dags/{dag_id}

Обновление DAG

/api/v1/dags/{dag_id}

Удалить DAG

/api/v1/dags/{dag_id}

Получить исходный код DAG

/api/v1/dagSources/{file_token}

Патч нескольких DAG

/api/v1/dags

Повторная обработка файла DAG

/api/v1/dagSources/{file_token}/reparse

DAG работает

Список запусков DAG

/api/v1/dags/{dag_id}/dagRuns

Создать DAG-запуск

/api/v1/dags/{dag_id}/dagRuns

Получить сведения о запуске DAG

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}

Обновление DAG Run

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}

Удалить DAG Run

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}

Получить пакет DAG Runs

/api/v1/dags/~/dagRuns/list

Очистить DAG Run

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}/clear

Установить DAG Run Note

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}/setNote

Получить события набора данных Upstream

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}/upstreamDatasetEvents

Задачи

Список задач DAG

/api/v1/dags/{dag_id}/tasks

Получить детали задачи

/api/v1/dags/{dag_id}/tasks/{task_id}

Получить экземпляр задачи

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}/taskInstances/{task_id}

Список экземпляров задач

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}/taskInstances

Экземпляр задачи обновления

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}/taskInstances/{task_id}

Очистить экземпляры задач

/api/v1/dags/{dag_id}/clearTaskInstances

Установить состояние экземпляров задач

/api/v1/dags/{dag_id}/updateTaskInstancesState

Переменные

Список переменных

/api/v1/variables

Создать переменную

/api/v1/variables

Получить переменную

/api/v1/variables/{variable_key}

Обновить переменную

/api/v1/variables/{variable_key}

Удалить переменную

/api/v1/variables/{variable_key}

Связи

Список подключений

/api/v1/connections

Создать соединение

/api/v1/connections

Получить соединение

/api/v1/connections/{connection_id}

Обновить соединение

/api/v1/connections/{connection_id}

Удалить соединение

/api/v1/connections/{connection_id}

Тестовое соединение

/api/v1/connections/test

Бассейны

Список пулов

/api/v1/pools

Создать пул

/api/v1/pools

Получить бассейн

/api/v1/pools/{pool_name}

Обновление пула

/api/v1/pools/{pool_name}

Удалить пул

/api/v1/pools/{pool_name}

XComs

Список XComs

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}/taskInstances/{task_id}/xcomEntries

Получить XCom Entry

/api/v1/dags/{dag_id}/dagRuns/{dag_run_id}/taskInstances/{task_id}/xcomEntries/{xcom_key}

Наборы данных

Список наборов данных

/api/v1/datasets

Получить набор данных

/api/v1/datasets/{uri}

Получить события набора данных

/api/v1/datasetEvents

Создать событие набора данных

/api/v1/datasetEvents

Получить событие очереди набора данных DAG

/api/v1/dags/{dag_id}/dagRuns/queued/datasetEvents/{uri}

Получить события очереди набора данных DAG

/api/v1/dags/{dag_id}/dagRuns/queued/datasetEvents

Удаление события DAG Dataset Queued

/api/v1/dags/{dag_id}/dagRuns/queued/datasetEvents/{uri}

Удалить события очереди набора данных DAG

/api/v1/dags/{dag_id}/dagRuns/queued/datasetEvents

Получить набор данных событий, поставленных в очередь

/api/v1/datasets/{uri}/dagRuns/queued/datasetEvents

Удалить набор данных, поставленный в очередь событий

/api/v1/datasets/{uri}/dagRuns/queued/datasetEvents

Мониторинг

Получите Здоровье

/api/v1/health

Статистика DAG

Получить статистику DAG

/api/v1/dags/statistics

Конфигурация

Получить конфигурацию

/api/v1/config

Плагины

Получить плагины

/api/v1/plugins

Поставщики

Список поставщиков

/api/v1/providers

Журналы событий

Список журналов событий

/api/v1/eventLogs

Получить журнал событий

/api/v1/eventLogs/{event_log_id}

Система

Получить ошибки импорта

/api/v1/importErrors

Получить сведения об ошибке импорта

/api/v1/importErrors/{import_error_id}

Получить статус здоровья

/api/v1/health

Получить версию

/api/v1/version

Настраивать

Зависимости

Этот проект зависит от официальной клиентской библиотеки Apache Airflow ( apache-airflow-client ). Она будет автоматически установлена при установке этого пакета.

Переменные среды

Установите следующие переменные среды:

AIRFLOW_HOST=<your-airflow-host> AIRFLOW_USERNAME=<your-airflow-username> AIRFLOW_PASSWORD=<your-airflow-password> AIRFLOW_API_VERSION=v1 # Optional, defaults to v1

Использование с Claude Desktop

Добавьте в ваш 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" } } } }

Альтернативная конфигурация с использованием uv :

{ "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" } } } }

Замените /path/to/mcp-server-apache-airflow на фактический путь, по которому вы клонировали репозиторий.

Выбор групп API

Вы можете выбрать группы API, которые хотите использовать, установив флаг --apis .

uv run mcp-server-apache-airflow --apis "dag,dagrun"

По умолчанию используются все API.

Допустимые значения:

  • конфигурация

  • соединения

  • даг

  • дагрун

  • dagstats

  • набор данных

  • журнал событий

  • importerror

  • мониторинг

  • плагин

  • бассейн

  • поставщик

  • taskinstance

  • переменная

  • xcom

Ручное исполнение

Вы также можете запустить сервер вручную:

make run

make run принимает следующие параметры:

Параметры:

  • --port : Порт для прослушивания SSE (по умолчанию: 8000)

  • --transport : Тип транспорта (stdio/sse, по умолчанию: stdio)

Или вы можете запустить сервер sse напрямую, который принимает те же параметры:

make run-sse

Установка через Smithery

Чтобы автоматически установить Apache Airflow MCP Server для Claude Desktop через Smithery :

npx -y @smithery/cli install @yangkyeongmo/mcp-server-apache-airflow --client claude

Внося вклад

Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.

Лицензия

Лицензия Массачусетского технологического института

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    Provides integration with Apache Airflow's REST API, allowing AI assistants to programmatically interact with Airflow workflows, monitor DAG runs, and manage tasks.
    Last updated -
    MIT License
  • A
    security
    A
    license
    A
    quality
    An MCP server using the AviationStack API to fetch real-time flight data, including airline flights, airport schedules, future flights and aircraft types.
    Last updated -
    7
    11
    MIT License
  • A
    security
    A
    license
    A
    quality
    Monitor and manage Apache Airflow clusters through natural language queries via MCP tools: DAG inspection, task monitoring, health checks, and cluster analytics without API complexity. * Guide: https://call518.medium.com/mcp-airflow-api-a-model-context-protocol-mcp-server-for-apache-airflow-5dfdfb2
    Last updated -
    34
    42
    MIT License

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yangkyeongmo/mcp-server-apache-airflow'

If you have feedback or need assistance with the MCP directory API, please join our Discord server