SketchUp MCP 的失败就三件事:Ruby 插件没加载、MCP 服务没跑、AI 客户端起不了服务。找到你那句报错,修法跟在后面。
两个检查,一分钟,省你一小时。
SketchUp 里打开窗口 → Ruby 控制台。插件加载成功的话启动信息在那。失败的话异常也在那,还会写明哪个文件哪一行。这是最有用的地方,大多数人从没打开过。
再看 AI 客户端的工具列表。SketchUp 的工具压根没出现,问题在客户端和服务之间,不在 SketchUp 里。直接跳到 spawn 和 JSON 那两节。
Error: spawn uvx ENOENT
怎么回事。AI 客户端想启动服务,找不到 uvx 这个命令。跟 SketchUp 没关系。
为什么。图形界面程序不继承你终端的 PATH。uvx 在终端里跑得好好的,说明它存在。桌面程序看的是另一份 PATH,它看不见。基本每个人都撞一次。
怎么修。配置里写绝对路径,别写裸命令。跑 which uvx(macOS)或 where uvx(Windows),把完整路径贴进去:
{
"mcpServers": {
"sketchup": {
"command": "/Users/you/.local/bin/uvx",
"args": ["sketchup-mcp"]
}
}
}
改完把客户端完全退出再打开。
Error executing MCP tool: Not connected
怎么回事。客户端登记了服务,但调用那一刻连接不在。服务要么没起来,要么起来又退了。
怎么修。两半都得活着:SketchUp 开着且插件已加载,MCP 服务进程在跑。顺序是先起服务、再开 SketchUp、最后开客户端。
服务一启动就退出的话,把命令在终端里手动跑一遍。启动时打印的那句错通常很清楚,而客户端在后台启动时这句话完全看不到。
Connection refused. Is the MCP server running?
怎么回事。有东西按某个地址去连,那个地址上没人应答。
怎么修。核对配置里的地址端口和服务实际监听的对不对得上。少一段路径或者端口打错最常见。走开源路线的话确认项目用哪个端口,各实现不一样。
怎么回事。客户端连不上,在等。你压根没启动服务时看到的也是这个,所以这句话特别没用。
怎么修。当成「没连上」而不是「慢」。按上面 spawn 那节和下面 JSON 那节查一遍,基本就是这两个。
怎么回事。客户端没读到配置,通常是 JSON 不合法。很多客户端失败时一声不吭。
怎么修。贴进任意 JSON 校验工具。三个常见坑:最后一项后多了逗号;从网页或 PDF 复制带了中文弯引号;Windows 路径反斜杠没转义。Windows 路径要双反斜杠:
"command": "C:\\Users\\you\\.local\\bin\\uvx.exe"
然后把客户端完全退出再打开。大多数客户端只在启动时读一次配置。
怎么回事。.rbz 装好了,扩展程序管理器里看得到,命令就是没反应。
怎么修。按顺序查三件事:
怎么回事。SketchUp 的 Ruby API 在不同版本之间会变。针对某一版写的插件换个版本可能加载不了。大版本升级是常见诱因。
怎么修。查项目声明支持哪些版本,装回和你 SketchUp 匹配的构建。走开源路线的话,这是会反复发生的成本,不是一次性的。
怎么回事。通常是端口冲突。插件加载了、服务起来了、都不报错,就是没在说话,因为端口被占了。
怎么修。别假设端口是空的,查一下:
lsof -nP -iTCP:9876 -sTCP:LISTEN # macOS / Linux netstat -ano | findstr :9876 # Windows
有东西占着就停掉,或者换端口。插件设置和服务配置两边都要改。只改一边,出来的是一模一样、无声无息的失败。
怎么回事。这次请求要的来回太多。跨很多对象的长操作是常见诱因。
怎么修。拆小。「先把座椅阵列好,再赋材质」能跑完,「把整个客厅建出来」会超时。这是当前这代工具的边界,不是你配错了。