说明 stdio 传输的启动方式、标准输出纪律、初始化与工具发现顺序,并给出无响应时的可复查排查步骤。
这篇要解决什么
搜索这个问题的读者通常正在尝试:把本地 MCP 进程用标准输入输出接到客户端,并确认客户端真的发现了工具。。先在测试环境用只读或模拟数据完成链路,再考虑接入真实业务。

按步骤完成
- 把协议消息保留在标准输出通道;普通调试信息写入标准错误或日志文件,避免破坏消息流。
- 由客户端启动子进程后先完成 initialize,再请求 tools/list;不要在初始化前猜测服务器支持哪些工具。
- 若 tools/list 为空,先核对启动命令、工作目录、退出码和标准错误,再检查服务器是否声明了工具能力。
用一条固定消息检查链路
以下只是协议层示例,展示要记录的字段,不代表已经连到你的服务器:
{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}
把其中的工具名、参数和允许范围替换成自己的清单。不要把密钥、客户资料、订单号或生产地址写进演示文件。
怎样验收结果
成功标准是客户端记录到初始化响应,并拿到非空或符合预期的 tools/list 结果;进程仍存活且标准错误没有协议解析错误。
失败边界
stdio 适合本机父子进程连接,不等于可被局域网或公网访问。把本地进程暴露给其他机器前,还要重新选择传输、认证和网络边界。
依据与核验日期
以上官方资料于 2026-10-01 核对。协议、SDK 和客户端界面会更新;实施前应再次阅读对应版本的官方说明。
相关问答
工具返回成功就能说明业务完成吗?
不能。工具返回只说明该调用得到响应;涉及写入时还要核对业务系统的最终状态、权限和审计记录。
Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/32553.html