Craft real CAD with Claude. MCP server for Onshape.
Project description
shapecraft
Craft real CAD with Claude. Any shape. Any tool.
shapecraft gives Claude (Claude Code, Claude Desktop, Anthropic API) a first-class set of tools to drive professional parametric CAD. v0.1.0-alpha targets Onshape and proves the full pipeline with 8 MCP tools — including the first killer upgrades over existing Onshape MCPs: offset planes, sketch splines, and loft — plus a coincident sketch-constraint builder helper (first of seven constraints landing in T1).
Install
uvx shapecraft # or: pip install shapecraft
Register with Claude Code
claude mcp add shapecraft \
-s user \
-e ONSHAPE_ACCESS_KEY=<your_key> \
-e ONSHAPE_SECRET_KEY=<your_secret> \
-- uvx shapecraft
Get your keys at dev-portal.onshape.com.
v0.1.0-alpha tool list
shapecraft_list_documentsshapecraft_create_documentshapecraft_create_part_studioshapecraft_sketch_rectangleshapecraft_sketch_spline(NEW vs hedless)shapecraft_offset_plane(NEW)shapecraft_extrudewith symmetric + reverse flags (upgraded)shapecraft_loft(NEW)
Plus build_coincident_constraint helper (sketch constraint builder — first of 7 coming in T1).
See the design spec for the full T1 → T3 roadmap.
Development
python3 -m venv venv
./venv/bin/pip install -e ".[dev]"
./venv/bin/pytest tests/unit -v
Integration tests (tests/integration/) hit live Onshape and require ONSHAPE_ACCESS_KEY/ONSHAPE_SECRET_KEY env vars.
Releasing
- Bump version in
pyproject.toml - Update
CHANGELOG.md git tag v0.1.0a1 && git push --tagsrelease.ymlpublishes to PyPI via trusted publishing (configure once at pypi.org)
License
MIT. See LICENSE.
Credits
Inspired by hedless/onshape-mcp (MIT per its README) — shapecraft is an independent reimplementation that covers a broader slice of the Onshape REST and FeatureScript API.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file shapecraft-0.1.0a4.tar.gz.
File metadata
- Download URL: shapecraft-0.1.0a4.tar.gz
- Upload date:
- Size: 40.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6d46264c581676aad323f1cc41ad33f8ef78749576cc3a299513038e3e62332a
|
|
| MD5 |
16c6821f585ba6f75b16adc4eed30976
|
|
| BLAKE2b-256 |
64301b24392b2049f79400a78c754b3cec2181db571ff9761b96b4110607a150
|
Provenance
The following attestation bundles were made for shapecraft-0.1.0a4.tar.gz:
Publisher:
release.yml on NewTurn2017/shapecraft
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
shapecraft-0.1.0a4.tar.gz -
Subject digest:
6d46264c581676aad323f1cc41ad33f8ef78749576cc3a299513038e3e62332a - Sigstore transparency entry: 1338774747
- Sigstore integration time:
-
Permalink:
NewTurn2017/shapecraft@89526f92cc17650621d20cfdda39b7f0a2dbb77b -
Branch / Tag:
refs/tags/v0.1.0a4 - Owner: https://github.com/NewTurn2017
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@89526f92cc17650621d20cfdda39b7f0a2dbb77b -
Trigger Event:
push
-
Statement type:
File details
Details for the file shapecraft-0.1.0a4-py3-none-any.whl.
File metadata
- Download URL: shapecraft-0.1.0a4-py3-none-any.whl
- Upload date:
- Size: 21.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee26e16251f4153b79ea5efff8762bcf0a49e043029298c4122c272c666ca4cc
|
|
| MD5 |
363b27aff3b48f9c7250e0591d7d9491
|
|
| BLAKE2b-256 |
83ba167e9239f19b660c9486f5ef246eac2651a2ccf7d40817e649e5964181de
|
Provenance
The following attestation bundles were made for shapecraft-0.1.0a4-py3-none-any.whl:
Publisher:
release.yml on NewTurn2017/shapecraft
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
shapecraft-0.1.0a4-py3-none-any.whl -
Subject digest:
ee26e16251f4153b79ea5efff8762bcf0a49e043029298c4122c272c666ca4cc - Sigstore transparency entry: 1338774748
- Sigstore integration time:
-
Permalink:
NewTurn2017/shapecraft@89526f92cc17650621d20cfdda39b7f0a2dbb77b -
Branch / Tag:
refs/tags/v0.1.0a4 - Owner: https://github.com/NewTurn2017
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@89526f92cc17650621d20cfdda39b7f0a2dbb77b -
Trigger Event:
push
-
Statement type: