SuperAPI AI 工具集

mcp-resource-patterns

智能体与模型

查看项目

更新于 10-15 23:49

技能介绍

用途:指导正确使用 MCP Resources,并判断读操作应实现为资源、工具还是提示词。核心区分是:工具由智能体调用、允许副作用;资源由智能体读取、只读且以 URI 寻址;提示词由用户选择。经验法则是,若需智能体自行决定是否读取,用工具;若用户或智能体需把已知数据附到上下文,用资源。

主要能力:静态资源通过 server.resource 注册,返回 contents 数组,含 uri、mimeType 与 text;模板化资源使用 RFC 6570 URI 模板(如 github://repos/{owner}/{repo}/issues/{number}),客户端自动发现并获取匹配 URI;通过 ListResourcesRequestSchema 列出资源,列表应保持简短,因为用户在资源选择器中看到它;对会变化的数据(日志、指标、工单状态)可设置 subscribe: true,并在更新时调用 server.sendResourceUpdated,客户端监听 notifications/resources/updated 后重新拉取。二进制资源以 blob 返回 base64 数据,支持视觉模型的客户端会直接附加,纯文本客户端会跳过。MCP 无原生分页,惯例是用子资源 URI 或返回 nextPageUri,优先前者。

使用方式:注册资源处理程序并返回带 mimeType 的内容;设计 URI 方案时应分层、可猜测、以服务器身份为前缀、始终带 MIME 类型,避免不透明 ID。常见错误包括:用工具做读取、用资源做写操作、缺少 mimeType、模板变量过多(5 个以上通常应改用搜索工具)、URI 不稳定破坏缓存。最佳实践:把 URI 当作可收藏的地址来设计,批量端点作为资源列表、详情端点作为模板化资源,列表控制在 50 项以内,订阅要节制,并在 README 中记录 URI 方案。以上内容均来自所提供资料,未提供的信息暂未说明。