OpenSCAD MCP Server logo

OpenSCAD MCP Server

by jhacksman

The OpenSCAD MCP Server enables users to generate 3D models from text descriptions or images, focusing on parametric 3D models using multi-view reconstruction and OpenSCAD. It provides a Model Context Protocol (MCP) server for generating 3D models.

View on GitHub

Last updated: N/A

What is OpenSCAD MCP Server?

The OpenSCAD MCP Server is a Model Context Protocol (MCP) server that allows users to generate 3D models from text or images. It leverages AI image generation, multi-view reconstruction, and OpenSCAD for parametric modeling, and supports remote processing for computationally intensive tasks.

How to use OpenSCAD MCP Server?

To use the server, first install it by cloning the repository, creating a virtual environment, and installing dependencies. Configure API keys and, optionally, set up remote processing. Start the server and interact with it using MCP tools to generate images, create 3D models, and export them in various formats.

Key features of OpenSCAD MCP Server

  • AI Image Generation (Gemini, Venice.ai)

  • Multi-View Image Generation

  • 3D Reconstruction (CUDA MVS)

  • OpenSCAD Integration

  • Remote Processing Support

  • Parametric Export (CSG, AMF, 3MF, SCAD)

Use cases of OpenSCAD MCP Server

  • Generating 3D models from text prompts

  • Creating parametric models for customizable designs

  • Automating 3D model creation workflows

  • Offloading computationally intensive tasks to remote servers

FAQ from OpenSCAD MCP Server

What is MCP?

MCP stands for Model Context Protocol, a protocol for interacting with modeling servers.

What image generation APIs are supported?

The server supports Google Gemini and Venice.ai APIs for image generation.

Can I use my own images?

Yes, you can upload your own images and skip the image generation step.

What export formats are supported?

The server supports OBJ, STL, PLY, SCAD, CSG, AMF, and 3MF export formats.

How do I set up remote processing?

Install CUDA Multi-View Stereo on a server machine, start the remote server, and configure the client with the server URL or enable LAN discovery.