
OpenSCAD MCP Server

2025.03.24
1
Python3D模型生成参数化设计AI图像生成内容生成
OpenSCAD MCP Server 是一个基于模型上下文协议(MCP)的服务,专注于通过文本描述或图像生成3D模型,特别是利用多视角重建和OpenSCAD创建参数化3D模型。该服务集成了AI图像生成、多视角图像生成、3D重建、远程处理等功能,并支持OpenSCAD集成和多种导出格式。
View on GitHub
Overview
基本能力
产品定位
OpenSCAD MCP Server 是一个专注于通过AI生成3D模型的服务,特别适用于参数化3D模型的创建和导出。
核心功能
- AI图像生成:通过Google Gemini或Venice.ai API从文本描述生成图像。
- 多视角图像生成:为3D对象生成多个视角的图像。
- 图像审批工作流:在重建前审查和批准/拒绝生成的图像。
- 3D重建:使用CUDA多视角立体技术将批准的图像转换为3D模型。
- 远程处理:在局域网内的远程服务器上处理计算密集型任务。
- OpenSCAD集成:生成参数化3D模型。
- 参数化导出:导出保留参数属性的模型(CSG、AMF、3MF、SCAD)。
- 3D打印机发现:可选的网络打印机发现和直接打印。
适用场景
- 从文本描述生成3D模型。
- 利用多视角图像进行3D重建。
- 在资源有限的设备上通过远程处理完成计算密集型任务。
- 参数化3D模型的创建和导出。
工具列表
- generate_image_gemini:使用Google Gemini API生成图像。
- generate_multi_view_images:生成3D对象的多个视角图像。
- create_3d_model_from_images:从批准的图像创建3D模型。
- create_3d_model_from_text:从文本到3D模型的完整流程。
- export_model:将模型导出为特定格式。
- discover_remote_cuda_mvs_servers:发现网络中的CUDA MVS服务器。
- get_remote_job_status:检查远程处理任务的状态。
- download_remote_model_result:从远程服务器下载完成的模型。
- discover_printers:发现网络中的3D打印机。
- print_model:在连接的打印机上打印模型。
常见问题解答
- 如何设置API密钥:在根目录下的
.env
文件中添加GEMINI_API_KEY
和VENICE_API_KEY
。 - 如何启用远程处理:在
.env
文件中设置REMOTE_CUDA_MVS_ENABLED=True
。 - 如何安装CUDA Multi-View Stereo:克隆仓库并按照
cmake
和make
步骤进行安装。
使用教程
使用依赖
- 安装Python虚拟环境:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
- 安装OpenSCAD:
- Ubuntu/Debian:
sudo apt-get install openscad
- macOS:
brew install openscad
- Windows: 从openscad.org下载安装
安装教程
- 克隆仓库:
git clone https://github.com/jhacksman/OpenSCAD-MCP-Server.git cd OpenSCAD-MCP-Server
- 安装依赖:
pip install -r requirements.txt
- 安装CUDA Multi-View Stereo:
git clone https://github.com/fixstars/cuda-multi-view-stereo.git cd cuda-multi-view-stereo mkdir build && cd build cmake .. make
- 设置API密钥:在
.env
文件中添加GEMINI_API_KEY
和VENICE_API_KEY
。
调试方式
- 启动服务器:
python src/main.py
- 访问Web界面:
http://localhost:8000/ui/
- 使用MCP工具进行交互,如生成图像或创建3D模型。