关于 Truto MCP Stdio Proxy
Truto MCP Stdio Proxy 是连接 stdio MCP 客户端与 HTTP Streamable MCP 端点的命令行桥接工具。它处理会话、协议协商、SSE 消息和关闭清理。
主要功能
- 01stdio 到 HTTP 消息转发
- 02处理 JSON 和 SSE 响应
- 03自动跟踪会话
- 04协议版本协商
- 05接收服务端 SSE 消息
- 06关闭时清理会话
适用场景
- 01让 stdio MCP 客户端连接 HTTP 端点
- 02接收服务端发起的通知和请求
MCP 相关
它将 stdio MCP 客户端桥接到 HTTP Streamable MCP 服务,转发 JSON-RPC 消息并处理会话和协议标头。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Truto MCP Stdio Proxy
一个 CLI 程序,用于将基于 stdio 的 MCP 客户端连接到 HTTP Streamable MCP 服务。它从 stdin 读取以换行符分隔的 JSON-RPC 消息,通过 HTTP POST 将消息转发到指定的 MCP 服务端点,处理 SSE 流式响应,并将响应写入 stdout。
实现了 MCP Streamable HTTP 传输(协议版本 2025-11-25)。
功能
- Streamable HTTP 传输——全面支持
application/json和text/event-stream响应 - 会话管理——自动跟踪请求中的
MCP-Session-Id - 协议版本协商——从 initialize 握手中提取
protocolVersion,并在后续请求中发送MCP-Protocol-Version - 服务端发起的消息——打开后台 GET SSE 流,用于接收服务端到客户端的通知和请求,并自动重新连接
- 会话清理——关闭时发送 HTTP DELETE,以妥善终止会话
要求
- Go 1.24.2 或更高版本(用于从源代码构建)
安装
下载预构建二进制文件
从 GitHub releases 页面下载最新版本。选择适用于你平台的二进制文件:
- Linux(amd64):
truto-mcp-stdio-linux-amd64-v<version> - macOS(Intel):
truto-mcp-stdio-darwin-amd64-v<version> - macOS(Apple Silicon):
truto-mcp-stdio-darwin-arm64-v<version> - Windows(amd64):
truto-mcp-stdio-windows-amd64-v<version>.exe
下载后,将二进制文件设为可执行(适用于类 Unix 系统):
chmod +x truto-mcp-stdio-<platform>-v<version>
从源代码构建
go build -o truto-mcp-stdio
用法
./truto-mcp-stdio <API_URL>
参数
<API_URL>:MCP 服务的 HTTP 端点 URL(必填)
示例
echo '{"jsonrpc": "2.0", "method": "initialize", "params": {"protocolVersion": "2025-11-25", "capabilities": {}, "clientInfo": {"name": "test", "version": "1.0.0"}}, "id": 1}' | ./truto-mcp-stdio https://api.truto.one/mcp/<your-mcp-id>
客户端配置
以下是主要 MCP 客户端的配置说明。将 /path/to/truto-mcp-stdio 替换为二进制文件的实际路径,并将 <your-mcp-id> 替换为你的 Truto MCP 端点 ID。
Cursor
配置文件:~/.cursor/mcp.json(全局)或 .cursor/mcp.json(项目级)
{
"mcpServers": {
"truto": {
"command": "/path/to/truto-mcp-stdio",
"args": ["https://api.truto.one/mcp/<your-mcp-id>"]
}
}
}
Cursor 会热重载配置更改,无需重启。
Claude Desktop
配置文件位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"truto": {
"command": "/path/to/truto-mcp-stdio",
"args": ["https://api.truto.one/mcp/<your-mcp-id>"]
}
}
}
编辑后需要完全重启 Claude Desktop。
Claude Code(CLI)
通过 CLI 添加:
claude mcp add truto -- /path/to/truto-mcp-stdio https://api.truto.one/mcp/<your-mcp-id>
或者在项目根目录创建 .mcp.json:
{
"mcpServers": {
"truto": {
"type": "stdio",
"command": "/path/to/truto-mcp-stdio",
"args": ["https://api.truto.one/mcp/<your-mcp-id>"]
}
}
}
VS Code(GitHub Copilot)
在项目中创建 .vscode/mcp.json:
{
"servers": {
"truto": {
"type": "stdio",
"command": "/path/to/truto-mcp-stdio",
"args": ["https://api.truto.one/mcp/<your-mcp-id>"]
}
}
}
注意: VS Code 使用
"servers"作为根键,而不是"mcpServers"。
Windsurf
配置文件位置:
- macOS/Linux:
~/.codeium/windsurf/mcp_config.json - Windows:
%USERPROFILE%\.codeium\windsurf\mcp_config.json
{
"mcpServers": {
"truto": {
"command": "/path/to/truto-mcp-stdio",
"args": ["https://api.truto.one/mcp/<your-mcp-id>"]
}
}
}
编辑后需要重启 Windsurf。
Cline(VS Code 扩展)
通过 Cline 侧边栏中的 MCP Servers 面板添加,或直接编辑配置文件:
- macOS:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - Windows:
%APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
{
"mcpServers": {
"truto": {
"command": "/path/to/truto-mcp-stdio",
"args": ["https://api.truto.one/mcp/<your-mcp-id>"]
}
}
}
开发
go run truto-mcp-stdio.go <API_URL>
工作原理
- 按行从 stdin 读取 JSON-RPC 消息
- 使用所需的
Accept、MCP-Session-Id和MCP-Protocol-Version标头,将每条消息作为 HTTP POST 发送到 MCP 端点 - 处理
application/json和text/event-stream(SSE)两种格式的响应 - 从服务端的初始化响应中提取
MCP-Session-Id,并将其包含在后续所有请求中 - 提取协商得到的
protocolVersion,并将其作为MCP-Protocol-Version标头发送 - 初始化后打开后台 GET SSE 流以接收服务端发起的消息,并自动重新连接
- 关闭时(stdin 关闭或收到信号),发送 HTTP DELETE 以正常终止会话
- 错误和诊断信息写入 stderr
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。