picomcpv0.1.2
菜单 · 协议覆盖范围
参考

协议覆盖范围

picomcp 具体实现了 MCP 规范的哪些部分,哪些尚未实现。

查看 .md 在 GitHub 上编辑

本页为译文,以英文版为准。

picomcp 以 MCP 2025-11-25 为目标,并可协商降级到 2025-06-18、2025-03-26 和 2024-11-05。所有标记为支持的功能都有测试覆盖,包括与官方 TypeScript SDK 客户端的端到端测试。

已支持#

领域功能
生命周期带版本协商的 initialize、notifications/initialized、ping
工具tools/list、tools/call、输入校验、outputSchema 和 structuredContent、标注、标题
内容文本、图片、音频、资源链接、内嵌资源
资源resources/list、resources/templates/list、resources/read、文本和二进制内容
提示词prompts/list、prompts/get、从 schema 推导的参数
实用功能基于 AbortSignal 的 notifications/cancelled
JSON-RPC批量消息、错误码、忽略客户端发来的响应
stdio以换行分隔的 JSON,stdout 不受误打日志影响
Streamable HTTP无状态 JSON 响应,通知返回 202,GET 返回 405,CORS,检查 Origin 和 MCP-Protocol-Version

尚未支持#

功能原因
Sampling、elicitation、roots需要服务器向客户端发送请求。picomcp 的无状态设计目前还没有为此保持一个开放通道。
日志、进度和 list_changed 通知同样的原因:都是服务器发给客户端的消息。
资源订阅同样的原因。
自动补全已列入计划。
分页游标列表会一次性完整返回,适合条目在几百个以内的服务器。
会话(Mcp-Session-Id)和 SSE 流无状态模式下不需要。
Tasks在规范中仍是实验性功能。

需要其中某项功能?请提交 issue并描述你的使用场景。只要能在不让 picomcp 变臃肿的前提下加入,新功能就会到来。