Skip to main content
Glama
hellstein-dev

fusion-mcp

assembly_list

Retrieve the active Fusion 360 design's assembly structure, including components, nested occurrences, transforms, visibility, grounding, light bulb state, and joint counts for inspection.

Instructions

List the assembly structure of the active design: every component and every occurrence (nested ones by path) with transform, grounded, light bulb, visibility and joint count.

Returns {"active_component": "component:", "components": [{"ref": "component:", "name", "is_root", "occurrence_count", "body_count", "part_number"}], "occurrences": [occurrence], "joint_count", "truncated"}. Occurrence object: {"ref": "occurrence:", "component", "full_path_name", "is_grounded", "is_visible", "is_light_bulb_on", "transform": {"translation_mm", "rotation"}, "joint_count"}.

Example: assembly_list() -> {"components": [{"ref": "component:Box", ...}], "occurrences": [{"ref": "occurrence:Box:1", ...}], ...}.

Input Schema

NameRequiredDescriptionDefault
limitNoMax components and max occurrences

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations present, the description carries the full disclosure burden. It does well by publishing the complete return shape, including a 'truncated' flag, which signals that results can be capped. It never explains the truncation rule, what happens on a non-assembly document, or that the call is a read-only snapshot, so meaningful behavioral gaps remain.

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?

The purpose sentence is front-loaded and the return documentation is dense but genuinely informative given the absence of an output schema. The final 'Example' line largely restates the schema-of-return already given, so a small amount of the length is redundant.

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?

Because there is no output schema, the description takes on the burden of describing returns and does so thoroughly, down to the occurrence object's fields. It falls short only on truncation/limit behavior and preconditions (e.g. requiring an active assembly context), which an agent would need to call it confidently.

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?

There is one parameter and schema coverage is 100%, with the schema itself describing it as 'Max components and max occurrences', so baseline 3 applies. The description never mentions the limit at all, so it adds nothing beyond the schema and does not connect the limit to the 'truncated' return field.

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?

The description opens with a specific verb and resource ('List the assembly structure of the active design') and then enumerates exactly what is included: components, nested occurrences by path, transform, grounded/visibility flags and joint counts. That level of specificity lets an agent distinguish it from inspect_tree or assembly_list_joints without consulting the schema.

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?

Usage is implied by the scope ('active design') and the listed return fields, so an agent can infer this is the structure-inspection call. However, there is no explicit when-to-use statement, no exclusion, and no routing to alternatives such as assembly_list_joints for joint detail or inspect_tree for the general model tree.

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