solidworks-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SW_BRIDGE_URL | No | URL of the remote SolidWorks bridge for macOS / VM setups, for example http://<vm-ip>:8765. | |
| SW_MCP_JOURNAL | No | Set to 0 to disable the operation journal. | |
| SW_MCP_TIMEOUT | No | Default per-call timeout in seconds. Defaults to 180. | |
| SW_BRIDGE_TOKEN | No | Authentication token for the remote SolidWorks bridge. | |
| SW_MCP_OUTPUT_DIR | No | Output folder. Defaults to ~/Documents/SolidWorksMCP. | |
| SW_MCP_ALLOWED_DIRS | No | Extra folders the server may write to. Semicolon-separated on Windows. | |
| SW_MCP_PART_TEMPLATE | No | Forces a part document template. | |
| SW_MCP_DRAWING_TEMPLATE | No | Forces a drawing document template. | |
| SW_MCP_ASSEMBLY_TEMPLATE | No | Forces an assembly document template. | |
| SW_MCP_WELDMENT_PROFILES | No | Weldment profile library folder. Defaults to the SolidWorks one. |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| sw_insert_componentB | Insert a saved part or sub-assembly into the active assembly. |
| sw_add_mateB | Mate components: standard, advanced (symmetric, width, limit distance/angle) and mechanical (gear, rack-pinion, screw, hinge, slot, lock). |
| sw_list_componentsC | Top-level components with position and state. |
| sw_insert_fastenerA | Insert a standard metric fastener (generated once, reused) into the assembly and mate it to a hole. |
| sw_interferenceA | Find overlapping components (and optionally touching ones) with the overlap volume. |
| sw_explodeC | Automatic exploded view of the assembly. |
| sw_collapseC | Collapse the exploded view. |
| sw_bill_of_materialsB | Parts list: item, part, configuration, quantity, material, mass (optionally a CSV file). |
| sw_assembly_massB | Total mass and centre of mass of the assembly (balance a drone on its CG). |
| sw_list_dimensionsA | Driving dimensions with full names ('D1@Boss-Extrude1', 'span_d@Sketch1') and values in mm / degrees. |
| sw_set_dimensionC | Change a dimension and rebuild. |
| sw_rename_dimensionA | Give a dimension a meaningful name ('D1@Sketch1' -> 'chord@Sketch1') for equations. |
| sw_list_equationsC | Global variables and equations with their current values. |
| sw_set_variablesA | Create or update global variables (the parameters that drive the design). |
| sw_add_equationC | Drive a dimension with an expression of global variables / other dimensions. |
| sw_delete_equationC | Delete an equation by its index from sw_list_equations. |
| sw_list_configurationsB | Configurations of the document and which one is active. |
| sw_add_configurationC | Add a configuration (variant): e.g. 'M4' with hole diameter 4.5, or '7 inch' with a longer arm. |
| sw_activate_configurationC | Switch to another configuration. |
| sw_delete_configurationC | Delete a (non-active) configuration. |
| sw_list_featuresA | The feature tree (names, types, suppression) and optionally each feature's dimensions in mm / degrees. |
| sw_rebuildC | Rebuild and report features with errors or warnings. |
| sw_mass_propertiesB | Mass, volume, area, centre of mass, principal moments and bounding box (mm / kg). |
| sw_list_entitiesC | Faces (plane/cylinder/...) and edges (line/circle) with geometry and a pick_point for other tools. |
| sw_screenshotB | Images of the model from standard views (compare with a drawing, check the result). |
| sw_measureA | Measure like the Measure tool: distance / angle between two entities, or length / area / diameter of one. |
| sw_check_requirementsB | Check the model against requirements; returns pass/fail per check and the measured values. |
| sw_print_checkA | 3D-print check: overhang area (needs supports), bed contact, best of six orientations, build-volume fit. |
| sw_static_studyA | Linear static stress analysis (SolidWorks Simulation): max von Mises stress, displacement, safety factor. Set the material first (sw_set_material). Loads use faces picked by model points. |
| sw_generate_wingA | A complete wing in one call: blended airfoil sections with taper, sweep, dihedral and twist, lofted and mirrored. Returns area, aspect ratio, MAC and neutral point. Span runs along +X, flight direction +Z. |
| sw_generate_propellerB | A propeller: twisted blades with pitch angle atan(P / 2 pi r), hub, shaft bore. Axis Y, thrust +Y. |
| sw_generate_fuselageC | A fuselage / pod / nacelle lofted through ellipse, circle or rounded-rectangle frames (0 size = point). |
| sw_generate_fastenerB | A metric fastener part (ISO 4762 / 4017 / 4032 / 7089) with cosmetic thread, in a new document. |
| sw_generate_partC | A typical part in a new document from a few parameters (all have sensible defaults). |
| sw_statusA | SolidWorks installed/running, release, open documents, and a warning if the geometry kernel looks broken. Call this first. |
| sw_healthA | Check that SolidWorks answers and its geometry kernel works (zero-volume bodies mean: restart it). |
| sw_connectA | Connect to SolidWorks, starting it if needed - only with the user's permission. |
| sw_new_documentB | Create a new, empty part, assembly or drawing from the default template and make it active. |
| sw_openB | Open an existing SolidWorks document and make it active. |
| sw_closeA | Close a document. Refuses if it has unsaved changes unless discard_changes=true (the user is asked). |
| sw_create_sketchB | Create a 2D sketch: lines, polylines (rounded corners), rectangles, circles, ellipses, arcs, polygons, slots, splines, points, centerlines and airfoils (NACA 4/5-digit or .dat). Entities may carry a |
| sw_create_3d_sketchA | 3D sketch of lines, polylines (with bend_radius), splines and 3-point arcs in model mm: sweep paths for tubes, cable routes, frame layouts for sw_structural_member. |
| sw_sketch_infoB | Segments, closed contours, dimensions and definition state of a sketch - check a profile before using it. |
| sw_extrudeA | Extrude a sketch into a solid (boss). With thin_thickness, open sketches become walls. |
| sw_cut_extrudeB | Remove material by extruding a sketch (pockets, slots, plain holes). |
| sw_revolveB | Revolve a profile around its centerline (shafts, discs, bottles, grooves). |
| sw_create_planeB | Reference plane: parallel at an offset, or rotated about an axis lying in the base plane. |
| sw_create_axisA | Reference axis along X/Y/Z or through a cylindrical face, for patterns, angled planes and mates. |
| sw_filletC | Round edges with a constant-radius fillet. |
| sw_chamferB | Bevel edges with an angle-distance chamfer (prints better than fillets on downward edges). |
| sw_shellB | Hollow out the part, leaving walls of the given thickness. |
| sw_mirrorA | Mirror features (or bodies) about a plane: build one half of a symmetric part, mirror the rest. |
| sw_ribB | Stiffening rib from an open sketch line inside a pocket or along a wall. |
| sw_draftB | Add draft to faces (moulding, casting, easier 3D-print removal). |
| sw_loftB | Loft through profiles on different planes: wings, fuselages, blades, duct transitions. |
| sw_sweepB | Sweep along a path: tubes and pipes, frame rails, wiring, handles, springs. |
| sw_helixC | Helix curve (path for springs, coils, augers, threads). |
| sw_springB | Coil spring in one call (circle -> helix -> swept wire). |
| sw_planar_surfaceC | Flat surface bounded by a closed sketch (thicken it into a plate). |
| sw_thickenA | Turn a surface into a solid of given thickness (thin skins, shells from surface lofts). |
| sw_combineB | Boolean between bodies of a multibody part: union, subtract, intersect. |
| sw_move_copy_bodyC | Move/rotate a body, or copy it. |
| sw_scaleC | Scale all solid bodies (e.g. shrinkage compensation). |
| sw_delete_bodyA | Remove a body with a Delete/Keep Body feature (reversible: delete that feature). |
| sw_list_bodiesC | Solid and surface bodies with bounding boxes and a pick point for each. |
| sw_linear_patternC | Repeat features in a row or grid (ribs, holes, slots, frame members). |
| sw_circular_patternB | Repeat features around an axis (bolt circles, blades, arms, spokes). |
| sw_sketch_patternA | Copy features to every point of a sketch (irregular hole layouts). |
| sw_curve_patternB | Copies along a curve (rivets along an edge, vents along an arc). |
| sw_holeB | Plain holes of any diameter (use sw_hole_wizard for standard fastener holes and threads). |
| sw_hole_wizardC | Standard Hole Wizard holes: threaded (tapped), counterbore / countersink for screws, clearance holes. |
| sw_threadB | A real modelled helical thread (printable bolts, nuts, caps) using the SolidWorks Thread feature. |
| sw_cosmetic_threadA | Cosmetic thread (lightweight, shows in drawings) on a shaft or hole edge. |
| sw_set_appearanceB | Colour / transparency for the whole document, features, components or faces. |
| sw_clear_appearanceA | Remove the document-level appearance so the material colour shows again. |
| sw_set_materialB | Assign a material (affects mass, Simulation). |
| sw_set_suppressionC | Suppress or unsuppress a feature. |
| sw_delete_featureA | Delete a feature this server created in this session (others can only be suppressed). |
| sw_undoC | Undo the last operation(s). |
| sw_saveB | Save as a native SolidWorks file (.sldprt / .sldasm / .slddrw). |
| sw_exportC | Export a copy (STEP, IGES, STL, Parasolid, 3MF, PDF, DXF/DWG, PNG/JPG). |
| sw_batch_exportA | Export every matching file in a folder (opened read-only, never saved) to /batch/. |
| sw_journalB | The journal of model-changing operations in this session (file path and the last entries). |
| sw_replay_journalC | Rebuild a model by replaying a journal of operations. |
| sw_create_drawingA | A drawing of a saved part/assembly: three standard views, isometric, dimensions, BOM. Fill the title block with sw_set_properties on the model first; export with sw_export (pdf/dwg/dxf). |
| sw_add_drawing_viewC | Add one more model view to the active drawing. |
| sw_set_propertiesB | Set custom properties (they fill the drawing title block and the BOM). |
| sw_get_propertiesC | Read custom properties. |
| sw_sheet_metal_baseA | Sheet-metal part from a sketch: closed profile = flat plate, open profile (L/U/Z/hat) = bent part with bends at every corner. Then sw_export_flat_pattern gives the DXF for laser cutting. |
| sw_flat_patternB | Show the sheet-metal part flat (true) or folded (false). |
| sw_export_flat_patternC | Flat pattern as DXF/DWG for laser / waterjet cutting. |
| sw_weldment_profilesC | Weldment profile library: standards, profile types and sizes. |
| sw_structural_memberB | Frame members from standard profiles along sketch segments, mitred at the corners (weldment). |
| sw_cut_listC | Weldment cut list: member groups with quantities, lengths and profiles. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| model_from_drawing | Step-by-step playbook for turning an attached engineering drawing into a SolidWorks part. |
| drone_part | Playbook for drone/UAV parts: arms, plates, motor mounts, canopies, props. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 94 tools
Most tools have clearly distinct purposes, and descriptions often cross-reference related tools, such as sw_hole vs sw_hole_wizard or sw_thread vs sw_cosmetic_thread. A few convenience tools overlap with lower-level workflows, especially sw_generate_part vs the specific generators and sw_spring vs sw_helix plus sw_sweep, but these are largely resolvable from the descriptions.
All tools share the sw_ prefix and snake_case, with predictable verb_noun naming such as sw_create_sketch, sw_list_features, sw_set_dimension, and sw_delete_body. Noun-phrase tools like sw_bill_of_materials and sw_cut_list are still consistent with the server's naming style.
94 tools is far beyond a manageable surface for an agent, even for a broad CAD domain. The set is effectively a large feature catalogue, and many tools could be grouped or made discoverable through higher-level operations.
The surface covers sketches, features, assemblies, drawings, sheet metal, weldments, configurations, equations, simulation, and export with strong lifecycle coverage. Gaps remain around assembly component manipulation and mate management, such as listing/editing/deleting mates and moving or rotating components directly.