Union MCP Server
使用说明
项目简介
Union MCP Server 是一个 MCP (Model Context Protocol) 服务器实现,它允许大型语言模型 (LLM) 通过 MCP 协议调用和利用 Union AI 平台上的任务 (Tasks)、工作流 (Workflows) 和应用 (Apps)。通过此服务器,LLM 客户端可以方便地发现、注册和执行 Union AI 平台上的计算功能,从而扩展 LLM 的能力边界。
主要功能点
- 工具注册与执行: 将 Union AI 平台上的任务和工作流以 "工具 (Tools)" 的形式注册到 MCP 服务器,LLM 客户端可以通过标准化的 MCP 协议调用这些工具,执行 Union AI 平台上预定义的计算任务和流程。
- 动态任务/工作流发现: MCP 服务器能够动态地列出 Union AI 项目和域中可用的任务和工作流,方便 LLM 客户端了解和选择可用的工具。
- 本地和远程运行: 支持本地运行 MCP 服务器,也支持将其部署为云端应用 (通过 'app.py' 和 Union AI 平台)。
- 多种传输协议支持: 示例中使用了 SSE (Server-Sent Events) 和 Stdio 传输协议,可以根据需要配置不同的通信方式。
- Claude Desktop 集成: 提供与 Claude Desktop 客户端集成的配置示例,方便用户快速体验。
安装步骤
-
克隆仓库:
git clone https://github.com/unionai-oss/union-mcp cd union-mcp -
安装依赖: 建议使用 'uv' 包管理器,可以更快速地安装 Python 包。如果尚未安装 'uv',请先安装 'uv'。
pip install uv uv sync
服务器配置
为了使 MCP 客户端(例如 Claude Desktop)连接到 Union MCP Server,需要配置客户端的配置文件。 以 Claude Desktop 为例,您需要编辑 'claude_desktop_config.json' 文件,该文件通常位于:
- macOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%\Claude\claude_desktop_config.json'
在 'mcpServers' 字段下添加或修改服务器配置。以下是一个根据仓库信息生成的配置示例:
{ "mcpServers": { "Union MCP": { <!-- 服务器名称,在客户端中显示,可以自定义 --> "command": "uv", <!-- 启动服务器的命令,这里使用 uv 包管理器运行 --> "args": [ <!-- 命令参数列表 --> "run", <!-- uv run 命令 --> "--with", <!-- uv 的 --with 参数,用于指定要运行的模块或入口点 --> "mcp[cli]", <!-- 指定运行 mcp 模块,并启用 cli 功能 --> "--with-editable", <!-- uv 的 --with-editable 参数,用于指定可编辑的包路径 --> "/path/to/union-mcp", <!-- **[请替换为你的 union-mcp 仓库的绝对路径]** 指向你克隆的 union-mcp 仓库的本地路径 --> "mcp", <!-- 实际执行的 mcp 命令 --> "run", <!-- mcp run 子命令,用于启动 MCP 服务器 --> "/path/to/union-mcp/examples/server.py" <!-- **[请替换为你的 union-mcp 仓库的绝对路径]** 指定服务器入口脚本的路径 --> ] } } }
注意:
- 请将配置示例中的 '/path/to/union-mcp' 替换为你本地 'union-mcp' 仓库的绝对路径。
- 确保 'uv' 命令在您的环境变量 'PATH' 中可用。如果不可用,您可能需要将 'command' 字段修改为 'uv' 可执行文件的完整路径,例如 '/Users/username/.local/bin/uv'。
基本使用方法
-
注册 Union AI 资源 (可选): 如果您想使用示例中的工作流,需要先将其注册到 Union AI 平台。在仓库根目录下执行:
union register --project mcp-testing examples/workflows.py这会将 'examples/workflows.py' 中定义的任务和工作流注册到名为 'mcp-testing' 的 Union AI 项目中。
-
启动 MCP 服务器: 在仓库根目录下,使用以下命令启动 MCP 服务器。示例中使用 SSE 传输协议:
mcp run examples/server.py --transport sse或者,您也可以使用 Stdio 传输协议:
mcp run examples/server.py --transport stdio -
使用 MCP Inspector (可选): 您可以使用 MCP Inspector 工具来测试和调试 MCP 服务器。
npx @modelcontextprotocol/inspector在 Inspector 中配置服务器连接信息 (例如,如果是 SSE 传输,则配置 SSE 连接地址),即可与 Union MCP Server 进行交互。
-
连接 Claude Desktop (或其他 MCP 客户端): 配置好 'claude_desktop_config.json' 后,重启 Claude Desktop 客户端,您应该能在客户端的 MCP 服务器列表中看到 "Union MCP" 服务器。选择该服务器即可连接并开始使用 Union AI 提供的工具。