Skip to main content
Glama
dream-creo-mcp

dream-creo-mcp

by JaikenWong

round

Applies a constant-radius fillet to specified edges of a Creo part, optionally including tangent-connected edges for complete chains.

Instructions

Creates/edits geometry in the running Creo 5 through the DreamFeatureApp plugin. There is no mirror tool: build symmetric shapes with symmetric extrudes, revolves or patterns. Units are mm and degrees. Parts are addressed by name (lowercase, no .prt). Model axes: FRONT is the XY plane (normal +Z), TOP is XZ (normal +Y), RIGHT is YZ (normal +X). Each feature call either ends with an active feature or is rolled back. Nothing is saved unless model_save is called. Check results with model_info (volume, bound_box) and preview_image.

Constant-radius round on the listed edges (edge:N ids from find_geometry kind=edges). List every edge to round, or pass tangent_chain=true to add every edge joined to them with the same tangent (a full circle is two arcs in Creo: rounding one half alone fails).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "name": "<name>",
      "edges": "<edges>",
      "radius": "<radius>"
    },
    "name": "round"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameYesPart name without .prt
edgesYes
radiusYes
feature_nameNoOptional feature name
tangent_chainNoAlso take every edge joined end to end with the same tangent (e.g. the other half of a circle)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.1

TDQS

A3.8/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 and does well: it discloses units (mm/degrees), the failure/rollback model ("each feature call either ends with an active feature or is rolled back"), persistence ("nothing is saved unless model_save is called"), and the verification path (model_info volume/bound_box, preview_image). It does not state permission/auth needs or what happens if the radius exceeds local geometry, which keeps it short of a 5.

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

Conciseness2/5

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

The tool-specific content is two sentences at the end; everything before it is shared family boilerplate about axes, units, saving, and mirroring. It is not wasteful per se, but the structure is badly front-loaded — the actual operation should lead, with the global preamble trailing or omitted.

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?

For a 5-parameter geometry mutation with no output schema, the definition covers the essentials an agent needs: how to source edge ids, how tangent selection works, unit conventions, rollback on failure, that saving is a separate step, and how to verify the result. Only error specifics (e.g., radius too large for the adjacent faces) are left implicit.

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 60%, and the description compensates for the weakest points: it specifies the edge id syntax and source (find_geometry kind=edges) and, most valuably, explains tangent_chain's behavior with the concrete full-circle-is-two-arcs example. "Constant-radius" clarifies that radius is a single uniform value. feature_name and the name pattern's lowercase/no-.prt rule are covered only by the schema, leaving a small gap.

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 core sentence — "Constant-radius round on the listed edges (edge:N ids from find_geometry kind=edges)" — names a specific verb (round) and resource (edges) and implies the contrast with sibling chamfer/shell. However, it is buried after three sentences of family-wide preamble (mirror tool, units, axes, save semantics), so an agent must read past unrelated context before learning what this tool does.

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?

It explicitly routes the agent to find_geometry kind=edges to obtain edge ids, and states the selection rule "list every edge to round, or pass tangent_chain=true" with the failure case (rounding one half of a circle alone fails). It also warns there is no mirror tool, directing symmetric work to extrudes/revolves/patterns. What it lacks is an explicit when-to-use-this-vs-chamfer statement.

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