root-ext-cad
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 |
|---|---|
| model_inspectA | Summarize a CAD model: bounding box, volume, surface area, topology counts, per-solid volumes and centers of mass — plus mass when you pass a density (g/cm³). Reads STEP/STP, BREP, IGES/IGS (B-rep, kernel-exact) and STL/3MF (mesh — triangle sums; volume is only reported for watertight meshes, and the summary names which world it measured). Reads the file on this machine; nothing leaves it. |
| model_validateA | DFM-lite lint for a B-rep model (STEP/BREP/IGES): kernel validity per solid, non-manifold topology, open (no-solid) surface models, tiny edges/faces (sliver artifacts), and pairwise interference + clearance between bodies against clearance_mm. Every finding carries its evidence and threshold so you can disagree with the rule. Wall thickness, draft, threads, and GD&T are NOT checked — absent, not hidden. |
| model_buildA | EXECUTES a parametric CAD script (build123d or CadQuery Python)
in this pack's own venv as a resource-capped subprocess (CPU
rlimit + wall timeout, default 75 s), then exports the script's
module-level |
| model_meshA | Tessellate a B-rep model (STEP/BREP/IGES) into a mesh file — STL, GLB, GLTF, or 3MF by out_path suffix — at explicit linear (mm) and angular (degrees) tolerances, echoed in the report. Refuses an out_path that collides with the input (charter). Writes only the one output file. |
| model_diffA | Geometric diff of two B-rep revisions (STEP/BREP/IGES): volume, area, and bbox deltas, plus per-body matching by shape signature — unchanged, moved (with the displacement), added, removed. This is geometry, not a feature tree: a reshaped body reports as removed+added, and the report says so. |
| drawing_projectA | Project a B-rep model (STEP/BREP/IGES) to a 2D SVG or DXF (by out_path suffix) from a named view — front, back, top, bottom, left, right, iso. Visible edges on one layer, hidden edges dashed on another. A silhouette for hand-off, NOT a dimensioned drawing. Refuses an out_path that collides with the input (charter). |
| text_to_cadA | Generate a STARTER CAD model from a text prompt via Zoo's ML-ephant API (zoo.dev) — files land in out_dir like any derived artifact, with the editable KCL source beside them when returned. Needs ZOO_API_KEY in this server's environment; answers with a named refusal when it is not set. Verify dimensions before use. Reaches the network. |
| calc_fitsA | ISO 286 limits and fits, hole-basis subset: hole H5–H11 against shaft letters d e f g h js k m n p s, sizes to 500 mm. Returns deviations (µm), min/max clearance, and the fit kind (clearance/transition/interference). Computed from the standard's deviation formulas — verify critical fits against the ISO 286-2 tables. |
| calc_fastenerA | Metric coarse-thread fastener numbers for M1.6–M30: pitch, tensile stress area, tap drill, ISO 273 clearance holes (close/medium/coarse), proof stress for the property class, 75% preload, and a T = K·F·d torque first-cut (K default 0.2, dry) — lubrication changes K dramatically. |
| calc_beamA | Beam bending first-cut (Euler–Bernoulli): case one of cantilever_point, cantilever_udl, simply_point_center, simply_udl; section rect {b_mm,h_mm}, round {d_mm}, or tube {d_outer_mm,d_inner_mm}. Point loads in N, distributed in N/mm, E in GPa (default 200, steel). Returns I, max deflection, moment, bending stress, and a safety factor when you pass yield_mpa. No shear deflection, buckling, or stress concentration. |
| calc_mass_rollupA | Total mass and 3D center of gravity from a component list — each item {name, mass_g, x_mm, y_mm, z_mm} measured from one datum. Pass envelope {x_min_mm, x_max_mm, y_min_mm, y_max_mm, z_min_mm, z_max_mm} (any subset of axes) to get a CG-within-envelope verdict. |
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 11 tools
Each tool has a clearly distinct purpose: model_inspect summarizes, model_validate checks manufacturability, model_build executes scripts, model_mesh tessellates, model_diff compares, drawing_project projects to 2D, text_to_cad generates from text, and the calc_* tools cover specific engineering calculations with no overlap.
Tool names consistently use a verb_noun pattern with model_ and calc_ prefixes. Minor deviations: drawing_project uses noun_verb, and text_to_cad uses a different form, but they are still clear and fit the overall scheme.
11 tools is well-scoped for a CAD server covering both model operations and engineering calculations. Each tool serves a specific need without being overwhelming or too sparse.
Covers core CAD workflows: inspect, validate, build, mesh, diff, project, and text generation. Calculation tools cover common mechanical engineering needs. Minor gaps like direct export to common formats or more advanced analysis, but overall complete for its stated purpose.