← Back to search

CAD MCP Server

mattmohandiss Scanned 30d ago

STEP file inspection for AI. Measure walls, draft angles, clearances. Returns facts, not guesses.

B
82.4 / 100

Versions

0.3.2latest
first seen Jun 30, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 8

inspect_step
annotations: none low

Use this FIRST for a compact model overview: dimensions, bounding box, body/face/edge counts, validity, watertight status. Use include[] for bodies, quality, pmi, inertia, or topology detail.

find_faces
annotations: none low

Find faces by type, area, radius, normal, quality, or body. Returns IDs, surface types, areas, radii, diameters, axes, normals. Use returned IDs in measure_distance, measure_thickness, measure_draft, or measure_geometry.

find_edges
annotations: none low

Find edges by curve type, length, radius, or dihedral angle. Returns IDs, curve types, lengths, radii, diameters. Use returned IDs in measure_distance or measure_geometry.

measure_distance
annotations: none low

Measure distance between entity sets. Pass sources[] and targets[] for set-based measurement (e.g. clearance between holes and walls). Use summary="minimum" for the closest pair only.

measure_thickness
annotations: none low

Measure wall thickness across faces via ray grid sampling. Returns min/max/avg thickness per face. Use direction_mode="normal" (default) or direction_mode="axis".

measure_draft
annotations: none low

Measure draft angles of faces relative to a pull direction. Returns draft_angle_deg, normal, and undercut flag per face. Positive = good for ejection; negative = undercut.

measure_geometry
annotations: none low

Ray tests, point analysis, cross-sections, and edge continuity. measurement_type selects the operation: ray, ray_grid, point_analysis, section, or continuity.

diff_step
annotations: none low

Compare two STEP files. Returns deltas: volume, surface area, dimensions, face/edge/body counts. Comparison minus baseline.

Permissions 4

network medium
Server uses network capabilities via: fetch()
filesystem low
Server uses filesystem capabilities via: fs sync ops, open(), pathlib
shell high
Server uses shell capabilities via: child_process, spawnSync()
env_vars low
Server uses env_vars capabilities via: process.env

Scan Findings 26

low
Tool 'inspect_step' has no annotations annotation_checker · 100%
low
Tool 'find_faces' has no annotations annotation_checker · 100%
low
Tool 'find_edges' has no annotations annotation_checker · 100%
low
Tool 'measure_distance' has no annotations annotation_checker · 100%
low
Tool 'measure_thickness' has no annotations annotation_checker · 100%
low
Tool 'measure_draft' has no annotations annotation_checker · 100%
low
Tool 'measure_geometry' has no annotations annotation_checker · 100%
low
Tool 'diff_step' has no annotations annotation_checker · 100%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
info
package.json metadata manifest_parser · 100%
info
Tool: inspect_step manifest_parser · 85%
info
Tool: find_faces manifest_parser · 85%
info
Tool: find_edges manifest_parser · 85%
info
Tool: measure_distance manifest_parser · 85%
info
Tool: measure_thickness manifest_parser · 85%
info
Tool: measure_draft manifest_parser · 85%
info
Tool: measure_geometry manifest_parser · 85%
info
Tool: diff_step manifest_parser · 85%
info
Required env vars (3) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 70%
low
Permission: filesystem access detected permission_analyzer · 90%
high
Permission: shell access detected permission_analyzer · 95%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 298 components sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%