Skip to main content
Glama

title: OpenSCAD MCP emoji: "\U0001F4D0" colorFrom: blue colorTo: green sdk: docker app_port: 7860 pinned: false

OpenSCAD MCP Server

An MCP (Model Context Protocol) server that lets AI assistants like Claude create, edit, render, and export 3D models using OpenSCAD.

Python 3.10+ License

Related MCP server: FreeCAD Robust MCP Server

What It Does

Connect this server to Claude Desktop and you can ask Claude to:

  • Design parametric 3D models in OpenSCAD

  • Preview renders as PNG images

  • Export to STL, 3MF, AMF, DXF, SVG, and more

  • Animate models using OpenSCAD's $t variable

  • Check syntax before rendering

  • Browse an OpenSCAD language cheatsheet

Available Tools

Tool

Description

openscad_create

Create a new .scad file

openscad_read

Read an existing .scad file

openscad_edit

Update an existing .scad file

openscad_export

Export to STL, 3MF, OFF, AMF, DXF, SVG, PDF

openscad_preview

Render a PNG preview with camera/color options

openscad_render_animated

Render animation frames using $t

openscad_get_info

Get model render statistics

openscad_list_files

List .scad files in the workspace

openscad_check_syntax

Dry-run syntax validation

openscad_cheatsheet

OpenSCAD language quick reference

openscad_version

Get installed OpenSCAD version

openscad_list_examples

List built-in example files

Quick Start

Prerequisites

Install

git clone https://github.com/sergiudanstan/openscad-mcp.git
cd openscad-mcp
python3 -m venv .venv
source .venv/bin/activate    # Windows: .venv\Scripts\activate
pip install -e .

Configure Claude Desktop

Add to your Claude Desktop config:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "openscad": {
      "command": "/full/path/to/openscad-mcp/.venv/bin/python",
      "args": ["-m", "openscad_mcp"]
    }
  }
}

On Windows, use ".venv\\Scripts\\python.exe" instead.

Restart Claude Desktop — the OpenSCAD tools will appear in the hammer icon.

Examples

The examples/ directory includes sample .scad files:

  • box.scad — Simple parametric box

  • gear.scad — Involute spur gear

  • vase.scad — Curved vase with twist

Project Structure

openscad-mcp/
├── src/openscad_mcp/
│   ├── server.py           # FastMCP server setup
│   ├── client.py           # OpenSCAD CLI wrapper
│   └── tools/
│       ├── design_tools.py   # create / read / edit
│       ├── render_tools.py   # preview / export / animate
│       └── library_tools.py  # list files / cheatsheet / syntax check
├── examples/               # Sample .scad files
├── tests/                  # Test suite
└── pyproject.toml

Security

  • No shell injection — uses subprocess_exec (argument list, not shell string)

  • Path traversal protection — all file operations are sandboxed to the workspace directory

  • No credentials or API keys — runs entirely locally

Workspace

All files are created in ~/openscad-mcp-workspace/ by default.

Running Tests

pip install -e ".[dev]"
pytest tests/

Full Installation Guide

See openscad-mcp-install-guide.pdf for detailed step-by-step instructions for macOS and Windows.

F
license - not found
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sergiudanstan/openscad-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server