nicobailon/pi-mcp-adapter

Token-efficient MCP adapter for Pi coding agent

Pi MCP AdapterPi AI 编码代理的插件。它解决了实际痛点:MCP(模型上下文协议)服务器——为 AI 代理提供数据库、浏览器、API 访问权限——自带冗长的工具定义,甚至在你使用任何功能之前,每台服务器就会消耗 10,000+ 个 token 的上下文。连接几台服务器后,你就已经吃掉了一半的上下文窗口。

该适配器的巧妙之处在于:不是将所有服务器的所有工具都加载到代理的上下文中,而是仅暴露 一个代理工具(约 200 个 token)。当代理真正需要特定功能时,它会调用代理,代理按需发现并调用正确的工具。服务器是 懒加载 的——只有在调用其工具时才会连接。工具元数据会被缓存,因此搜索和描述操作无需实时连接即可完成。

安装 仅需一条命令:pi install npm:pi-mcp-adapter

配置 使用标准的 MCP 文件(项目级用 .mcp.json,用户全局用 ~/.config/mcp/mcp.json)以及 Pi 特有的覆盖文件。/mcp 面板负责设置,/mcp setup 可以将其他主机(Cursor、Claude Code、Codex)的配置导入 Pi。该适配器还支持:

  • 代理插件 — 从插件包中加载 MCP 服务器,使用 <plugin>__<server> 前缀
  • Claude 插件 — 从本地插件目录启用 MCP 服务器和技能(明确的信任边界;从不下载或安装插件)
  • Pi 包 — 将 MCP 服务器打包进 Pi 包中,无需单独配置文件
  • 程序化使用createMcpAdapter({ config }) 用于 SDK 或服务器集成,由其自行管理 MCP 配置
  • OAuth — 共享 pi-mcp-adapter/oauth 模块,让协作扩展复用 URL 绑定的 OAuth 令牌
  • 事件总线 — 扩展可订阅版本化通道,接收只读的服务器状态快照

安全细节:该适配器从不重写外部主机文件,从不静默执行其中的命令,拒绝逃逸目录的插件符号链接,并将 OAuth 流的密钥(CSRF 状态、PKCE 验证器)保持在流内。禁用服务器仅在项目本地覆盖文件中写入 disabled 标志——源文件保持不变。

为何重要:它让你在无需支付上下文窗口成本的情况下访问 MCP 生态系统,让代理按需发现工具,而非预先加载全部。

相关

  • 项目
  • 项目
  • Dispatch
  • 项目
  • 项目