Skip to main content
Glama
hjbaard

SolidWorks-MCP

by hjbaard

add_counterbore_hole

Create a counterbored screw hole on a part's +Z face by combining a through clearance shank with a larger coaxial flat-bottom pocket, allowing cap-head screws or heat-set inserts to sit flush or recessed.

Instructions

Cut a counterbored screw hole on the +Z face at (x_mm, y_mm).

A clearance shank through the thickness plus a larger coaxial flat-bottom pocket of cbore_depth_mm from the top — so a cap-head screw or heat-set insert sits flush/recessed (common for 3D-printed parts). cbore_diameter must exceed clearance_diameter. Coordinates share add_box's system. Returns mass properties.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoCounterbore
x_mmYes
y_mmYes
cbore_depth_mmYes
cbore_diameter_mmYes
clearance_diameter_mmYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It explains the cut geometry, the coaxial flat-bottom pocket, the through-thickness clearance shank, the coordinate system sharing add_box's system, and that mass properties are returned. This gives the agent a solid behavioral model, though it doesn't mention prerequisites like an active part or irreversibility.

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

Conciseness5/5

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

The description is compact and front-loaded. The first sentence states the core action, the second explains the geometry and use case, and the third adds the constraint and coordinate system. Every sentence adds value; there is no filler.

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

Completeness4/5

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

Given the lack of annotations and output schema, the description covers the essential context: what is created, where, how, common use, parameter relationships, coordinate system, and return value. It could be more explicit about active-part requirements and when a simpler hole tool should be used, but it is largely complete for invoking the tool correctly.

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?

Schema coverage is 0%, so the description must compensate. It does: clearance_diameter and cbore_diameter are semantically explained as clearance shank and counterbore pocket, cbore_depth is described, x_mm/y_mm are tied to the +Z face, and the constraint 'cbore_diameter must exceed clearance_diameter' is explicitly stated. Only the optional name parameter is not described, which is acceptable.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Cut a counterbored screw hole on the +Z face at (x_mm, y_mm).' It clearly distinguishes this from generic hole tools like add_hole or add_hole_on_face by describing the counterbore geometry, making it unambiguous what operation is performed.

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?

The description provides clear usage context: it is for cap-head screws or heat-set inserts that need to sit flush/recessed, common for 3D-printed parts. It does not explicitly name alternatives or state when not to use it, but the use case is concrete enough to guide selection.

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