Skip to main content
Glama
SolidWorks-MCP

SolidWorks-MCP

cut_profile_through_plane

Cut a sketched polygon through a reference plane to create symmetric wedges, windows, or recesses in a SolidWorks part. Optionally keep only material inside the profile and return mass properties.

Instructions

Cut a polygon sketched on a reference plane, symmetric about that plane.

plane: 'front' (z = 0), 'top' (y = 0), 'right' (x = 0) or the name of another plane in the part ('Plane1'); points_mm = 3D [x, y, z] points ON that plane (e.g. x = 0 for 'right'), or all [u, v] in the plane's own frame (as add_plane and add_sketch give it). Cuts through all in both directions (depth_mm omitted) or depth_mm in total, centred on the plane. For shapes seen from the side: wedges, windows, symmetric recesses. corner_radii_mm rounds the corners as for add_extruded_profile. keep_inside=True cuts away everything OUTSIDE the profile (through all): extrude the front view, cut the side view with keep_inside, and the part is the 3D shape both views agree on. Returns mass properties.

Input Schema

NameRequiredDescriptionDefault
nameNoCut
planeYes
depth_mmNo
points_mmYes
keep_insideNo
corner_radii_mmNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.9.0
    • addedInput schema / properties / keep_inside
      Added value: +{
      +  "default": false,
      +  "title": "Keep Inside",
      +  "type": "boolean"
      +}
  2. Changed1 schema field changedv0.8.0
    • addedInput schema / properties / corner_radii_mm
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "number"
      +    },
      +    {
      +      "items": {},
      +      "type": "array"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Corner Radii Mm"
      +}
  3. First observedv0.4.0

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations, so the description carries the burden. It usefully discloses that depth is centered on the plane, that omitting depth cuts through all in both directions, that keep_inside inverts the kept region, and that it returns mass properties. However it omits error behavior (plane not found, no intersection) and never flags that it mutates the part in place.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and dense with useful detail, but the parenthetical asides and run-on plane/point explanation make it rambling and harder to parse than necessary; some sentences could be tightened.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating cut tool with no annotations and no output schema, coverage of geometry semantics is strong and it states it returns mass properties. It still leaves error/edge-case behavior and the in-place modification nature implicit, which an agent invoking a destructive op would want.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema coverage, the description must compensate and largely does: it defines plane values and coordinate framing, both points_mm formats ([x,y,z] with the zeroed axis, or [u,v] in plane frame), depth_mm semantics, corner_radii_mm, and keep_inside. Only the 'name' parameter goes unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource+binding behavior: 'Cut a polygon sketched on a reference plane, symmetric about that plane.' This distinguishes it conceptually from face-based cutting siblings like cut_profile_on_face, though it never names them explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a concrete when-to-use cue ('For shapes seen from the side: wedges, windows, symmetric recesses') and explains the keep_inside alternative mode with a worked example. It stops short of naming sibling tools to route against, so no explicit when-not.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.