Skip to main content
Glama
tomyrese

OpenSCAD Design MCP

by tomyrese

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
OPENSCAD_PATHNoPath to the openscad.exe executable.Tự động dò tìm
OPENSCAD_MCP_WORKSPACENoDirectory for storing projects, exports, previews and reports../workspace
OPENSCAD_MCP_LOCK_TIMEOUTNoTimeout waiting for workspace synchronization lock (seconds).10.0
OPENSCAD_MCP_EXPORT_TIMEOUTNoMaximum timeout when exporting STL/3MF files (seconds).180.0
OPENSCAD_MCP_MAX_CODE_BYTESNoMaximum length of SCAD source code (2 MB).2097152
OPENSCAD_MCP_INSPECT_TIMEOUTNoMaximum timeout for mesh geometry analysis (seconds).60.0
OPENSCAD_MCP_PREVIEW_TIMEOUTNoMaximum timeout for each render task (seconds).60.0
OPENSCAD_MCP_VALIDATE_TIMEOUTNoMaximum timeout for validating SCAD code (seconds).30.0

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

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_system_statusA

Detect OpenSCAD, probe real PNG rendering, and report dependency versions and limits.

create_projectA

Create and validate version 1; invalid geometry remains saved and editable.

list_projectsA

List projects with UTC timestamps and latest status.

get_projectA

Read metadata, current code, exports, and the latest finalization report.

read_modelB

Read the checksum-verified current SCAD snapshot.

update_modelA

Atomically update code if expected_version matches, invalidating previous results.

validate_scadA

Compile to a temporary STL and inspect for empty geometry, recording diagnostics.

render_previewC

Render a verified PNG for a named view or a numeric 6/7-value custom camera.

render_preview_setB

Render six default views, or 1–12 requested named views, in parallel preserving order.

export_modelB

Export STL, 3MF, OFF, AMF, DXF or SVG with fixed CLI arguments.

inspect_meshB

Inspect a current verified STL/3MF export or create a temporary STL automatically.

compare_dimensionsB

Compare X/Y/Z in project units; null skips an axis, tolerances use the larger bound.

check_printabilityA

Check mesh and build extents; wall thickness, supports and clearance stay unknown.

finalize_modelB

Validate, render, export and inspect one revision; finalize only if all gates pass.

list_versionsB

List immutable versions, UTC timestamps, summaries and SHA-256 checksums.

restore_versionB

Restore a historical snapshot as a new version, retaining the complete history.

delete_projectA

Move a project to trash only when the confirmation ID matches exactly.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 17 tools

Disambiguation4/5

Most tools target clearly distinct actions and resources, such as project lifecycle, model editing, validation, rendering, and export. The closest overlaps are get_project vs. read_model and validate_scad vs. check_printability, but the descriptions separate metadata/snapshot reading and geometry validation/printability clearly enough for reliable selection.

Naming Consistency4/5

Tool names overwhelmingly follow a verb_noun snake_case pattern, which is easy to predict and scan. The main inconsistency is mixing synonyms like get_project and read_model for similar retrieval operations, and compound names like render_preview_set, but these are minor and do not obscure the pattern.

Tool Count4/5

At 17 tools, the server is slightly above the ideal 3-15 range, but the extra tools support a rich design workflow: versioning, rendering sets, mesh inspection, and finalization. Each tool addresses a distinct stage of the OpenSCAD pipeline, so the count feels justified rather than bloated.

Completeness5/5

The server covers the full OpenSCAD design lifecycle: project CRUD, code snapshot editing with optimistic concurrency, validation, printability checks, rendering, exporting, mesh inspection, finalization, and version restore. There are no obvious dead ends; even finalization is supported by an explicit gate-passing workflow.

Maintenance

ActivityMaintained
ResponsivenessNo issues