cadloop-openscad
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SLICER_BIN | No | Path to slicer binary (OrcaSlicer, Bambu Studio, ElegooSlicer, or Creality Print). Auto-detected if not set. | auto-detected |
| OPENSCAD_BIN | No | Path to OpenSCAD binary. Auto-detected if not set. | auto-detected |
| SLICER_TIMEOUT | No | Timeout in seconds for slicer operations. | 600 |
| OPENSCAD_TIMEOUT | No | Timeout in seconds for OpenSCAD operations. | 300 |
| SLICER_WORKSPACE | No | Workspace directory for slicer server. | ~/cad |
| OPENSCAD_WORKSPACE | No | Workspace directory for OpenSCAD server. | ~/cad |
| SLICER_PROFILE_DIRS | No | Extra profile roots for slicer. | auto-detected |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| openscad_infoA | Report the OpenSCAD binary, its version, and the workspace directory. |
| list_filesC | List files in the workspace matching a glob pattern. |
| read_fileC | Read a text file from the workspace. |
| write_fileB | Write a text file into the workspace, creating parent directories. |
| checkB | Compile a script without evaluating geometry. Fast syntax and reference check. Returns errors, warnings and any ECHO output. |
| echoA | Evaluate a script and return only its ECHO output. Use this to read computed values out of a model without paying for a mesh render. |
| renderA | Render a script to a file in the workspace. The format is taken from the output extension: stl, off, amf, 3mf, dxf, svg, csg, png. Returns the manifold report OpenSCAD prints (simple, volumes, facets), plus bounding box and volume when the output is an STL. A png output keeps the picture instead of handing it back, which is what preview does. Use render when the image is the artefact — a before and after pair, a figure for a page — and preview when you only want to look. The view options below apply to png alone and mean what they mean in preview: camera is OpenSCAD's own string, seven numbers for gimbal style (translate x,y,z, rotate x,y,z, distance) or six for eye then centre. Leave camera unset and viewall frames the model. projection is "o" for orthogonal or "p" for perspective. full_render evaluates the real geometry rather than the preview approximation: slower, but it shows what would export, which matters for anything cut or differenced. |
| measureB | Render to a throwaway STL and report bounding box, size, volume and triangle count. Use it to check a part fits the print bed. |
| previewB | Render a PNG of the model and return it as an image. camera is OpenSCAD's own string. Seven numbers are gimbal style, translate x,y,z then rotate x,y,z then distance, for example "0,0,0,55,0,25,400". Six numbers are eye x,y,z then centre x,y,z. Leave it unset and viewall frames the object automatically. projection is "o" for orthogonal or "p" for perspective. Set full_render to evaluate the real geometry rather than the preview approximation. It is slower but shows what will export. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Most tools are clearly distinct: file ops (list/read/write), diagnostics (check, echo), and output tools (render, measure, preview). The main overlap is render vs measure vs preview, since render to STL also reports bounding box and volume and render to PNG overlaps with preview, but the descriptions explicitly delineate when to use each.
File operations follow a clean verb_noun pattern (list_files, read_file, write_file), but the evaluation tools are bare verbs (check, echo, render, measure, preview) and openscad_info is a noun-style name. Two internally consistent clusters, but the set mixes conventions overall.
Nine tools is well-scoped for an OpenSCAD workspace server, with each tool covering a distinct workflow stage (environment info, file I/O, syntax check, value extraction, and several render/measure variants). No tool feels redundant or padded.
The surface covers the full edit-check-render-inspect lifecycle for CAD scripts. Minor gaps exist, such as no delete/rename/move file operation and no explicit export-to-multiple-formats batch, but agents can work around these via write_file and render.