{"name":"io.github.gpambrozio/onshape","slug":"gpambrozio-onshape","title":null,"description":"Drive Onshape CAD from an assistant: documents, sketches, solid features, assemblies and exports.","url":"https://mcp.market/server/gpambrozio-onshape","rating":null,"grade":"B","score":83,"certified":false,"status":"active","category":"productivity","tags":["productivity"],"presence":{"score":36,"stars":5,"forks":1,"downloads_week":642,"last_push_at":"2026-11-01T02:02:08.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/gpambrozio/onshape-mcp","website":null,"version":"0.3.0","remotes":[],"packages":[{"registryType":"npm","identifier":"@gpambrozio/onshape-mcp","version":"0.3.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Onshape API access key. Optional: the server signs in through the browser when this is not set.","format":"string","isSecret":true,"name":"ONSHAPE_ACCESS_KEY"},{"description":"Onshape API secret key, paired with ONSHAPE_ACCESS_KEY.","format":"string","isSecret":true,"name":"ONSHAPE_SECRET_KEY"},{"description":"Directory for exported STL/STEP files and renders. Defaults to the working directory.","format":"string","name":"ONSHAPE_MCP_OUTPUT_DIR"}]}],"tools":[{"name":"onshape_add_feature","description":"Post a hand-written BTM feature payload to a Part Studio. The escape hatch for feature types this server has","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_assembly_add_feature","description":"Post a hand-written assembly feature payload — the escape hatch for mate types with no tool here.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_assembly_group","description":"Lock several instances together without individual mates.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_assembly_mass_properties","description":"Mass, volume, centroid and inertia for a whole assembly.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_assembly_mate","description":"Join two mate connectors with a mate: FASTENED, REVOLUTE, SLIDER, CYLINDRICAL, PLANAR, and so on. Each","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_assembly_mate_connector","description":"Place an implicit mate connector on an instance by inference (CENTROID, TOP, ...). Its feature id is what","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_assembly_relation","description":"Couple mates so one drives the other: GEAR (two revolutes, ratio), RACK_AND_PINION (a revolute and a slider,","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_auth_status","description":"Report which Onshape credential is active, where it came from and whether it still works. Secrets are redacted.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_boolean","description":"Combine bodies: UNION, SUBTRACTION or INTERSECTION. Subtraction also needs the targets query.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_boolean_union","description":"Merge all modifiable solid bodies into one. The usual cleanup before exporting a single part.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_chamfer","description":"Bevel the selected edges. Selection works exactly as for onshape_fillet.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_circular_pattern","description":"Repeat geometry around an axis.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_clearance","description":"Minimum distance between two solid bodies in the same Part Studio, each named by part id or by the feature","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_create_assembly","description":"Add an assembly tab to a workspace.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_create_document","description":"Create a document. Free Onshape accounts may only create public documents, so pass public=true there. The","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_create_drawing","description":"Create a drawing of a part, Part Studio or assembly. The source must be referenced by version — call","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_create_feature_studio","description":"Add a Feature Studio tab for custom FeatureScript.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_create_part_studio","description":"Add a Part Studio tab to a workspace. The new element id is at result.response.id.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_create_sketch","description":"Add a sketch from a list of entities: lines, circles, rectangles and arcs. Use this when the single-shape","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_create_version","description":"Snapshot the workspace as an immutable version. Do this before restructuring an existing design: it is the","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_delete_assembly_feature","description":"Remove a mate, mate connector, group or relation. Relations on a deleted mate stop solving.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_delete_document","description":"Move a document to the trash. This affects the whole document, not a single tab.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_delete_element","description":"Delete one element (tab) from a workspace.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_delete_feature","description":"Remove one feature from the tree. Features added after it may fail to regenerate.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_delete_instance","description":"Remove one instance from an assembly by its occurrence node id.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_draft","description":"Taper faces away from a neutral plane — the usual requirement for moulded or cast parts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_encode_configuration","description":"Turn configuration parameter values into the encoded string other tools accept as `configuration`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_eval_featurescript","description":"Run a FeatureScript function against the Part Studio and return its decoded value. The general-purpose way","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_export","description":"Export through Onshape's translation service: STEP, IGES, 3MF, PARASOLID, SOLIDWORKS and others. Slower than","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_export_drawing","description":"Export a drawing as PDF (or DWG/DXF) through the translation service.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_export_stl","description":"Export the Part Studio as STL, for 3D printing. The file is in millimetres by default, which is what","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_extrude","description":"Extrude the closed regions of a sketch into a solid. op=NEW makes a body, ADD merges into existing bodies,","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_fillet","description":"Round the selected edges. Name the edges with one of: edges (ids), query (FeatureScript), feature (every edge","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_find_circular_edges","description":"Circular edges (full circles and arcs), optionally only those matching a radius, with each one's centre in","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_find_edges_by_feature","description":"Deterministic ids of the edges a given feature created, evaluated by Onshape.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_find_part_studios","description":"List the Part Studios in a workspace, optionally filtered by a substring of the name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_assembly","description":"The assembly's instances, occurrences, mate features and mate connectors.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_assembly_features","description":"The mates, mate connectors, groups and relations defined in an assembly, with their feature ids, payloads","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_body_details","description":"Bodies, faces and edges with their deterministic ids — the source for explicit edge selection.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_bom","description":"The assembly's BOM table.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_configuration","description":"The configuration parameters an element exposes, with their ids and allowed values.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_document","description":"Read one document's metadata, including its default workspace id.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_document_summary","description":"Document metadata plus every workspace and the elements (tabs) inside each — the fastest way to orient in an","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_drawing_views","description":"The views placed on a drawing sheet.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_edges","description":"Every edge of every solid body, with its deterministic id, owning body, type, and for circles and arcs the","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_elements","description":"List the elements (tabs) in a workspace: Part Studios, assemblies, drawings, Feature Studios.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_feature_specs","description":"The parameter ids, enum names and defaults Onshape expects for every feature type in this Part Studio. Read","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_feature_studio","description":"The FeatureScript source of a Feature Studio.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_feature_studio_specs","description":"The feature specifications a Feature Studio defines, for calling its custom features.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_features","description":"The full feature tree with each feature's id, type, parameters and regeneration state. Large — prefer","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_mate_values","description":"Where every mate currently sits: each degree of freedom's value, translations in inches and rotations in","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_metadata","description":"Read the properties of an element, or of one part when part is given.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_parts","description":"The parts a Part Studio produces, with part ids for export and assembly insertion.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_sketch_info","description":"Entities and solved geometry for every sketch in a Part Studio, or for one sketch.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_thumbnail","description":"Save Onshape's stored thumbnail. Thumbnails are generated asynchronously and lag edits — prefer","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_variables","description":"The variable table of a Part Studio: names, expressions and descriptions.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_get_workspaces","description":"List a document's workspaces (branches).","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_hole","description":"Extrude a sketch as a cut (op=REMOVE). Sketch a circle first, then cut it through the body: end_type","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_insert_instance","description":"Insert a part, a whole Part Studio or another assembly into an assembly. Insert from a version when pulling","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_linear_pattern","description":"Repeat geometry along a direction, at a fixed spacing.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_list_documents","description":"List documents visible to the signed-in user, most recently modified first.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_list_versions","description":"List the immutable versions of a document, newest first.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_login","description":"Sign in to Onshape by opening a browser. method='api_key' (default) opens a local page that links to the","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_login_status","description":"Wait for, and report on, the login started by onshape_login. Call this repeatedly while the user is in the","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_logout","description":"Delete the credential this server stored (keychain entry and config file). Credentials coming from","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_mass_properties","description":"Volume, mass, centroid and inertia for the Part Studio's bodies.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_measure","description":"Body count, overall bounding box in inches and total volume. Use this to check a model matches its intended","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_mirror","description":"Mirror parts, bodies or faces across a plane.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_offset_plane","description":"Add a construction plane offset from a default plane, a face, or another plane.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_request","description":"Make an authenticated request to an arbitrary Onshape REST endpoint, for anything the dedicated tools do not","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_revolve","description":"Revolve a sketch profile around an axis. With no axis given, the sketch's own construction line is used","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_rollback","description":"Set the rollback index so features after it are suppressed. Index 0 rolls back to before the first feature.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_search_documents","description":"Find documents by name. Search before creating, so repeated runs do not make duplicates.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_set_api_key","description":"Store an Onshape access key and secret key directly, without a browser. Use when the user already has a key","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_set_feature_studio","description":"Replace the FeatureScript source of a Feature Studio. The whole file is overwritten.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_set_mate_values","description":"Drive top-level mates to new positions — turn a revolute, slide a slider — and read them back; relations","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_set_metadata","description":"Write properties such as part number, description or material. Only editable properties are accepted; read","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_set_variable","description":"Create or update a variable. Feature tools can then reference it by name (depth_variable, radius_variable,","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_shaded_view","description":"Render the element server-side and return the image. Unlike a thumbnail this is generated on demand, so it","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_shell","description":"Hollow the body out to a wall thickness, removing the selected faces to open it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_sketch_candy_cane_path","description":"Add a sketch of a straight stem joined to a hooked arc, approximated by segments — a ready-made path for","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_sketch_circle","description":"Add a sketch holding one circle.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_sketch_circle_axis","description":"Add a sketch with a circle profile and a construction line. onshape_revolve spins the profile around that","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_sketch_line","description":"Add a sketch holding one line segment. A line alone encloses no region, so it cannot be extruded.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_sketch_rectangle","description":"Add a sketch holding one closed rectangle, ready to extrude. Corners are opposite, in inches.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_sweep","description":"Sweep the closed regions of one sketch along the edges of another.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_thicken","description":"Give a sketch region a wall thickness instead of a solid depth.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_thumbnail_info","description":"The thumbnail sizes Onshape has rendered for this element, with their hrefs.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_transform_instance","description":"Apply a 4x4 row-major transform (16 numbers, metres) to the given occurrence paths.","write_action":false,"price_micros":0,"input_schema":null},{"name":"onshape_update_assembly_feature","description":"Replace an assembly feature's payload — a mate's type, connectors or limits, a relation's ratio. Post the","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_update_document","description":"Change a document's name or description.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_update_feature","description":"Replace an existing feature's payload, e.g. to change a dimension. Post the whole feature JSON.","write_action":true,"price_micros":0,"input_schema":null},{"name":"onshape_validate_part_studio","description":"Count parts and bodies, and fail when the counts do not match the expectations you pass. A cheap regression","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":83,"grade":"B","scanned_at":"2026-11-01T18:08:17.165Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-11-01T18:08:17.274Z","components":{"code":{"score":25,"max":25,"notes":["49 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 1 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@gpambrozio/onshape-mcp","version":"0.3.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-10-28T18:35:21.921Z","repositoryUrl":"git+https://github.com/gpambrozio/onshape-mcp.git","weeklyDownloads":642}],"repo":{"found":true,"owner":"gpambrozio","repo":"onshape-mcp","archived":false,"pushedAt":"2026-11-01T02:02:08Z","stars":5,"forks":1,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/672135?v=4","ownerCreatedAt":"2011-03-16T00:34:32Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/672135?v=4&s=128","source":"registry"},"presence":{"stars":5,"forks":1,"downloadsWeek":642,"license":"MIT","lastPushAt":"2026-11-01T02:02:08.000Z","score":36}}}},"grade_history":[],"reviews":[]}