Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

SolidWorks MCP

PYPI · SOLIDWORKS-MCP-PYTHON

Drive SolidWorks from AI agents: parts, assemblies, drawings and export over the COM API.

62 Trust /100

Last scanned (21 hours ago)

Scores higher than 58% of PyPI servers

Category Developer Tools

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security49
  • Malware scan not yet available for this package.Unverified
  • Known CVEs were checked across the 65 of 66 dependencies we could resolve, so this covers what we could see, not the whole tree.Partial
  • Runs hatchling.build at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
  • Dependency health was assessed across the 65 of 66 dependencies we could resolve, so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to andrewbartels1/SolidworksMCP-python). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 2 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability64
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 10924 tokens (~70/item across 154 items; 154 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage99
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 98% of tool parameters carry a description.Partial
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 4 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "delete_feature" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 154 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Nov 26 −15
    • Malware scan: pass → unverified ▼ security
  • 3 Nov 26 +15
    • Malware scan: unverified → pass ▲ security
  • 2 Nov 26 62

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 4 Nov 2026 · Analysed pypi/solidworks-mcp-python@1.5.0

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem pypi
Reason Verified
Discovered via Registry attestation endpoint
Source repo andrewbartels1/SolidworksMCP-python
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/andrewbartels1/SolidworksMCP-python/.github/workflows/release.yml@refs/tags/v1.5.0
Rekor log index 3637392254
Predicate type PyPI publish attestation https://docs.pypi.org/attestations/publish/v1
Subject digest sha256:066c1c5ab174174c8b9a615276c59168447339ce33192be62f8f32a5760e0fbf

Background: How many MCP packages publish verified provenance →

Install scripts 1 script
Hook Tier Command
build_backend allowlisted hatchling.build

Background: Why install scripts are a supply-chain risk →

Dependencies 65 packages
Packages resolved 65
Stale 7
No linked repository 2
Tree resolution Partial

The dependency tree was only partially resolved, so these counts may be incomplete.

Background: SBOMs and build attestations, explained →

MCP tools · 154 exposed · ~10,924 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
activate_document ~70

Switch which open document is the active one. Matches the argument against open documents by title, full path, or file name (case-insensitive), calls ``ActivateDoc3``, and reads the active document back to confirm the switch took.

NameTypeReqDescription
input_dataobjectyesWhich document to activate.

Structured output declared, but exposes no named fields.

No examples provided.

add_annotation ~56

Add an annotation such as a note, balloon, or surface symbol. Places annotation text in a drawing with optional font size, leader attachment, and title-block style metadata fields.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_arc ~66

Add an arc to the current sketch. Creates a circular arc defined by center point, start point, and end point. Arcs are essential for creating rounded corners, curved transitions, and complex curved profiles in mechanical designs.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_centerline ~66

Add a centerline to the current sketch. Creates a construction/reference line that serves as a centerline for symmetrical features, revolution axes, or construction geometry. Centerlines are non-geometric entities used for reference only.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_chamfer ~83

Add an equal-distance chamfer to selected edges of the current model. Chamfers the specified named edges with the given distance. Edge names use the SolidWorks convention, e.g. 'Edge<1>', or you can leave edge_names empty to chamfer all edges if the adapter supports it.

NameTypeReqDescription
input_dataobjectyesDistance and edge names.

Structured output declared, but exposes no named fields.

No examples provided.

add_circle ~28

Add a circle to the current sketch.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_datum_tag ~82

Add a datum feature symbol (A, B, C, ...) on a drawing edge.

NameTypeReqDescription
input_data––``label``, a point on the edge it marks (``attach_x_mm``/``attach_y_mm``) and where the tag goes (``x_mm``/``y_mm``), all on the sheet in mm.

Structured output declared, but exposes no named fields.

No examples provided.

add_dimension ~57

Add a dimension to the current drawing. Creates dimensional annotations on drawing views including linear, radial, angular, and diameter dimensions. Essential for manufacturing specifications and quality control documentation.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_drawing_view ~60

Add, update, or remove a drawing view in an existing drawing. Supports configuring the target drawing, view type, parent view, scale, and placement coordinates for common drawing view workflows.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_ellipse ~69

Add an ellipse to the current sketch. Creates an elliptical entity with specified center and major/minor axes. Ellipses are useful for creating oval holes, ergonomic profiles, and complex curved features in mechanical and industrial design.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_fillet ~83

Add a fillet (rounded edge) to selected edges of the current model. Rounds the specified named edges with the given radius. Edge names use the SolidWorks convention, e.g. 'Edge<1>', or you can leave edge_names empty to fillet all edges if the adapter supports it.

NameTypeReqDescription
input_dataobjectyesRadius and edge names.

Structured output declared, but exposes no named fields.

No examples provided.

add_gtol ~153

Add a GD&T feature control frame, e.g. position Ø0.2 (M) to A|B|C.

NameTypeReqDescription
input_data––``characteristic`` (position, flatness, perpendicularity, ...), ``tolerance``, ``diameter_zone``, ``material_condition``, up to three ``datums``, and what it is on: a drawing dimension (``dimension_v…

Structured output declared, but exposes no named fields.

No examples provided.

add_line ~59

Add a line to the current sketch. Adds a line segment between two points in the active sketch. Lines are fundamental sketch entities used for creating profiles, construction geometry, and complex shapes.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_mate ~101

Mate two components in the active assembly. Positions components relative to one another — coincident planes to stack or align them, concentric to line up axes, distance to hold a gap. Entities are selected by feature name, so only each component's reference planes and axes can be mated. Mating to a specific face or edge needs entity names this adapter cannot enumerate.

NameTypeReqDescription
input_dataobjectyesComponents, entities and mate type.

Structured output declared, but exposes no named fields.

No examples provided.

add_note ~58

Add a note or annotation to the current drawing. Creates text annotations, callouts, and notes on drawings for specifications, instructions, and additional manufacturing information. Essential for comprehensive technical documentation.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_polygon ~71

Add a regular polygon to the current sketch. Creates a regular polygon with specified number of sides, center point, and circumscribed radius. Polygons are useful for creating hexagonal nuts, octagonal features, and other multi-sided geometric shapes.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_rectangle ~63

Add a rectangle to the current sketch. Creates a rectangular profile defined by two opposite corner points, automatically generating four connected line segments forming a closed rectangle suitable for extrusion or other 3D operations.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_sketch_constraint ~68

Add a geometric constraint/relation between sketch entities. Creates geometric relationships between sketch entities such as parallel, perpendicular, tangent, coincident, etc. Essential for creating fully defined, parametric sketches that maintain design intent.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_sketch_dimension ~121

Add a dimension to sketch entities. Creates dimensional constraints that control the size of sketch entities. Dimensions are essential for creating precise, parametric designs that can be easily modified and maintain manufacturing tolerances. In live SolidWorks automation, sketch dimensions can otherwise trigger the interactive ``Modify`` approval dialog. The adapter suppresses the relevant sketch-input preferences for the automation session and uses the dedicated radial/diameter APIs for circles and arcs so this tool remains non-interactive.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

add_spline ~69

Add a spline curve to the current sketch. Creates a smooth, free-form spline curve that passes through or near the specified control points. Splines are ideal for creating organic shapes, complex profiles, and smooth transitions in industrial design.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

analyze_drawing_annotations ~29

Analyze drawing annotations and notes quality.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

analyze_drawing_comprehensive ~28

Handle analyze drawing comprehensive.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

analyze_drawing_dimensions ~53

Analyze dimensions in a SolidWorks drawing for consistency and completeness. This tool performs detailed dimensional analysis including precision, tolerances, and completeness checking.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

analyze_drawing_views ~29

Analyze drawing views arrangement and quality.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

analyze_geometry ~44

Handle analyze geometry. This tool provides various geometry analysis capabilities like curvature analysis, draft analysis, thickness analysis, etc.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

analyze_macro ~49

Analyze a macro for complexity, dependencies, and optimization opportunities. This tool provides insights into macro structure and performance to help with optimization and maintenance.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

apply_template ~50

Apply a template to an existing SolidWorks model. This tool applies saved template settings including properties, dimensions, and formatting to the target model.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

arrange_dimensions ~164

Move drawing dimensions so nothing overlaps, then check the real result. Dimensions go outside their views in rows (first 8 mm from the outline, rows 7 mm apart, columns 9 mm apart), shortest span nearest the view, each on the side its extension lines start from. One with no room on that side stays put and is listed in ``unplaced``. After moving them it re-reads every dimension's real text box and lines and checks the whole sheet: no text on text, no line through text, no line across another view or across its own view, nothing on a view or outside the sheet.

NameTypeReqDescription
input_data––``view_name`` to move only one view's dimensions; omit for every view.

Structured output declared, but exposes no named fields.

No examples provided.

auto_center_marks ~103

Auto-insert centre marks on circular features in a drawing view. Runs SolidWorks' automatic centre-mark insertion for the named view. The API does not report how many marks it added, so the response gives the view's centre-mark count before and after and the delta. A run that added nothing is still a success — the view may have no un-marked holes.

NameTypeReqDescription
input_dataobjectyesThe view and which feature types to mark.

Structured output declared, but exposes no named fields.

No examples provided.

auto_dimension_view ~65

Automatically dimension a drawing view. Analyzes drawing view geometry and automatically adds common dimensions including overall sizes, hole diameters, radii, and critical features. Accelerates drawing completion and ensures comprehensive dimensioning coverage.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

automation_start_macro_recording ~45

Start recording a macro in SolidWorks. Begins macro recording to capture user actions and generate reusable automation scripts.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

automation_stop_macro_recording ~47

Stop recording the current macro. This tool stops the active macro recording and saves the recorded actions as a VBA macro.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

batch_apply_template ~48

Apply template to multiple models in batch. This tool processes multiple SolidWorks files and applies the same template configuration to all matching files.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

batch_execute_macros ~44

Handle batch execute macros. This tool allows running multiple macros in sequence or parallel for complex automated workflows.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

batch_export ~64

Batch export multiple SolidWorks files to a target format. Processes entire directories of SolidWorks files and converts them to specified target formats. Essential for project migrations, supplier deliverables, and large-scale format conversions.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

batch_file_operations ~59

Run a file operation across multiple files as a batch workflow. Intended for repetitive file management tasks such as copying, moving, renaming, or deleting groups of SolidWorks documents.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

batch_process_files ~49

Handle batch process files. This tool processes multiple files in a directory, performing operations like rebuild, save as, export, or property updates.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

calculate_mass_properties ~73

Get mass properties of the current SolidWorks model. Calculates and returns comprehensive mass properties for the active model including volume, surface area, mass, center of mass, and moments of inertia. Essential for engineering analysis, weight calculations, and structural design.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

check_drawing_compliance ~30

Check drawing compliance with company standards.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

check_drawing_standards ~68

Check the current drawing against drafting standards. Validates drawing compliance with industry drafting standards including ANSI Y14.5, ISO 128, and DIN standards. Identifies non-compliance issues and provides recommendations for improvement.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

check_interference ~64

Check for interference between components in an assembly. Analyzes specified components for geometric interference (overlapping volumes) and provides detailed interference detection results. Critical for assembly validation and identifying design conflicts before manufacturing.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

check_sketch_fully_defined ~29

Check whether a sketch is fully defined.

NameTypeReqDescription
input_data––Optional sketch selector.

Structured output declared, but exposes no named fields.

No examples provided.

classify_feature_tree ~82

Classify the active model into a feature family from model-info and tree data. This is a read-before-write helper for delegation. It summarizes whether the current document looks like a direct-MCP solid, sheet metal workflow, advanced VBA-backed part, assembly, drawing, or an insufficient-evidence case.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

close_model ~59

Close the current SolidWorks model. Closes the currently active SolidWorks document with an option to save changes before closing. This is essential for proper model lifecycle management and preventing data loss.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

compare_drawing_versions ~29

Compare different versions of drawing files.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

compare_templates ~45

Compare two templates and generate difference report. This tool analyzes differences between templates to help understand variations in formatting and properties.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

convert_file_format ~58

Convert a SolidWorks file from one format to another. Supports exporting source files to target formats such as STEP, IGES, STL, PDF, or other adapter-supported conversion outputs.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

create_assembly ~80

Create a new SolidWorks assembly document. Creates a new SolidWorks assembly document from ``template`` (a .asmdot path) or, without one, the default assembly template. The new assembly becomes the active document and is ready for component insertion, mating, and assembly-level operations.

NameTypeReqDescription
input_dataobjectyesThe input data value.

Structured output declared, but exposes no named fields.

No examples provided.

create_axis ~69

Create a reference axis along a principal direction. Builds an axis from the intersection of two built-in planes: x from Top + Front, y from Front + Right, z from Top + Right.

NameTypeReqDescription
input_dataobjectyesThe principal direction ('x', 'y' or 'z').

Structured output declared, but exposes no named fields.

No examples provided.

create_cut_extrude ~353

Cut material from a sketch profile in the active model. Creates a Cut-Extrude feature (Insert > Cut > Extrude). Use this after exit_sketch when you want to remove material — e.g. to create windows, holes, slots, or any through/blind cut in an existing solid body. Sketch selection is never a silent guess: pass ``sketch_name`` explicitly whenever you're not certain which sketch this should act on (e.g. more than one sketch could be unconsumed, or other tool calls ran in between). If omitted, only the sketch most recently created/exited in this same session is used, and only when it still exists in the model — there is no further fallback. Any ambiguity or mismatch is reported back as an error naming the sketch(es) actually found in the model, rather than cutting the wrong profile. Direction: a one-way cut (Blind or ThroughAll) goes along the sketch plane's normal. From a sketch on a face, or on a plane that touches the body only on one side (e.g. a Top Plane sketch under a block extruded up from it), that can point away from the material. The tool then cuts the other way and returns ``cut_extrude.direction_flipped: true``, so you don't need to guess ``reverse_direction``. For a sketch on a plane through the middle of the body, use ``ThroughAllBoth`` (or ``ThroughAll`` with ``both_directions``) to cut both sides.

NameTypeReqDescription
input_dataobjectyesDepth, direction, draft, and optional sketch_name parameters.

Structured output declared, but exposes no named fields.

No examples provided.

Install

How do I install the SolidWorks MCP server?

SolidWorks MCP runs locally as a PyPI package, launched with uvx solidworks-mcp-python. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

pypi · solidworks-mcp-python

# add to Claude Code
claude mcp add andrewbartels1-solidworks-mcp-python -- uvx solidworks-mcp-python
Common questions

What is the SolidWorks MCP server?

SolidWorks MCP is listed in the public MCP registry as io.github.andrewbartels1/solidworks-mcp-python. Drive SolidWorks from AI agents: parts, assemblies, drawings and export over the COM API. This page covers its PyPI package (solidworks-mcp-python).

Is the SolidWorks MCP server safe to use?

SolidWorks MCP scores 62 out of 100 on VerifyMCP. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the SolidWorks MCP server expose?

SolidWorks MCP exposes 154 tools: open_model, create_part, create_assembly, create_drawing, close_model, and 149 more. Their descriptions and schemas cost roughly 10,924 tokens of context every time the server is loaded.

Is the SolidWorks MCP server still maintained?

SolidWorks MCP is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the SolidWorks MCP server under?

SolidWorks MCP declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.