Skip to main content
Glama
AstroQuestStudio

catia-v5-mcp

catia_coincidence_constraint

Align two assembly components by making selected faces, axes, planes, or points coincident in CATIA V5. Define each element's geometry to constrain component1 and component2 together.

Instructions

Coincidence (Coïncidence) between two elements of two components: axis/axis (use axis_point on both), plane/plane, face/face, point/axis...

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoExplicit name for the coincidence in the tree (recommended).
element1YesGeometry of the component, in the component's OWN part coordinates (mm): {'face_point': [x,y,z]} a point inside a face; {'axis_point': [x,y,z]} a point on a cylindrical/conical face, meaning its AXIS; {'edge_point': [x,y,z]}; or {'plane': 'xy'|'yz'|'zx'} one of the component's origin planes. Use catia_list_faces on the part to find points, radii and axes.
element2YesGeometry of the component, in the component's OWN part coordinates (mm): {'face_point': [x,y,z]} a point inside a face; {'axis_point': [x,y,z]} a point on a cylindrical/conical face, meaning its AXIS; {'edge_point': [x,y,z]}; or {'plane': 'xy'|'yz'|'zx'} one of the component's origin planes. Use catia_list_faces on the part to find points, radii and axes.
component1YesInstance name (e.g. 'Engine.1'), or a path 'Sub.1/Part.1' for a sub-assembly child.
component2YesSecond instance name or path.
defer_updateNoSkip the solve after this constraint (default false). Each solve re-computes EVERY constraint, so its cost grows with the assembly: in a long sequence defer all but the last, then check with catia_update_assembly. The status is NOT evaluated when deferred.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

B3/5.0
Behavior2/5

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

Annotations mark this as a non-read-only, non-idempotent mutation, so the agent knows it changes state, but the description itself adds nothing about the effect: it does not state that a constraint is added to the assembly tree, whether a solve is triggered, what happens on failure, or how it interacts with existing constraints. With no output schema, the description carries the full behavioral burden and does not meet it.

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?

It is a single compact sentence with the supported pairings front-loaded, which is efficient. But the trailing ellipsis signals an unfinished enumeration, so the brevity reflects under-specification rather than disciplined concision.

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

Completeness2/5

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

For a multi-parameter assembly-mutation tool with nested geometry objects and no output schema, the description is too thin: it does not explain the resulting tree entry, solve behavior, or how defer_update/update_assembly fit the workflow (that context lives only in the schema). It leaves the agent without enough surrounding context to invoke the tool confidently in a sequence.

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 description coverage is 100% and the nested element objects are richly documented (coordinates, units, plane enums, reference to catia_list_faces). The description only adds the pairing-to-parameter mapping ('use axis_point on both'), a marginal gain over the schema, so the baseline 3 applies.

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?

The description names the specific constraint type (coincidence) and enumerates the element pairings it supports (axis/axis, plane/plane, face/face, point/axis), which distinguishes it from sibling constraint tools. However, it omits an explicit action verb (it never states that it CREATES/ADDS a constraint) and trails off with an ellipsis, leaving the full set of supported pairings ambiguous.

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?

It gives one embedded usage hint ('axis/axis (use axis_point on both)'), which tells the agent how to supply a pairing, and the pairing list implies where coincidence applies. But it never says when to choose coincidence over the sibling constraints catia_contact_constraint, catia_offset_constraint, or catia_angle_constraint, and there is no explicit when/when-not guidance.

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

Deploy Server

Other Tools