使用说明
SketchupMCP-Sketchup模型上下文协议集成
SketchupMCP通过模型上下文协议(MCP)将Sketchup连接到Claude AI,允许Claude直接与Sketchup交互和控制Sketchup。此集成支持Sketchup中的提示辅助3D建模、场景创建和操作。
大声呼喊 搅拌机MCP 灵感和结构。
特性
- 双向通信:通过TCP套接字连接将Claude AI连接到Sketchup
- 组件操作:在Sketchup中创建、修改、删除和变换组件
- 材料控制:应用和修改材质和颜色
- 现场检查:获取当前Sketchup场景的详细信息
- 选择处理:获取和操作选定的组件
- Ruby代码评估:直接在SketchUp中执行任意Ruby代码以进行高级操作
组件
该系统由两个主要部分组成:
- 草图扩展:Sketchup扩展,在Sketchup中创建TCP服务器以接收和执行命令
- MCP服务器(
sketchup_mcp/server.py):实现模型上下文协议并连接到Sketchup扩展的Python服务器
安装
Python打包
我们正在使用紫外线,所以你需要 brew install uv
草图扩展
- 下载或构建最新版本
.rbz文件 - 在Sketchup中,转到窗口>扩展管理器
- 点击“安装扩展”并选择下载的
.rbz文件 - 重新启动Sketchup
用法
启动连接
- 在Sketchup中,转到扩展>SketchupMCP>启动服务器
- 服务器将在默认端口(9876)上启动
- 确保MCP服务器正在您的终端中运行
与克劳德一起使用
通过在Claude配置中添加以下内容来配置Claude以使用MCP服务器:
"mcpServers": {
"sketchup": {
"command": "uvx",
"args": [
"sketchup-mcp"
]
}
}
这将拉动 PyPI的最新消息
连接后,Claude可以使用以下功能与Sketchup进行交互:
工具
get_scene_info-获取有关当前Sketchup场景的信息get_selected_components-获取有关当前选定组件的信息create_component-使用指定参数创建新组件delete_component-从场景中删除组件transform_component-移动、旋转或缩放组件set_material-将材料应用于组件export_scene-将当前场景导出为各种格式eval_ruby-在SketchUp中执行任意Ruby代码以进行高级操作
示例命令
以下是一些你可以要求克劳德做的事情的例子:
- “创建一个有屋顶和窗户的简单房屋模型”
- “选择所有组件并获取其信息”
- “将所选组件设置为红色”
- “将所选组件向上移动10个单位”
- “将当前场景导出为3D模型”
- “使用Ruby代码创建一个复杂的工艺品柜”
故障排除
- 连接问题:确保Sketchup扩展服务器和MCP服务器都在运行
- 命令失败:检查Sketchup中的Ruby控制台是否有错误消息
- 超时错误:尝试简化您的请求或将其分解为更小的步骤
技术细节
通信协议
该系统在TCP套接字上使用简单的基于JSON的协议:
- 命令 以JSON对象的形式发送
type可选params - 响应 JSON对象具有
status和result或message
贡献
欢迎投稿!请随时提交拉取请求。
许可证
麻省理工学院