onshape-mcp
onshape-mcp
MCP-Server, der OnShape-CAD aus Claude Code heraus steuerbar macht: parametrisches Modellieren (Skizzen, Extrusionen, Umdrehungen/Revolves, Verrundungen, Muster), FeatureScript-Abfragen und STL-Export/-Verifikation — über die OnShape-REST-API.
Einmalige Einrichtung
uv sync --no-editable
uv run --no-editable onshape-mcp setup # writes ~/.config/onshape-mcp/.env (chmod 600); no-op if it exists
uv run --no-editable onshape-mcp doctor # auth smoke test against the live API (4 calls)Warum überall
--no-editable? macOS markiert Dateien unter.venvhier asynchron mit demhidden-Flag, und Python ≥3.13.8 überspringt versteckte.pth-Dateien — Editierbare Installationen werden wenige Minuten nach einer Synchronisierung stillschweigend nicht mehr importiert. Nicht-editierbare Installationen nutzen kein.pthund sind immun.
Related MCP server: MCP 3D Printer Server
Zugangsdaten
API-Schlüssel erhalten Sie von https://dev-portal.onshape.com/keys (ein Paar aus Zugangsschlüssel und Secret-Schlüssel). Zugangsdaten liegen AUSSCHLIESSLICH in ~/.config/onshape-mcp/.env, erzeugt durch onshape-mcp setup mit Berechtigungen 600 (nur Eigentümer kann lesen/schreiben) — niemals in Projektordnern, niemals eingecheckt, niemals ausgegeben. Siehe .env.example für die Variablennamen; die Prozess-Umgebung (ONSHAPE_ACCESS_KEY / ONSHAPE_SECRET_KEY) hat Vorrang vor der Datei, falls beide vorhanden sind.
Registrierung pro Projekt
Führen Sie im CAD-Projektordner, in dem Sie den Server verfügbar machen möchten, Folgendes aus (ersetzen Sie /path/to/onshape-mcp durch den Ort, an den Sie dieses Repository geklont haben):
/path/to/onshape-mcp/install.shoder gleichwertig:
claude mcp add --scope project onshape -- \
uv run --quiet --no-editable --project /path/to/onshape-mcp onshape-mcpOder registrieren Sie ihn von Hand in der .mcp.json des Projekts:
{
"mcpServers": {
"onshape": {
"command": "uv",
"args": ["run", "--quiet", "--no-editable", "--project", "/path/to/onshape-mcp", "onshape-mcp"]
}
}
}(--project, nicht --directory: Der Server löst das venv dieses Repos auf, behält aber das Arbeitsverzeichnis des Aufrufers bei. Dateipfad-Tool-Parameter sollen in jedem Fall absolute Pfade sein.) Projektbezogene Server zeigen in der ersten interaktiven Sitzung „Pending approval“ an — bestätigen Sie auf Aufforderung.
Kurzbedienungsübersicht (für das LLM, das die Tools steuert)
Typischer Build-Ablauf
create_document (parentId = folder id) -> documentId, workspaceId, partStudioElementId
import_cad (ABSOLUTE path to .zip/STEP) -> foreign CAD into an existing workspace [async, +quota]
set_variable (optional, e.g. wall_thk) -> use "#wall_thk" in later expressions
create_sketch (plane {"default":"TOP"}) -> featureId [one closed profile per sketch]
extrude (sketchFeatureId, NEW, depth) -> base solid
create_sketch + extrude REMOVE THROUGH_ALL [holes: skip native hole feature]
find_entities (EDGE, radiusBetween) -> transient ids for fillet/chamfer
fillet_or_chamfer (entityIds) -> check featureStatus == OK after EVERY feature
pattern / revolve / boolean_parts as needed
export_stl (ABSOLUTE path) -> compare_stl(candidate, reference) [mesh: 3D-print, verify]
export_step (ABSOLUTE path) -> editable STEP B-rep solid [CAD/prototyping; async, +quota]Eiserne Regeln
Flüchtige IDs werden nach JEDER Änderung ungültig. Rufen Sie
find_entitiesunmittelbar vor dem Tool-Aufruf auf, der diese IDs konsumiert. Feature-IDs (auscreate\_sketch/extrude/...) sind stabil — bevorzugen Sie sie, wo sie akzeptiert werden (Extrude-Bereiche, Muster-Keim, Boolesche Körper).Einheiten: Tool-Parameter und -Ausgaben sind standardmäßig in Zoll (
units-Parameter zum Ändern). Dimensions strings werden durchverbunden:"1.53 inches","25 mm","#wall_thk * 2". Winkel sind Grad. Rohe Ergebnisse voneval_featurescriptsind in METERN/Bogenrad.featureStatus ist die Feedback-Schleife der Neubereitung:
OKin Fortfahren;ERRORbedeutet, das Feature wurde hinzugefügt, ist aber fehlgeschlagen — reparieren Sie die Parameter viaupdate_featureoderlöschen_feature, und versuchen Sie es erneut. Prüfen Sie ihn nach jedem Modellierungsaufruf.extrude REMOVE subtrahiert von ALLEN Festkörpersen im Studio (defaultScope). Halten Sie in einem Studio nur ein Teil pro Studio, sofern Sie dies nicht beabsichtigen.
Ein geschlossenes Profil pro Sketch hält die Extrude-Regionenauswahl eindeutig.
Dateipfade müssen ABSOLUTE sein, das
cwddes Servers ist nicht das des Projekts.Seien Sie spars den: ~2.500 API-Aufrufe/JAHR. Nicht pollen, nicht unnötig neu listen;
analyze_stl/compare_stlkosten keine Aufrufe.
Kontingentwarnung
OnShape EDU/Free-Konten haben ein jährliches API-Kontingent (~2.500 Aufrufe/Benutzer/Jahr); bei Erschöpfung wird ein Fehler 402 (402–??) geliefert, und keine Backoff behebt das. Dieser Server hält einen persistenten Aufrufzähler in ~/.config/onshape-mcp/call_log und fordert den laufenden Gesamtstand auf stderr auf. Überwachen Sie die Nutzung in OnShape unter My Account → Developer.
Entwicklung
uv run --no-editable pytest # offline tests (no API calls, no credentials needed)
uv run --no-editable onshape-mcp doctorLizenz
MIT — siehe LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables programmatic CAD modeling with Onshape's REST API, offering 45 tools for parametric sketches, feature management, assemblies, analysis, variables, and exports.45126
- AlicenseNot gradedqualityDmaintenanceEnables users to connect Claude with various 3D printer management systems, allowing tasks like printer status monitoring, file management, print job control, and STL file manipulation.103GPL 2.0
- AlicenseBqualityCmaintenanceEnables Claude to drive Rhino 8 and Grasshopper for geometry creation, manipulation, and analysis via natural language.1003MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude to create 3D-printable CAD models using build123d, with tools for modeling, modification, analysis, and publishing to platforms like Thingiverse and GitHub.11Creative Commons Attribution Non Commercial No Derivatives 4.0 International
Related MCP Connectors
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
Read, edit, publish, and preview your pepita websites from Claude.
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kyle-nelson-berkeley/onshape-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server