Skip to main content
Glama
cenitu

inventor-mcp-server

surface_to_solid

Convert imported surface models with no volume into closed solids by stitching surfaces, patching open holes, and reporting volumes and unclosed edges.

Instructions

Turn surfaces into solids — imported vendor models (x_t, IGES, STEP) that came in as faces with no volume, so no mass and no booleans. Stitches the part's visible surfaces, patches the holes left in the shell, and closes it into a solid; a shell that is already closed becomes a solid directly. Reports each step, the solids' volumes, and the open edges it couldn't close (coordinates in mm). Run it in the part that holds the surfaces.

Args: work_surfaces: "all", or WorkSurface numbers "1,2,5" to convert one group at a time (e.g. one component of a multi-part import). tolerance: Largest gap to stitch over, mm. patch_holes: Fill loops of open edges with a boundary patch.

Input Schema

NameRequiredDescriptionDefault
instanceNoWhich connected Inventor to use (list_instances). Leave empty when only one is connected.
toleranceNo
patch_holesNo
work_surfacesNoall

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.8.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 and does well: it discloses the three internal steps (stitch, patch holes, close), the fast path for already-closed shells, and the fact that it reports step-by-step results, volumes, and unclosable open edges in mm. It omits important mutation details — whether the original surfaces are consumed, whether the operation is undoable, and what happens when tolerance is too small to close a loop.

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?

Front-loaded with the outcome and the reason, then the mechanics, then the reporting behavior, then an explicit per-argument block. No filler sentences, and the Args list is scannable rather than prose.

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?

An output schema exists, so return-value detail is a bonus rather than a requirement. For a geometry-mutating tool with zero annotations and four parameters, the description covers purpose, placement, and parameter meaning well; the residual gap is failure/undo semantics and whether the source surfaces survive the operation.

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 only 25%, so the description must compensate and largely does: it explains that work_surfaces takes 'all' or a comma list like '1,2,5' for converting one group at a time, that tolerance is the largest gap to stitch over in mm, and that patch_holes fills loops of open edges with a boundary patch. The 'instance' parameter is not mentioned in the Args block, though its purpose is recoverable from the schema description.

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?

Uses a specific verb+resource ('Turn surfaces into solids') and immediately grounds it in the concrete scenario that motivates it: imported vendor models (x_t, IGES, STEP) that arrived as faces with no volume. An agent can tell this apart from modeling siblings like extrude or revolve because the input is an open shell, not a profile.

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 clear trigger condition (imported models with no volume, so no mass and no booleans) and an operational placement rule: 'Run it in the part that holds the surfaces.' The work_surfaces guidance about converting one component of a multi-part import at a time is genuinely actionable. It stops short of naming an alternative tool or stating when not to run it, so it is not a 5.

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