🚀 SketchupMCP - Sketchup 模型上下文协议(MCP)整合
SketchupMCP 通过模型上下文协议(MCP)将 Sketchup 连接到 Claude AI,使 Claude 能够直接与 Sketchup 进行交互和控制。这一整合允许借助提示辅助进行 3D 建模、场景创建以及对 Sketchup 进行操作。

特别感谢 mhyrr/sketchup-mcp 提供的架构。我们对其原生版本(mhyrr/sketchup-mcp)进行了简体中文化及部分功能优化与调整。
✨ 主要特性
- 双向通信:通过 TCP 套接字连接 Claude AI 与 Sketchup。
- 组件操作:在 Sketchup 中创建、修改、删除和变换组件。
- 材质控制:应用和修改材质与颜色。
- 场景检查:获取当前 Sketchup 场景的详细信息。
- 选取处理:获取并操作已选取的组件。
- Ruby 代码执行:在 Sketchup 中直接执行任意 Ruby 代码,以进行高级操作。
📦 安装指南
该系统由两个主要组件组成:
- Sketchup 扩展:在 Sketchup 内部创建 TCP 服务器来接收并执行命令的扩展。
- MCP 服务器(
sketchup_mcp/server.py):实现模型上下文协议并连接到 Sketchup 扩展的 Python 服务器。
安装步骤
- 下载并安装 SketchupMCP 扩展。
- 启动 Sketchup 并且开启 MCP 服务器:
pip install uv
💻 使用示例
基础用法
该系统由两个主要组件组成:
- Sketchup 扩展:在 Sketchup 内部创建 TCP 服务器来接收并执行命令的扩展。
- MCP 服务器(
sketchup_mcp/server.py):实现模型上下文协议并连接到 Sketchup 扩展的 Python 服务器。
高级用法
以下是一些示例操作:
- "创建一个带有屋顶和窗户的简单房屋模型"
- "选取所有组件并获取它们的信息"
- "将选取的组件变成红色"
- "将选取的组件向上移动 10 个单位"
- "将当前场景导出为 3D 模型"
- "使用 Ruby 代码创建一个复杂的艺术与工艺柜"
📚 详细文档
疑难排解
- 连线问题:确保 Sketchup 扩展服务器和 MCP 服务器都在运行。
- 命令执行失败:检查 Sketchup 的 Ruby 控制台以查看错误讯息。
- 超时错误:尝试简化请求或将操作拆分为较小的步骤。
🔧 技术细节
通信协议
该系统使用基于 TCP 套接字的简单 JSON 协议:
- 命令:以 JSON 物件的形式发送,包含
type 和可选的 params。
- 回应:以 JSON 物件的形式返回,包含
status 及 result 或 message。
📄 许可证
MIT 授权许可证