# Show HN: Agentcad – Claude Code's favorite CAD tool

> Source: <https://github.com/jdilla1277/agentcad>
> Published: 2026-06-03 08:29:58+00:00

**CAD tool for AI agents.** Give your coding agent the ability to design 3D models.

Your agent writes CadQuery or build123d Python scripts. agentcad handles execution, STEP export, PNG rendering, mesh export (STL/GLB/OBJ), geometric metrics, validation, diffing, and browser preview. All command output is structured JSON.

agentcad is open source under the Apache License 2.0. It runs locally and requires no signup.

Install agentcad, then paste this into Claude Code, Cursor, or any coding agent:

```
Create a Python 3.12 virtual environment, then:

pip install agentcad
agentcad skill install
agentcad --help

Read the --help output — it's your operational briefing.

Then design me a phone stand: a simple angled cradle that holds a phone
at 60 degrees. About 80mm wide, 50mm deep, with a 5mm lip at the bottom
to keep the phone from sliding. Show me a preview when you're done.
```

— execute a build123d or CadQuery script, produce versioned STEP file + geometric metrics (volume, dimensions, validity, face/edge counts)`agentcad run script.py --output label`

— four-view PNG + turntable GIF for visual verification`agentcad run ... --preview`

— high-quality PNG views`agentcad run ... --render iso,front`

— mesh export for 3D printing or web viewers`agentcad run ... --export stl,glb`

— topology deep-dive (shells, free edges, validity)`agentcad inspect output.step`

— compare versions (metrics, outputs, parameters)`agentcad diff 1 2`

— open STEP/GLB output in a browser preview viewer`agentcad view output.step`

— 16 sections of built-in documentation`agentcad docs [section]`

Scripts need zero imports. By default, build123d primitives, `show_object`

, and agentcad edit helpers are pre-injected:

```
box = Box(10, 20, 5)
show_object(box)
```

CadQuery remains supported via `import cadquery as cq`

, `agentcad init --runtime cadquery`

, or `agentcad run --runtime cadquery`

. Run `agentcad docs runtimes`

for the dispatch rules.

For native tool integration with Claude Code, Cursor, or Windsurf:

```
pip install agentcad[mcp]
```

Add to `.mcp.json`

:

```
{"agentcad": {"command": "python", "args": ["-m", "agentcad.mcp"]}}
```

- Python 3.10–3.12 (OpenCascade bindings do not support 3.13+)

Apache License 2.0. See [LICENSE](/jdilla1277/agentcad/blob/main/LICENSE).

If your agent struggles, run `agentcad feedback "what happened"`

to capture a friction log.
