• 测试完成了,且全程没有调用 disable_simulation_mode。
这次结果分两层:
- MCP 接入层是正常的。当前会话里已经挂上了 opentrons-remote,资源可读,session_status 返回的是 {"connected": false}。这
说明你重启后,Codex 已经能正确连到远端 MCP server。
- 工具调用层也正常到达 server 了。我实际调用了 connect_robot(simulation=true)、disconnect_robot() 和状态资源读取,server
都有响应,不是“工具不可用”或者“协议不兼容”的问题。
真正失败的点在 connect_robot 本身。无论不给 host_alias,还是给我试过的几个别名:
- bqy
- tailscale_bao
- wg_me
- tailscale_me
- my_wsl2direct
- superreader
返回都一致或近似一致:
- 不传别名时:Both hostname and hostalias is None, invalid
- 传了别名时:'user'
这很像远端 MCP server 在解析 SSH host alias 时有服务端 bug,或者它所在机器上的 SSH 配置缺少它期望的 user 字段格式。重点
是:现在不是 Codex 配置问题,也不是 streamable HTTP 问题,而是远端 connect_robot 的 host 解析逻辑出了问题。
如果你要我继续做真正的 simulation 内完整流程测试,最小前提是二选一:
1. 你修一下远端 server 的 connect_robot,让某个 host_alias 能成功。
2. 你直接告诉我那个 server 所在机器上一个确定可用的 host_alias。0 views