返回市场
管道服务器

管道服务器

作者:griffithsbs11 星标更新:2025-06-19

项目介绍

mcpipe

npm 版本 总下载量

用于基于标准 I/O 的 MCP 服务器的封装器,添加了调试、工具名称前缀以及环境管理功能。

快速开始

# 调试 MCP 通信
npx mcpipe --debug your-mcp-server

# 避免工具名称冲突
npx mcpipe --name myserver your-mcp-server

# 加载环境变量
npx mcpipe --env-file .env your-mcp-server

# 组合功能
npx mcpipe --debug --name myserver --env-file .env your-mcp-server

在 MCP 客户端中的使用

在服务器命令前加上 mcpipe。

之前

{
  "my_server": {
    "command": "npx",
    "args": ["my-mcp-server", "--config", "path/to/config"]
  }
}

之后(启用调试和工具名称前缀)

{
  "my_server": {
    "command": "npx", 
    "args": ["mcpipe", "--debug", "--name", "myserver", "npx", "my-mcp-server", "--config", "path/to/config"]
  }
}

功能

调试日志(--debug

  • 查看客户端与服务器之间的所有 JSON-RPC 消息
  • 监控进程生命周期事件
  • 查看工具名称转换

工具名称前缀(--name 前缀

  • 运行相同服务器的多个实例
  • 避免不同服务器之间的工具名称冲突
  • 服务器公开的名为 foo 的工具将在客户端下以 <前缀>_foo 的形式公开

环境加载(--env-file 路径

  • .env 文件中加载变量
  • 将密钥信息保留在 MCP 客户端配置之外
  • 注意:如果您只想加载环境而不使用其他功能,请考虑使用 envmcp

选项

  • --debug, -d: 启用调试日志到 stderr
  • --name <前缀>, -n <前缀>: 添加前缀到工具名称
  • --env-file <路径>, -e <路径>: 加载环境文件

调试输出示例

[2024-01-15 10:30:01.125] [myserver_CLIENT→SERVER] {"jsonrpc":"2.0","method":"tools/list","id":1}
[2024-01-15 10:30:01.128] [myserver_SERVER→CLIENT] {"jsonrpc":"2.0","result":{"tools":[{"name":"fetch"}]},"id":1}
[2024-01-15 10:30:01.128] [myserver_TRANSFORM] 工具名称前缀为: myserver_
[2024-01-15 10:30:01.129] [myserver_SERVER→CLIENT] (修改后) {"jsonrpc":"2.0","result":{"tools":[{"name":"myserver_fetch"}]},"id":1}

环境文件格式

KEY=value
ANOTHER_KEY=another value
# 这是一个注释
QUOTED_VALUE="value with spaces"

许可证

MIT