@yangnay/pi-mcp-bridge

Standalone pi extension that bridges multiple MCP servers with on-demand connections.

Package details

extension

Install @yangnay/pi-mcp-bridge from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@yangnay/pi-mcp-bridge
Package
@yangnay/pi-mcp-bridge
Version
0.1.0
Published
Mar 31, 2026
Downloads
24/mo · 4/wk
Author
yangnay
License
MIT
Types
extension
Size
16.9 KB
Dependencies
1 dependency · 1 peer
Pi manifest JSON
{
  "extensions": [
    "./src/index.js"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

mcp-bridge

独立的 pi extension/package,用统一配置文件桥接多个 MCP server,工具名保留来源前缀,并在首次调用时按需建连。

发布到 npm 前,你需要把 package.json 里的包名、仓库地址和主页改成你自己的实际值。当前目录已经整理成可发布结构,但还没有绑定你的 npm scope 或 Git 仓库。

特性

  • 多个 MCP server 共用一个 .pi/mcp.json
  • 工具名保留来源前缀,例如 github.search_repos
  • 启动时只读配置和缓存,不主动建连
  • 第一次调用工具时才连接对应 server
  • 支持 stdiohttpsse,以及 auto 模式下 streamable-http -> SSE fallback
  • 提供 mcp-syncmcp-status 两个命令

目录

  • .pi/mcp.json: MCP server 配置
  • .pi/mcp-cache.json: 本地缓存的 tool schema

用法

examples/mcp.json 复制到项目里的 .pi/mcp.json,按你的 server 改好后,在 pi 里加载这个扩展目录或安装这个 package。

第一次使用前先执行一次 mcp-sync,它会连接已启用的 server,拉取 tools,写入 .pi/mcp-cache.json,并把代理工具注册成 source.tool 形式。之后日常使用时,工具会直接可见,但连接仍然是按需发生的。

npm 安装

发布后,用户可以这样安装:

pi install npm:<your-package-name>

安装后,在用户自己的 ~/.pi/agent/mcp.json 或项目 .pi/mcp.json 里填写实际 MCP 配置,再执行 /reloadmcp-sync

发布流程

建议顺序如下:

npm test
npm pack
npm login
npm publish

如果你用的是 scope 包,并且是首次公开发布,通常需要:

npm publish --access public

当前实现边界

这版优先做了桥接主链路:配置读取、缓存预注册、按需连接、工具转发和 transport fallback。更复杂的 JSON Schema 映射目前只覆盖常见基础类型;如果你的 MCP tool 输入大量使用 oneOf、复杂 enum 或深层组合 schema,还需要继续补强。