Skip to main content
Glama
hram

FreeCAD MCP

by hram

define_interface

Define a mounting interface by selecting a planar mating face and ordered inner cylinder holes; hole order establishes correspondence for alignment and no document changes are made.

Instructions

Define a mounting interface: planar mating face and >=2 ordered full inner cylinders.

Hole order determines correspondence, including symmetric patterns. Cylinders must
open onto the plane and be perpendicular to it. owner defaults to part; for a
feature inside a PartDesign Body, supply the Body name. No document changes.

Input Schema

NameRequiredDescriptionDefault
partYes
ownerNo
doc_nameYes
hole_facesYes
plane_faceYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the one explicit behavioral claim is 'No document changes,' which correctly signals a non-mutating operation, plus the disclosure that hole order carries correspondence semantics including symmetric patterns. It does not explain what the tool produces or where the interface is stored, leaving the agent unsure of the result of a successful call.

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

Conciseness4/5

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

Three short sentences, front-loaded with the core definition before constraints and the owner default; every sentence carries information. The terseness borders on cryptic jargon ('full inner cylinders') but nothing is wasted.

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 five-parameter, unannotated, no-output-schema geometry tool, the description covers the correctness-critical geometry and ordering rules but omits two parameters entirely and says nothing about what the call yields. An agent can probably construct a valid call but cannot predict the outcome.

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

Parameters3/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 and it partially does: plane_face is the planar mating face, hole_faces is the ordered cylinder list with order-defined correspondence, and owner has a default plus a Body-name rule. doc_name and part are never mentioned, and no format hints (face reference syntax) are given for the string parameters.

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 ('Define') and resource ('mounting interface') and describes exactly what constitutes the definition: a planar mating face plus two or more ordered full inner cylinders. It is clearly distinct from the sibling tools (assembly/job/object tools), though it never says what the definition is used for downstream.

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

Usage Guidelines3/5

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

Provides preconditions rather than routing: cylinders must open onto the plane and be perpendicular, and the 'owner defaults to part' rule with the PartDesign Body case is useful context. It never says when an agent should call this versus other part/assembly tools, but no obvious sibling alternative exists.

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