使用说明
项目简介
DolphinScheduler MCP Server 作为一个桥梁,连接了AI Agent 和 Apache DolphinScheduler 工作流调度系统。它将 DolphinScheduler 的 REST API 封装成一系列标准化的 工具 (Tools),使得 AI Agent 可以通过 MCP 协议调用这些工具,从而实现对 DolphinScheduler 的自动化操作,例如工作流的创建、调度、监控和资源管理等。
主要功能点
- 全面的API覆盖: 提供了 DolphinScheduler 几乎所有功能的工具接口。
- 标准化的工具接口: 所有工具接口均遵循 Model Context Protocol (MCP) 标准设计,易于集成和使用。
- 灵活的配置方式: 支持通过环境变量或命令行参数进行服务器配置。
- 完善的工具文档: 提供全面的工具使用文档,方便开发者理解和使用。
- 集成 FastMCP: 基于成熟的 FastMCP 框架构建,保证了服务器的稳定性和可扩展性。
安装步骤
- 确保已安装 Python 和 pip。
- 使用 pip 安装 'dolphinscheduler-mcp' 包:
pip install dolphinscheduler-mcp
服务器配置
MCP 客户端需要配置 MCP 服务器的启动命令 (command) 及其参数 (args) 才能与 DolphinScheduler MCP Server 建立连接。以下是推荐的 MCP 客户端 'mcp_settings.json' 配置信息,请添加到您的 MCP 客户端配置中。
{ "mcpServers": { "dolphinscheduler": { "command": "ds-mcp", "args": [], "cwd": "[DolphinScheduler MCP Server 仓库的绝对路径]", "env": { "DOLPHINSCHEDULER_API_URL": "[您的 DolphinScheduler API URL]", "DOLPHINSCHEDULER_API_KEY": "[您的 DolphinScheduler API Key]" } } } }
参数注释:
- 'server name': 'dolphinscheduler' - MCP 客户端中用于标识 DolphinScheduler MCP Server 的名称,可以自定义。
- 'command': 'ds-mcp' - 启动 DolphinScheduler MCP Server 的命令。
- 'args': '[]' - 启动命令的参数,这里为空,可以使用默认配置。
- 'cwd': '[DolphinScheduler MCP Server 仓库的绝对路径]' - DolphinScheduler MCP Server 仓库在您本地文件系统中的绝对路径。请务必替换为实际路径。
- 'env': 环境变量配置。
- 'DOLPHINSCHEDULER_API_URL': '[您的 DolphinScheduler API URL]' - 请替换为您的 DolphinScheduler API 服务地址,例如 'http://localhost:12345/dolphinscheduler'。
- 'DOLPHINSCHEDULER_API_KEY': '[您的 DolphinScheduler API Key]' - 请替换为您的 DolphinScheduler API 认证 Token,用于安全访问 DolphinScheduler API。
注意:
- 请根据您的 DolphinScheduler 部署环境,修改 'DOLPHINSCHEDULER_API_URL' 和 'DOLPHINSCHEDULER_API_KEY' 环境变量的值。
- 'cwd' 路径需要指向您下载或clone的 'dolphinscheduler-mcp' 仓库的根目录。
- 确保 MCP 客户端能够正确读取和应用 'mcp_settings.json' 配置。
基本使用方法
-
启动 DolphinScheduler MCP Server:
- 在安装完成后,您可以使用命令行工具 'ds-mcp' 启动服务器。
ds-mcp --host 0.0.0.0 --port 8089或者使用 Python API 在代码中启动:
from dolphinscheduler_mcp.server import run_server run_server(host="0.0.0.0", port=8089) -
使用 MCP 客户端调用工具:
- 在您的 MCP 客户端代码中,连接到 DolphinScheduler MCP Server 的地址(默认为 'http://localhost:8089/mcp')。
- 使用 'invoke_tool' 方法调用需要的工具,并传入相应的参数。例如,获取项目列表:
from mcp_client import MCPClient client = MCPClient("http://localhost:8089/mcp") response = await client.invoke_tool("get-project-list") print(response)更多工具和使用示例,请参考仓库中的 'examples' 目录。
通过 DolphinScheduler MCP Server,AI Agent 可以方便地与 DolphinScheduler 集成,实现工作流的自动化管理和调度,提升智能化应用的能力。
信息
分类
商业系统