Skip to main content
Glama
southleft

figma-console-mcp

by southleft

figma_get_component_for_development_deep

Extracts deeply nested Figma component trees with visual properties, token names, instance references, prototype interactions, and annotations to support complex components beyond depth-4 REST limits.

Instructions

Get a deeply nested component tree with full visual properties, resolved design token names, instance references, prototype interactions, and annotations at every level. Uses the Desktop Bridge Plugin API for unlimited depth traversal — essential for complex components like data tables, nested menus, date pickers, and compound form fields where the standard depth-4 REST API tool misses deeper structure. Returns boundVariables resolved to actual token names (not just IDs), mainComponent references for INSTANCE nodes, and reactions for interaction states. Requires Desktop Bridge plugin. For simpler components (depth ≤ 4), use figma_get_component_for_development instead.

Input Schema

NameRequiredDescriptionDefault
depthNoMaximum tree depth to traverse (default: 10). Pass 0 (or a negative value) for UNLIMITED depth — traverses the entire subtree. Unlimited/large results can be big; target a specific child node if the payload is unwieldy.
nodeIdYesComponent node ID to extract (e.g., '695:313')

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.46.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 disclose the key operational fact that this requires the Desktop Bridge plugin and traverses via the Plugin API rather than REST. It also explains what is resolved beyond raw data (boundVariables to token names, mainComponent refs, reactions). It stops short of stating error behavior when the plugin is not connected or performance limits at scale (that caveat lives only in the schema param text).

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 core purpose and the fallback rule last, so the decision-critical information comes first. It is dense but every clause adds signal; a couple of the enumerations (component examples, return field list) could be trimmed without loss.

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?

No output schema exists, yet the description names the non-obvious return fields (resolved token names, mainComponent references, reactions) and the plugin prerequisite. An agent has enough to decide between this and the shallow sibling and to anticipate the payload.

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%, so nodeId format and the depth default/unlimited semantics are already fully documented in the schema. The description adds no parameter-level meaning beyond that, which is the expected baseline when the schema does the work.

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 and resource ('Get a deeply nested component tree') plus the exact contents returned (visual properties, resolved token names, instance references, interactions, annotations). It explicitly differentiates itself from the sibling figma_get_component_for_development by depth capability, so an agent can choose without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit routing rule: use this for complex components like data tables, nested menus, date pickers, compound fields where depth-4 REST misses structure, and 'For simpler components (depth ≤ 4), use figma_get_component_for_development instead.' Both the when and the when-not are named with the alternative.

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