Skip to main content
Glama
hellstein-dev

fusion-mcp

sketch_profiles

Extract closed sketch regions with area, centroid, and loop data to feed extrude, revolve, sweep, or loft features. Filter by an interior point to target the exact profile you need.

Instructions

Closed regions (profiles) of a sketch — the input of extrude/revolve/sweep/loft.

Each profile: {"ref": {"ref": "profile:@,", "type": "Profile", "name": "P1"}, "sketch", "point": [x, y] (an interior point of the region), "area_mm2", "centroid", "bbox": {min, max}, "outer_loop": {"curves": [refs]}, "inner_loops": [{"curves": [refs]}] (holes)}. All coordinates sketch mm.

A profile has no persistent id in Fusion, so its ref is the sketch plus a point inside the region: profile:<sketch token>@x,y. Pass this string as the profile of a feature (or {"sketch": ref, "point": [x, y]}). It survives moderate dimension changes; if the region moved away from the point the feature fails with ENTITY_NOT_FOUND listing the current profiles — call sketch_profiles(contains=[x, y]) again and use the new ref. name (P1, P2...) is only the order in this answer, never an address.

Returns {"profiles": [...]}.

Example: plate with 4 holes -> 5 profiles; the plate is the one with 4 inner_loops; sketch_profiles(sketch=, contains=[0, 0]) -> just the region around [0, 0].

Input Schema

NameRequiredDescriptionDefault
sketchYesSketch ref (from sketch_create)
containsNoOnly the profile containing this [x, y] sketch mm

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior5/5

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

No annotations exist, and the description carries the full burden well: it discloses that profiles have no persistent id, how the ref is synthesized, how fragile it is across dimension changes, the exact error behavior (ENTITY_NOT_FOUND listing current profiles), and the return envelope {"profiles": [...]}.

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?

Front-loaded with the one-line definition and the ref contract before the field dump; every clause is functional. The inline JSON field listing is dense and partially restates what the return shape would show, costing a bit of tightness.

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

Completeness5/5

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

There is no output schema, and the description fully compensates by describing every returned field (ref, point, area_mm2, centroid, bbox, outer_loop, inner_loops) and the units. The plate-with-4-holes example resolves the otherwise ambiguous 'which profile is the outer one' question.

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 100%, so the baseline is 3; the description adds real value beyond it by showing a worked call with contains=[0, 0] and explaining its filtering effect, plus the alternative {sketch: ref, point: [x, y]} addressing form.

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?

States a specific verb+resource ('Closed regions (profiles) of a sketch') and immediately frames it against its consumers ('the input of extrude/revolve/sweep/loft'). An agent can distinguish this from sketch_get/sketch_list, which would describe geometry rather than closed regions.

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 concrete usage context: pass the returned ref string (or {sketch, point}) as the profile of a feature, and use contains=[x, y] to isolate a single region. It also documents the recovery path when a stale ref fails with ENTITY_NOT_FOUND. It doesn't explicitly contrast with sibling inspection tools like sketch_get, so not a full 5.

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