Airflow MCP Server 使用说明
项目简介
Airflow MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它允许大型语言模型 (LLM) 客户端通过标准化的 MCP 协议与 Airflow 任务调度平台进行交互。该服务器将 Airflow 的各项功能,如查看 DAG、触发 DAG 运行等,封装成工具 (Tools),供 LLM 客户端调用,从而实现通过自然语言控制和管理 Airflow 工作流。
主要功能点
- Airflow 功能集成: 将 Airflow API 转化为一系列可在 MCP 中调用的工具,使得 LLM 能够操作 Airflow。
- 安全模式与非安全模式: 提供安全模式(只允许只读操作)和非安全模式(允许所有操作,包括修改),以适应不同的安全需求。
- 多种认证方式: 支持基于 Token 的 Basic Auth 和基于 Cookie 的会话认证,保障访问安全。
- 动态工具列表: 根据 Airflow OpenAPI 规范动态生成工具列表,并提供工具的详细描述和参数信息。
- 可配置性: 通过环境变量灵活配置 Airflow API 的 base URL、认证信息以及 OpenAPI 规范路径。
安装步骤
由于仓库信息中没有明确的安装步骤,根据项目结构和 README 推测,该项目可能以 Python 包的形式发布。以下是一种可能的安装方式(请注意,这只是推测,实际安装方式请参考项目发布文档或联系仓库维护者):
- 安装 Python 环境: 确保您的系统已安装 Python 3.7 或更高版本。
- 安装 Python 包: 假设该项目已发布到 PyPI,您可以使用 pip 命令进行安装:
如果项目未发布或需要从源码安装,您可能需要先克隆仓库,然后使用 'pip install .' 或 'pip install -e .' 命令进行安装。pip install airflow-mcp-server
服务器配置 (MCP 客户端配置)
为了让 MCP 客户端(例如 Claude Desktop)连接到 Airflow MCP Server,您需要在客户端中配置服务器信息。以下是一个 JSON 格式的配置示例,您可以将其添加到 MCP 客户端的服务器配置中:
{ "mcpServers": { "airflow-mcp-server": { "command": "uvx", "args": [ "airflow-mcp-server" ], "env": { "AIRFLOW_BASE_URL": "<Airflow API Base URL>", // 您的 Airflow API 基础 URL,例如 "http://localhost:8080/api/v1" "AUTH_TOKEN": "<Base64 编码的用户名:密码>", // (可选) 用于 Basic Auth 的 Base64 编码的 "username:password" 字符串 "COOKIE": "<Session Cookie>" // (可选) 用于 Cookie 认证的会话 Cookie } } } }
配置参数说明:
- '"airflow-mcp-server"': 服务器名称,您可以自定义。
- '"command": "uvx"': 启动服务器的命令,这里假设使用 'uvx' 运行 'airflow-mcp-server' (根据 README 的示例)。
- '"args": ["airflow-mcp-server"]': 传递给命令的参数,这里是 'airflow-mcp-server'。
- '"env"': 环境变量配置,用于传递 Airflow API 的连接信息和认证信息。
- '"AIRFLOW_BASE_URL"': 必填,Airflow API 的基础 URL。
- '"AUTH_TOKEN"' 或 '"COOKIE"': 必填其一,用于 Airflow API 的身份验证。
- '"AUTH_TOKEN"': 适用于 Basic Auth,需要将 "username:password" 字符串进行 Base64 编码后填入。
- '"COOKIE"': 适用于 Cookie 认证,填入 Airflow 会话 Cookie。
安全模式配置:
如果您希望以安全模式启动服务器(只允许只读操作),可以在 'args' 中添加 '--safe' 参数:
{ "mcpServers": { "airflow-mcp-server": { "command": "uvx", "args": [ "airflow-mcp-server", "--safe" // 以安全模式启动 ], "env": { // ... (其他环境变量配置) } } } }
基本使用方法
- 启动 Airflow MCP Server: 根据您的安装方式和配置,启动 Airflow MCP Server。例如,如果使用 'uvx airflow-mcp-server' 命令,请在终端中运行该命令。
- 配置 MCP 客户端: 将上述 JSON 配置信息添加到您的 MCP 客户端(如 Claude Desktop)中,并确保配置中的环境变量已正确设置。
- 在 LLM 中使用工具: 在支持 MCP 协议的 LLM 应用中,您应该能够看到 Airflow MCP Server 提供的工具列表。您可以指示 LLM 使用这些工具来查询 Airflow 状态、触发 DAG 运行等操作。
请务必仔细阅读仓库的 README 文件和文档,以获取最准确的安装和使用信息。
信息
分类
开发者工具