Onshape MCP server
io.github.gpambrozio/onshape·v0.3.0·5 starsDrive Onshape CAD from an assistant: documents, sketches, solid features, assemblies and exports.
5 stars642 downloads/wk
Reviews
Write oneNobody has reviewed Onshape yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Onshape tools (93, 22 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
onshape_add_featurewrite actionPost a hand-written BTM feature payload to a Part Studio. The escape hatch for feature types this server has
onshape_assembly_add_featurewrite actionPost a hand-written assembly feature payload — the escape hatch for mate types with no tool here.
onshape_assembly_groupLock several instances together without individual mates.
onshape_assembly_mass_propertiesMass, volume, centroid and inertia for a whole assembly.
onshape_assembly_mateJoin two mate connectors with a mate: FASTENED, REVOLUTE, SLIDER, CYLINDRICAL, PLANAR, and so on. Each
onshape_assembly_mate_connectorPlace an implicit mate connector on an instance by inference (CENTROID, TOP, ...). Its feature id is what
onshape_assembly_relationCouple mates so one drives the other: GEAR (two revolutes, ratio), RACK_AND_PINION (a revolute and a slider,
onshape_auth_statusReport which Onshape credential is active, where it came from and whether it still works. Secrets are redacted.
onshape_booleanCombine bodies: UNION, SUBTRACTION or INTERSECTION. Subtraction also needs the targets query.
onshape_boolean_unionMerge all modifiable solid bodies into one. The usual cleanup before exporting a single part.
onshape_chamferBevel the selected edges. Selection works exactly as for onshape_fillet.
onshape_circular_patternRepeat geometry around an axis.
onshape_clearanceMinimum distance between two solid bodies in the same Part Studio, each named by part id or by the feature
onshape_create_assemblywrite actionAdd an assembly tab to a workspace.
onshape_create_documentwrite actionCreate a document. Free Onshape accounts may only create public documents, so pass public=true there. The
onshape_create_drawingwrite actionCreate a drawing of a part, Part Studio or assembly. The source must be referenced by version — call
onshape_create_feature_studiowrite actionAdd a Feature Studio tab for custom FeatureScript.
onshape_create_part_studiowrite actionAdd a Part Studio tab to a workspace. The new element id is at result.response.id.
onshape_create_sketchwrite actionAdd a sketch from a list of entities: lines, circles, rectangles and arcs. Use this when the single-shape
onshape_create_versionwrite actionSnapshot the workspace as an immutable version. Do this before restructuring an existing design: it is the
onshape_delete_assembly_featurewrite actionRemove a mate, mate connector, group or relation. Relations on a deleted mate stop solving.
onshape_delete_documentwrite actionMove a document to the trash. This affects the whole document, not a single tab.
onshape_delete_elementwrite actionDelete one element (tab) from a workspace.
onshape_delete_featurewrite actionRemove one feature from the tree. Features added after it may fail to regenerate.
onshape_delete_instancewrite actionRemove one instance from an assembly by its occurrence node id.
onshape_draftTaper faces away from a neutral plane — the usual requirement for moulded or cast parts.
onshape_encode_configurationTurn configuration parameter values into the encoded string other tools accept as `configuration`.
onshape_eval_featurescriptwrite actionRun a FeatureScript function against the Part Studio and return its decoded value. The general-purpose way
onshape_exportExport through Onshape's translation service: STEP, IGES, 3MF, PARASOLID, SOLIDWORKS and others. Slower than
onshape_export_drawingExport a drawing as PDF (or DWG/DXF) through the translation service.
onshape_export_stlExport the Part Studio as STL, for 3D printing. The file is in millimetres by default, which is what
onshape_extrudeExtrude the closed regions of a sketch into a solid. op=NEW makes a body, ADD merges into existing bodies,
onshape_filletRound the selected edges. Name the edges with one of: edges (ids), query (FeatureScript), feature (every edge
onshape_find_circular_edgesCircular edges (full circles and arcs), optionally only those matching a radius, with each one's centre in
onshape_find_edges_by_featureDeterministic ids of the edges a given feature created, evaluated by Onshape.
onshape_find_part_studiosList the Part Studios in a workspace, optionally filtered by a substring of the name.
onshape_get_assemblyThe assembly's instances, occurrences, mate features and mate connectors.
onshape_get_assembly_featuresThe mates, mate connectors, groups and relations defined in an assembly, with their feature ids, payloads
onshape_get_body_detailsBodies, faces and edges with their deterministic ids — the source for explicit edge selection.
onshape_get_bomThe assembly's BOM table.
onshape_get_configurationThe configuration parameters an element exposes, with their ids and allowed values.
onshape_get_documentRead one document's metadata, including its default workspace id.
onshape_get_document_summaryDocument metadata plus every workspace and the elements (tabs) inside each — the fastest way to orient in an
onshape_get_drawing_viewsThe views placed on a drawing sheet.
onshape_get_edgesEvery edge of every solid body, with its deterministic id, owning body, type, and for circles and arcs the
onshape_get_elementsList the elements (tabs) in a workspace: Part Studios, assemblies, drawings, Feature Studios.
onshape_get_feature_specsThe parameter ids, enum names and defaults Onshape expects for every feature type in this Part Studio. Read
onshape_get_feature_studioThe FeatureScript source of a Feature Studio.
onshape_get_feature_studio_specsThe feature specifications a Feature Studio defines, for calling its custom features.
onshape_get_featuresThe full feature tree with each feature's id, type, parameters and regeneration state. Large — prefer
onshape_get_mate_valuesWhere every mate currently sits: each degree of freedom's value, translations in inches and rotations in
onshape_get_metadataRead the properties of an element, or of one part when part is given.
onshape_get_partsThe parts a Part Studio produces, with part ids for export and assembly insertion.
onshape_get_sketch_infoEntities and solved geometry for every sketch in a Part Studio, or for one sketch.
onshape_get_thumbnailSave Onshape's stored thumbnail. Thumbnails are generated asynchronously and lag edits — prefer
onshape_get_variablesThe variable table of a Part Studio: names, expressions and descriptions.
onshape_get_workspacesList a document's workspaces (branches).
onshape_holeExtrude a sketch as a cut (op=REMOVE). Sketch a circle first, then cut it through the body: end_type
onshape_insert_instancewrite actionInsert a part, a whole Part Studio or another assembly into an assembly. Insert from a version when pulling
onshape_linear_patternRepeat geometry along a direction, at a fixed spacing.
onshape_list_documentsList documents visible to the signed-in user, most recently modified first.
onshape_list_versionsList the immutable versions of a document, newest first.
onshape_loginSign in to Onshape by opening a browser. method='api_key' (default) opens a local page that links to the
onshape_login_statusWait for, and report on, the login started by onshape_login. Call this repeatedly while the user is in the
onshape_logoutwrite actionDelete the credential this server stored (keychain entry and config file). Credentials coming from
onshape_mass_propertiesVolume, mass, centroid and inertia for the Part Studio's bodies.
onshape_measureBody count, overall bounding box in inches and total volume. Use this to check a model matches its intended
onshape_mirrorMirror parts, bodies or faces across a plane.
onshape_offset_planeAdd a construction plane offset from a default plane, a face, or another plane.
onshape_requestMake an authenticated request to an arbitrary Onshape REST endpoint, for anything the dedicated tools do not
onshape_revolveRevolve a sketch profile around an axis. With no axis given, the sketch's own construction line is used
onshape_rollbackSet the rollback index so features after it are suppressed. Index 0 rolls back to before the first feature.
onshape_search_documentsFind documents by name. Search before creating, so repeated runs do not make duplicates.
onshape_set_api_keyStore an Onshape access key and secret key directly, without a browser. Use when the user already has a key
onshape_set_feature_studioReplace the FeatureScript source of a Feature Studio. The whole file is overwritten.
onshape_set_mate_valuesDrive top-level mates to new positions — turn a revolute, slide a slider — and read them back; relations
onshape_set_metadatawrite actionWrite properties such as part number, description or material. Only editable properties are accepted; read
onshape_set_variablewrite actionCreate or update a variable. Feature tools can then reference it by name (depth_variable, radius_variable,
onshape_shaded_viewRender the element server-side and return the image. Unlike a thumbnail this is generated on demand, so it
onshape_shellHollow the body out to a wall thickness, removing the selected faces to open it.
onshape_sketch_candy_cane_pathAdd a sketch of a straight stem joined to a hooked arc, approximated by segments — a ready-made path for
onshape_sketch_circleAdd a sketch holding one circle.
onshape_sketch_circle_axisAdd a sketch with a circle profile and a construction line. onshape_revolve spins the profile around that
onshape_sketch_lineAdd a sketch holding one line segment. A line alone encloses no region, so it cannot be extruded.
onshape_sketch_rectangleAdd a sketch holding one closed rectangle, ready to extrude. Corners are opposite, in inches.
onshape_sweepSweep the closed regions of one sketch along the edges of another.
onshape_thickenGive a sketch region a wall thickness instead of a solid depth.
onshape_thumbnail_infoThe thumbnail sizes Onshape has rendered for this element, with their hrefs.
onshape_transform_instanceApply a 4x4 row-major transform (16 numbers, metres) to the given occurrence paths.
onshape_update_assembly_featurewrite actionReplace an assembly feature's payload — a mate's type, connectors or limits, a relation's ratio. Post the
onshape_update_documentwrite actionChange a document's name or description.
onshape_update_featurewrite actionReplace an existing feature's payload, e.g. to change a dimension. Post the whole feature JSON.
onshape_validate_part_studioCount parts and bodies, and fail when the counts do not match the expectations you pass. A cheap regression
Public scan report
scanner v0.1.10 · 2026-11-01 · same rubric, same numbers if you re-run it
- Code scan49 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 1 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Onshape compares
Against every graded Productivity MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 83/100
- higher than 60% of 1,299 Productivity servers
- Tools
- 93
- the typical Productivity server has 7
- Tools that change things
- 24%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 5
- more than 70% of 854 Productivity servers
- Downloads a week
- 642
- more than 86% of 427 Productivity servers with a package
What its tools let an agent do: 71 read · 22 change
Release history: 3 versions in the registry since 2026-09-21, latest 2026-10-28, typically one every 36 days.
Install Onshape in Claude Code, Cursor or VS Code
Runs npx -y @gpambrozio/onshape-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add onshape -- npx -y @gpambrozio/onshape-mcp
What the publisher says
From the Onshape repository's README, as published. We do not edit it. Read it on GitHub
Onshape MCP server
Drive Onshape CAD from an AI assistant. 87 tools for documents, part studios, sketching, solid features, assemblies, drawings, measurement and export — and no setup beyond installing it: the first tool call that needs Onshape opens a browser and asks you to connect.
"Make a 60 × 40 × 10 mm bracket with 4 mm mounting holes and 2 mm fillets, then show me a render"The assistant sketches it, extrudes it, fillets the edges, measures the result, renders it back into the conversation, and exports an STL you can print.
Install
Claude Code
claude mcp add onshape -- npx -y @gpambrozio/onshape-mcpClaude Desktop — download onshape-mcp-.mcpb from the latest release and double-click it. Nothing else to install.
Cursor, VS Code, Windsurf, Zed and other MCP clients — add the server to the client's MCP config:
{
"mcpServers": {
"onshape": {
"command": "npx",
"args": ["-y", "@gpambrozio/onshape-mcp"]
}
}
}The file differs per client: ~/.cursor/mcp.json (Cursor), .vscode/mcp.json (VS Code), ~/.codeium/windsurf/mcpconfig.json (Windsurf), ~/.config/zed/settings.json under contextservers (Zed).
Node 20 or newer is required. npx fetches the package on first run.
Signing in
Nothing to configure. The first tool call that needs Onshape starts a sign-in and asks your client to show you the link; clients that support MCP's URL elicitation render it as a prompt, and the rest get the URL in the reply. The page that opens links straight to the key page for your Onshape stack and takes the pasted pair; tick Read, Write and Delete when you create the key so every tool here works. Keys are verified against Onshape, then stored in your OS keychain.
Your credentials never pass through the assistant, the model or this project's authors — the exchange happens between your browser and a server bound to 127.0.0.1 in this process, which is exactly why MCP has URL elicitation.
Other ways in, if you prefer:
registered at the Onshape developer portal with redirect URL http://localhost:8471/oauth/callback. Tokens refresh automatically.
- onshapelogin** — start the same flow deliberately.
- onshapesetapikey** — paste a key pair you already have.
- OAuth 2.0 — onshape_login with method: "oauth", for an app you
for unattended installs, and ONSHAPEMCPAUTO_LOGIN=0 to stop the server ever opening a browser.
- Environment variables — set ONSHAPEACCESSKEY and ONSHAPESECRETKEY
An existing onshape-cli credential at ~/.onshape/credentials.json is picked up automatically.
onshapeauthstatus shows what is in use (redacted); onshape_logout forgets it.
Tools
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Onshape: common questions
- Is Onshape MCP server safe?
- Mostly: it is graded B (83/100). Read the Onshape safety report
- How do I install Onshape?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Onshape need an API key?
- Yes. The registry entry asks for
ONSHAPE_ACCESS_KEY,ONSHAPE_SECRET_KEY. - Is Onshape maintained?
- The last commit was 3 days ago (2026-11-01). The latest release is v0.3.0.
- What can I use instead of Onshape?
- Servers from other publishers that do the same job: Scumble MCP server, Argent MCP server and gflow-cli MCP server.
- How does Onshape compare with other Productivity MCP servers?
- safety score 83/100 (higher than 60% of 1,299 Productivity servers); tools 93 (the typical Productivity server has 7); tools that change things 24% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Onshape
Same job from other publishers: the closest match first, then the best rated.
ScumbleAgents drive a layered AI inpainting editor: select by text, inpaint, mask, layers, PSD/ORA export.not reviewedGrowingA- ArgentDrive iOS Simulators, Android emulators, TVs and Electron/web apps from your coding agentnot reviewedWidely usedA
- gflow-cliDrive Google Flow from an agent: Veo video and Imagen image generationnot reviewedEstablishedA
- Buoy GgLet AI agents read and drive a running React Native or Flutter app through Buoy's devtools.not reviewedEstablishedA
- Unreal EngineEngineWire: drive the Unreal Editor (UE 5.0-5.8): levels, Blueprints, UI, materials, VFX and more.not reviewedEstablishedB