Skip to main content
Glama
hedless

Onshape MCP Server

by hedless

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ONSHAPE_ACCESS_KEYYesYour Onshape access key from the developer portal.
ONSHAPE_SECRET_KEYYesYour Onshape secret key from the developer portal.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
create_sketch_rectangleC

Create a rectangular sketch in a Part Studio with optional variable references

create_extrudeC

Create an extrude feature from a sketch

create_thickenC

Create a thicken feature from a sketch

create_variable_studioA

Create a new Variable Studio in a document. Variables defined there are shared across all Part Studios in the document and referenced in expressions as #variable_name.

get_variablesA

Get all variables from a Variable Studio (variables are shared across the document and referenced as #name)

set_variableA

Set or update a variable in a Variable Studio, preserving the other variables. The type (LENGTH/ANGLE/ANY) is inferred from the expression's units

get_featuresC

Get all features from a Part Studio

delete_featureC

Delete a feature from a Part Studio or Assembly

list_documentsB

List documents in your Onshape account with optional filtering and sorting

search_documentsB

Search for documents by name or description

get_documentB

Get detailed information about a specific document

get_document_summaryC

Get a comprehensive summary of a document including all workspaces and elements

find_part_studiosB

Find Part Studio elements in a specific workspace, optionally filtered by name

get_partsB

Get all parts from a Part Studio element

get_elementsB

Get all elements (Part Studios, Assemblies, etc.) in a workspace

get_assemblyB

Get assembly structure including instances and occurrences

create_documentB

Create a new Onshape document

create_part_studioB

Create a new Part Studio in an existing document

create_assemblyB

Create a new Assembly in an existing document

add_assembly_instanceC

Add a part or sub-assembly instance to an assembly

transform_instanceA

Apply a RELATIVE transform to an assembly instance (inches and degrees). Note: fails on fixed/grounded instances — use get_assembly_positions to check the 'fixed' flag first.

create_fastened_mateA

Create a fastened (rigid) mate between two assembly instances. Requires face IDs from Part Studio body details to place mate connectors on specific faces. Optional offsets shift connectors from face centers (in the face's local XY plane + Z along normal).

create_revolute_mateA

Create a revolute (rotation) mate between two assembly instances. The first instance rotates relative to the second around the mate connector Z-axis. Requires face IDs from Part Studio body details. Optional offsets shift connectors from face centers.

create_slider_mateA

Create a slider (linear motion) mate between two assembly instances. The first instance slides relative to the second — positive travel moves the first instance along the face normal direction away from the second. Swap instance order to reverse slide direction. Requires face IDs from Part Studio body details. Optional offsets shift connectors from face centers.

create_cylindrical_mateA

Create a cylindrical (slide + rotate) mate between two assembly instances. The first instance slides and rotates relative to the second along the mate connector Z-axis. Requires face IDs from Part Studio body details. Optional offsets shift connectors from face centers.

create_mate_connectorA

Create an explicit mate connector on a face of an assembly instance. The connector is placed at the face center with its Z-axis along the face normal. Offsets are in the connector's LOCAL coordinate system (X/Y in-plane, Z along normal). Flipping the Z-axis also reverses the other axes via the right-hand rule, which affects how offset translations map to world space.

create_sketch_circleC

Create a circular sketch on a standard plane

create_sketch_lineB

Create a line sketch on a standard plane

create_sketch_arcC

Create an arc sketch on a standard plane

create_filletC

Create a fillet (rounded edge) on one or more edges

create_chamferC

Create a chamfer (beveled edge) on one or more edges

create_revolveB

Create a revolve feature by rotating a sketch around an axis

create_linear_patternC

Create a linear pattern of features

create_circular_patternB

Create a circular pattern of features around an axis

create_booleanB

Perform a boolean operation (union, subtract, intersect) on bodies

eval_featurescriptB

Evaluate a FeatureScript expression in a Part Studio (read-only, for querying geometry)

get_bounding_boxC

Get the tight bounding box of all parts in a Part Studio

export_part_studioB

Export a Part Studio to STL, STEP, or other format

export_assemblyC

Export an Assembly to STL, STEP, or other format

capture_part_studio_screenshotB

Render a shaded-view screenshot of a Part Studio's current geometry (for visual verification)

capture_assembly_screenshotA

Render a shaded-view screenshot of an Assembly's current geometry (for visual verification)

check_assembly_interferenceA

Check for overlapping/interfering parts in an assembly using bounding box detection. Returns which parts overlap and by how much.

get_assembly_positionsB

Get positions, sizes, and world-space bounds of all instances in an assembly (in inches)

set_instance_positionA

Set an instance to an ABSOLUTE position in inches (unlike transform_instance which is relative). Resets rotation to identity. Note: fails on fixed/grounded instances (API returns 400).

align_instance_to_faceA

Position source instance flush against a face of target instance. Faces: front (min Y), back (max Y), left (min X), right (max X), bottom (min Z), top (max Z). Only moves the perpendicular axis; other axes stay unchanged.

get_body_detailsA

Get face-level geometry details for all parts in a Part Studio. Returns face deterministic IDs, surface types (PLANE, CYLINDER, etc.), and for planar faces: normal vectors and origin points. Use face IDs with mate connector tools.

get_assembly_featuresA

Get all features (mates, mate connectors, etc.) from an assembly with their current state (OK, ERROR, SUPPRESSED). Useful for inspecting existing mates and debugging assembly issues.

get_face_coordinate_systemA

Query the true outward-facing coordinate system for a face on an assembly instance. Returns the guaranteed outward normal (Z-axis), tangent axes (X/Y), and origin. More reliable than body details normals. Use this to verify face orientations before creating mates.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.3/5.0

Scored across 48 tools

Disambiguation4/5

Most tools map cleanly to a distinct resource and action, and the create/get/delete/set verbs make selection straightforward. However, list_documents and search_documents overlap in purpose, and get_document vs get_document_summary (plus get_elements) could cause an agent to pick the wrong one.

Naming Consistency5/5

All tool names use snake_case and nearly all follow a verb_noun pattern: create_*, get_*, list_*, set_*, delete_*, export_*. Even with 48 tools, the naming convention is highly predictable; exceptions like add_assembly_instance or eval_featurescript still fit the verb-first style.

Tool Count2/5

48 tools is well beyond the 25+ threshold and feels over-fragmented for an MCP surface. Several sets, such as create_sketch_line/circle/arc/rectangle and the four mate creators, could be consolidated into parameterized operations without losing clarity.

Completeness3/5

The server covers document discovery, part studio feature creation, assembly construction, mates, export, and screenshots—so the core CAD workflow is present. However, there are notable lifecycle gaps: no update or delete for documents, no removal of assembly instances, and no way to edit existing features besides deleting them.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive