loom
An MCP server that lets an agent (e.g. Claude Code) validate, render, and export OpenSCADmodels it's editing directly as files, so it can visually verify what it built.
Reading, writing, and listing .scad files is left to the agent's normal file tools (Read,Write, Edit, Glob) — this server only wraps the parts Claude Code can't do on its own: invokingthe openscad binary and handling its image/binary output.
Requirements
- Node.js 18+
openscadon your PATH (or setOPENSCAD_BINto its full path)
Install
npm install
Run standalone
npm start
Register with Claude Code
claude mcp add loom -- node /absolute/path/to/loom/src/index.js
Tools
openscad-version— confirm the OpenSCAD CLI is available.validate-model— compile a.scadfile without producing a visual export, to catchsyntax/geometry errors. Fast sanity check before rendering.render-preview— render a.scadfile to PNG and return it inline for visual inspection.Supports image size, camera, projection, color scheme, render mode (full vs. throwntogether),and view overlays (axes/edges/etc). Defaults to saving next to the source file.export-model— export a.scadfile to STL/OFF/3MF/AMF/DXF/SVG/CSG/POV. Defaults to savingnext to the source file.
All three model tools take a path to the .scad file (any location — no fixed workspacedirectory) and an optional output path to override where the rendered/exported file is saved.
Environment variables
OPENSCAD_BIN— path to the openscad executable (default:openscad).