Routa MCP Server

使用说明(Markdown 格式)

  • 项目简介
    • Routa 是一个面向 IntelliJ 插件的多智能体编排系统,同时实现了 MCP(Model Context Protocol)服务器端组件,用于向 LLM 客户端提供上下文数据、工具调用能力以及 Prompt/模板渲染等功能。通过 MCP,LLM 客户端可以以标准化的 JSON-RPC 形式读取资源、执行工具以及获取和渲染 Prompts。Routa 的 MCP 服务端核心组件包括 RoutaMcpServer、 RoutaMcpToolManager,以及与 MCP 客户端通信的路由与工具注册逻辑,支持多种传输方式(如 SSE、WebSocket、STDIO 框架的集成),并实现了基于 ACP 的协作管控能力。
  • 主要功能点
    • MCP 服务端核心:基于 @modelcontextprotocol/sdk 的 MCP 服务器实现,注册并暴露多项工具,接收并响应 JSON-RPC 请求,向客户端发送结构化通知。
    • 工具注册与执行映射:将 Routa 的 12 大类工具映射为 MCP 工具,覆盖创建任务、查询任务、代理分发、跨代理通信、事件订阅等能力。
    • ACP 与 MCP 集成:内置的 ACP 处理流程可通过 MCP 与多代理(ROUTA/CRAFTER/GATE)协同工作,并支持通过 MCP 触发进程化委派与任务唤醒。
    • 会话与事件流:具备会话管理、订阅/订阅取消、事件流(包括工具调用的状态、任务进度、会话通知)的能力。
    • MCP 配置生成与工具支持:提供生成 Routa MCP 服务端配置 JSON 的工具,支持多种提供商的 MCP 集成( Claude Code、Codex、OpenCode、Gemini、Auggie、Kimi、Copilot 等),并对外暴露说明性 API。
    • 服务端路由与示例:在 app 的 API 路由中实现了 /api/mcp(MCP 的 SSE/POST 端口)、/api/mcp/tools(工具定义与执行入口)、以及相关的 MCP 配置工具。
  • 安装与运行
    • 仓库是一个多模块仓,MCP 服务端核心与路由实现集中在 routa-js 模块中,需在本地构建并启动相应的服务端环境(常规 Node.js + Next.js/Ant Design 风格的路由)。
    • 一般流程:
      1. 安装依赖:在 routa-js/ 及相关子包中执行依赖安装。
      2. 构建/启动:按照项目提供的构建脚本(通常包含对 Next.js API 路由的打包与启动)启动服务端。
      3. MCP 客户端接入:使用客户端工具(Claude Code、Codex、Gemini、OpenCode 等)通过 JSON-RPC/HTTP 或 MCP Inspector 连接到 /api/mcp,使用示例配置进行连接(见下方“服务器配置”)。
    • MCP 客户端配置说明(仅供参考,具体请以你的 MCP 客户端实现为准): 该配置用于 MCP 客户端连接 Routa 的 MCP 服务端。配置以 JSON 表达,包含服务端名称、连接端点及工作区标识等信息,示例如下(以文本形式描述,不作为代码块呈现):
      • serverName: routa-coordination
      • transport: http
      • url: http://localhost:3000/api/mcp
      • env: { ROUTA_WORKSPACE_ID: "default" }
      • 说明:Routa 提供的 MCP 服务默认工作区为 default,可以通过 ROUTA_WORKSPACE_ID 指定工作区。客户端通常仅需要知道 serverName 和 url(以及可选环境变量),不需要直接执行服务端的启动命令与参数;启动命令由服务器端执行并托管。
  • 服务器配置(供 MCP 客户端使用的连接信息,按 MCP 客户端需要的形式提供) 这是用于 MCP 客户端连接 Routa MCP 服务端的 JSON 配置示例(请不要直接在服务器端写死为代码块;下方文本已给出可直接使用的 JSON 结构): { "serverName": "routa-coordination", "type": "http", "url": "http://localhost:3000/api/mcp", "env": { "ROUTA_WORKSPACE_ID": "default" } } 备注:
    • serverName 对应 MCP 服务端的服务器标识名称,type 表示传输类型(此处为 http),url 指向 Routa 的 /api/mcp 端点,env 用于传递工作区等运行时参数。
    • 若你的客户端需要在启动时注入额外参数,可将其放入该对象的其他字段中(如工作区、provider 选择等),但核心连接信息为 url 与工作区标识。
  • 基本使用方法
    • 客户端准备并连接到 Routa 的 MCP 服务端,建立 JSON-RPC 通道。
    • 通过 JSON-RPC 请求读取资源、调用工具、获取 Prompt 模板等。服务端返回的响应和通知将通过 JSON-RPC 格式和流式通知提供给客户端。
    • 如需在多代理协作中进行任务分派,Routa 的 MCP 服务端会通过工具映射实现任务创建、分派、跟踪与结果汇总等工作流。
    • 如需要使用监控与调试工具,可以通过 MCP Inspector 等工具对 /api/mcp 端口进行连接和调试。

服务器信息