openscad-mcp
v1.0.0
Published
MCP server for OpenSCAD - 3D CAD modeling via AI assistants
Downloads
96
Maintainers
Readme
OpenSCAD MCP Server
A Model Context Protocol (MCP) server for OpenSCAD - enables AI assistants to create and manipulate 3D CAD models.
Features
- Render: Compile OpenSCAD code to 3D mesh formats (STL, OFF, AMF, 3MF, CSG)
- Preview: Generate 2D previews (PNG, SVG, DXF, PDF) with camera controls
- Validate: Check OpenSCAD syntax without generating output
- Info: Get OpenSCAD installation information
Prerequisites
- Node.js 18 or higher
- OpenSCAD installed on your system
Installation
# Clone or download this repository
cd openscad-mcp
# Install dependencies
npm install
# Build the project
npm run buildUsage with Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"openscad": {
"command": "node",
"args": ["/path/to/openscad-mcp/dist/index.js"]
}
}
}Tools
render
Compile OpenSCAD code to a 3D mesh format.
Parameters:
scad(string, required): OpenSCAD code to compileformat(string, default: "stl"): Output format -stl,off,amf,3mf, orcsgparameters(object, optional): Variables to pass via -D flagsexportFormat(string, optional): For STL -asciistlorbinstlhardwarnings(boolean, default: true): Treat warnings as errors
preview
Generate a 2D preview or vector export.
Parameters:
scad(string, required): OpenSCAD code to previewformat(string, default: "png"): Output format -png,svg,dxf, orpdfwidth(number, default: 800): Image width in pixelsheight(number, default: 600): Image height in pixelscamera(string, optional): Camera positioncolorscheme(string, default: "Cornfield"): Color schemeprojection(string, default: "perspective"):orthoorperspectiveautocenter(boolean, default: true): Center the designviewall(boolean, default: true): Fit entire design in viewrender(boolean, default: false): Use full CGAL render
validate
Validate OpenSCAD syntax.
Parameters:
scad(string, required): OpenSCAD code to validateparameters(object, optional): Variables to define
info
Get OpenSCAD installation information.
Example Usage with AI Assistant
User: Create a simple 10x10x10 cube in OpenSCAD and render it to STL
AI: I'll create a cube and render it for you.
[Uses render tool with:]
scad: cube([10, 10, 10]);
format: stlColor Schemes
Available color schemes for PNG export:
- Cornfield (default)
- Metallic
- Sunset
- Starnight
- BeforeDawn
- Nature
- Daylight Gem
- Nocturnal Gem
- DeepOcean
- Solarized
- Tomorrow
- Tomorrow Night
- ClearSky
- Monotone
License
MIT
