使用说明

项目简介

DolphinScheduler MCP Server 作为一个桥梁,连接了AI Agent 和 Apache DolphinScheduler 工作流调度系统。它将 DolphinScheduler 的 REST API 封装成一系列标准化的 工具 (Tools),使得 AI Agent 可以通过 MCP 协议调用这些工具,从而实现对 DolphinScheduler 的自动化操作,例如工作流的创建、调度、监控和资源管理等。

主要功能点

  • 全面的API覆盖: 提供了 DolphinScheduler 几乎所有功能的工具接口。
  • 标准化的工具接口: 所有工具接口均遵循 Model Context Protocol (MCP) 标准设计,易于集成和使用。
  • 灵活的配置方式: 支持通过环境变量或命令行参数进行服务器配置。
  • 完善的工具文档: 提供全面的工具使用文档,方便开发者理解和使用。
  • 集成 FastMCP: 基于成熟的 FastMCP 框架构建,保证了服务器的稳定性和可扩展性。

安装步骤

  1. 确保已安装 Python 和 pip。
  2. 使用 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' 配置。

基本使用方法

  1. 启动 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)
  2. 使用 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 集成,实现工作流的自动化管理和调度,提升智能化应用的能力。

信息

分类

商业系统