跳到正文
个人 Web Alpha内容核对:2026-09-23查看 Markdown

6.4 接入只读 MCP 工具

先验证一个只读工具,再接入具有业务写入能力的系统。本例使用仓库自带的公共资料服务,不读取私人目录,也不调用模型。

1. 准备并运行协议验证

完成源码开发环境,在仓库根目录执行:

sh
pnpm test:references

协议用例会通过 stdio 启动真实 MCP 服务,列出工具、读取资料,并验证错误身份、版本和额外参数被拒绝。

服务入口为 packages/mcp-reference/src/main.ts。手动启动时,它会等待标准输入中的 MCP 协议消息,没有普通聊天提示属于正常状态。

2. 读取一份资料

工具参数结果
list_references空对象 {}已开放资料的 ID、来源与 SHA-256 版本
read_referenceidversion同一版本的正文与来源

先调用列表,从真实回包取 id 与 64 位版本,再读取。不要将版本写死为某个文档示例值;正文更新后版本也会变化。

3. 验证拒绝路径

用未开放的资料 ID 调用,应返回 reference/not-found;用旧版本调用,应返回 reference/version-conflict。额外的 path 字段或任意磁盘路径不被接受。

这验证的是 MCP 服务自身的资料边界。它不替代 Teloa 中岗位工具授权的测试。

4. 在 Teloa 中使用

默认组合已配置 teloa_reference 这个 stdio 服务。在设置中进入 DSH 管理的运行配置,检查连接。先暂停对应同事,再编辑工具授权,为对应资料开放读取能力,按页面给出的候选范围配置;完成后恢复在岗。协议工具完整名称为 mcp__teloa_reference__list_referencesmcp__teloa_reference__read_reference

未授权时,在岗位任务中调用应被拒绝;授权后用同一资料任务重试并查看工具记录。普通会话与岗位任务的上下文不同,不可只测普通会话就宣称岗位授权链已通过。

新服务的传输、认证和凭据字段以当前 DSH 配置页为准。本指南验证 stdio 路径,不承诺所有远程传输与认证组合都已验证。

一个人,带领一支 AI 团队