SuperAPI AI 工具集

managing-mcp-servers

智能体与模型

查看项目

更新于 10-27 00:56

技能介绍

用途 该技能面向 ThinkRail 编辑器中的 MCP 服务器管理场景,覆盖用户提出的新增、修改、删除、启用或禁用 MCP 服务器请求,以及 MCP 工具缺失、需要登录、调用失败或被阻止等排障情形。ThinkRail 使用 pi 的内置 MCP 支持,但没有 pi 可执行文件,因此不应运行 pi mcp add、pi mcp login 等 pi 命令;正确做法是编辑配置文件,并把需要用户操作的部分指向 Settings › MCP servers。

配置位置 服务器配置分两级。用户级位于 pi 的 agent 目录,通常为 ~/.pi/agent/mcp.json,对所有项目可用。仓库级位于工作树的 .pi/mcp.json,并纳入 git 跟踪;在此定义的服务器须经用户在 Settings 中批准后才会运行,条目后续任何改动都需要重新批准,且仅当用户信任该项目时才加载。两个文件均使用 pi 的格式,示例:{"mcpServers": {"docs": {"url": "https://example.com/mcp"}, "browser": {"command": "npx", "args": ["-y", "@playwright/mcp@0.0.83"]}}}。args 中应固定包版本,不要使用 @latest。

密钥与暴露方式 切勿把密钥写入任一配置文件,应以 ${ENV_VAR}(取自宿主环境变量)或 !command(命令输出,例如 !gh auth token)引用,或让用户自行登录。exposure 可取 deferred(默认,先用 tool_search 加载该服务器的工具)、direct(少量始终有用的工具)或 hidden;codemode 按 deferred 处理。个人使用的服务器优先写入用户级文件,只有用户希望与仓库共享时才放入 .pi/mcp.json。

GitHub 配置 GitHub 是配方而非预设:使用其托管服务器并以用户的 GitHub CLI 登录进行认证。将其加入用户级文件(Settings › MCP servers 的 Paste JSON 也提供同一条目):{"mcpServers": {"github": {"url": "https://api.githubcopilot.com/mcp/readonly", "headers": {"Authorization": "!t=$(gh auth token) && echo "Bearer $t""}}}}。/readonly 是 GitHub 文档中的只读模式(等同于 X-MCP-Readonly: true 头);仅当用户需要会改动数据的工具时才使用 https://api.githubcopilot.com/mcp/。该头命令在每次聊天连接时执行;gh 处于登出状态时会失败而不会发送空令牌,用户需在终端运行 gh auth login。暂未确认 GitHub 是否在所有工具集上接受 GitHub CLI 令牌的权限范围;若服务器拒绝,则请用户通过环境变量提供令牌:"Authorization": "Bearer ${GITHUB_TOKEN}"。

生效与用户操作 编辑后宿主机自动重载空闲聊天,忙碌的聊天在空闲时拾取变更。需要告知用户的步骤包括:批准仓库级服务器,或为使用 OAuth 的服务器执行 Sign in,两者均在 Settings › MCP servers 中完成;不要让用户重启 ThinkRail。

使用与限制 MCP 工具命名为 mcp__<server>__<tool>;对 deferred 服务器需先调用 tool_search 加载。子代理无法调用 MCP 工具,应由主代理调用并把所需信息放入子任务。对可能改动数据的调用,ThinkRail 会先征求用户同意;被拒绝或取消的调用对该次调用即为最终结果,未经用户同意不得重试。