pi-mcp-kit

extension

MCP Gateway for Pi — stdio/SSE/Streamable HTTP transports, session recovery, connection pooling, structured error handling.

by · v1.0.0 · published 1w ago

$ pi install npm:pi-mcp-kit
downloads/mo
0
stars
last push
open issues

Signals

license: MITtestspi manifest: missinginstall size: —deps: 0peer deps: 0

Download trend

162 downloads · last 12 weeks (weekly)

README

pi-mcp-kit

English

Pi 打造的轻量级模型上下文协议 (MCP) 网关扩展。通过统一代理工具对已配置的本地与远程 MCP 服务进行路由、连接池化管理和按需延迟加载。

功能

  • 多传输协议支持:支持 MCP 的 Stdio、SSE 和 Streamable HTTP 传输方式。
  • 延迟加载与连接池:启动时读取缓存的工具元数据,不会立即打开所有服务器连接。
  • 紧凑型能力探索:允许 Agent 按需搜索缓存的 MCP 能力,并调用搜索结果中的精确工具名。
  • 结构化 JSON 参数:接受对象参数,并将其转发给选定的 MCP 服务端进行校验和执行。
  • 显式路由防误触发:要求工具名称精确匹配;重名工具必须通过 { server, tool } 明确路由。
  • 传输与输出体积限制:强制执行 10 MiB 传输消息限制,超大输出会保存到本地临时文件。

环境要求

  • Node.js 20.0.0 或更高版本
  • @earendil-works/pi-coding-agent@earendil-works/pi-tui 以及 typebox
  • 已配置的本地或远程 MCP 服务器

安装

pi install npm:pi-mcp-kit

配置

MCP 服务器配置会从以下位置加载:

路径描述
~/.pi/agent/mcp.json首选的全局 MCP 配置文件。
~/.config/mcp/mcp.json当首选文件不存在时使用的全局配置文件。
.pi/mcp.json.mcp.json仅在启用本地配置且工作区受信任时读取的项目配置。
~/.cursor/mcp.json~/.claude/mcp.json 或 Claude Desktop 配置自动发现的第三方配置,会经过命令、环境变量和请求头检查。

/mcp 命令用于管理连接和刷新工具缓存。请在对应的配置文件中新增或编辑服务器定义。

使用

在 Pi 终端交互界面中:

  • /mcp:打开交互式 MCP 连接控制面板。
  • /mcp <serverName>:切换指定服务器的连接状态。

Agent 可以通过代理 mcp 工具探索和调用 MCP 工具。

安全

Pi 扩展以当前用户的系统权限运行。安装前请审查源代码,并且只配置你信任的服务。

本扩展可以通过 Stdio 启动本地子进程,也可以通过 SSE 或 Streamable HTTP 连接远程端点。请只配置可信的命令和端点。环境变量或请求头中的凭据会直接透传至配置的目标服务器。

开发

git clone https://codeberg.org/huanghui/pi-mcp-kit.git
cd pi-mcp-kit
npm ci
npm run check
npm test
npm pack --dry-run --json

参与贡献

欢迎通过 Codeberg 提交 issue 和范围明确的拉取请求。提交前请运行 npm run checknpm test

许可证

MIT