airflow-mcp-server

by abhishekbhakat
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

airflow-mcp-server: Un servidor MCP para controlar Airflow

Encuéntralo en Glama

Descripción general

Un servidor de protocolo de contexto de modelo para controlar Airflow a través de las API de Airflow.

Vídeo de demostración

https://github.com/user-attachments/assets/f3e60fff-8680-4dd9-b08e-fa7db655a705

Configuración

Uso con Claude Desktop

{ "mcpServers": { "airflow-mcp-server": { "command": "uvx", "args": [ "airflow-mcp-server" ], "env": { "AIRFLOW_BASE_URL": "http://<host:port>/api/v1", // Either use AUTH_TOKEN for basic auth "AUTH_TOKEN": "<base64_encoded_username_password>", // Or use COOKIE for cookie-based auth "COOKIE": "<session_cookie>" } } } }

Modos de operación

El servidor admite dos modos de funcionamiento:

  • Modo seguro ( --safe ): Solo permite operaciones de solo lectura (solicitudes GET). Esto es útil para evitar modificaciones en la instancia de Airflow.
  • Modo inseguro ( --unsafe ): Permite todas las operaciones, incluidas las modificaciones. Este es el modo predeterminado.

Para iniciar en modo seguro:

airflow-mcp-server --safe

Para iniciar explícitamente en modo inseguro (aunque este es el valor predeterminado):

airflow-mcp-server --unsafe

Consideraciones

El servidor MCP espera que se establezcan variables de entorno:

  • AIRFLOW_BASE_URL : La URL base de la API de Airflow
  • AUTH_TOKEN : El token a utilizar para la autenticación básica ( debe ser nombre de usuario: contraseña codificado en base64 ) ( opcional si se proporciona COOKIE )
  • COOKIE : La cookie de sesión que se utilizará para la autenticación ( opcional si se proporciona AUTH_TOKEN )
  • OPENAPI_SPEC : La ruta al archivo de especificaciones de OpenAPI ( opcional ) ( predeterminado a la última versión estable )

Autenticación

El servidor admite dos métodos de autenticación:

  • Autenticación básica : uso de nombre de usuario y contraseña codificados en base64 a través de la variable de entorno AUTH_TOKEN
  • Cookie : Uso de cookies de sesión a través de la variable de entorno COOKIE

Se debe proporcionar al menos uno de estos métodos de autenticación.

Límite de páginas

El valor predeterminado es 100 elementos, pero puede cambiarlo utilizando la opción maximum_page_limit en la sección [api] del archivo airflow.cfg .

Tareas

  • [x] Primera API
  • [x] Analizar la especificación de OpenAPI
  • [x] Implementación del modo seguro/inseguro
  • [x] Permitir autenticación de sesión
  • [ ] Analice la descripción adecuada con list_tools.
  • [ ] Obtención de configuración de Airflow ( específicamente para el límite de páginas )
  • [ ] Variables de entorno opcionales ( las variables de entorno podrían no ser ideales para los complementos de flujo de aire )
ID: 6gjq9w80xr