Skip to main content
Glama
southleft

figma-console-mcp

by southleft

figma_get_file_for_plugin

Retrieve filtered Figma file structure and node IDs for plugin development, excluding visual properties to reduce payload and support deeper tree traversal.

Instructions

Get file data optimized for plugin development with filtered properties (IDs, structure, plugin data, component relationships). Excludes visual properties (fills, strokes, effects) to reduce payload. Use when user asks for: plugin development, file structure for manipulation, node IDs for plugin API. NOT for component descriptions (use figma_get_component). NOT for visual/styling data (use figma_get_component_for_development). Supports deeper tree traversal (max depth=5) than figma_get_file_data.

Input Schema

NameRequiredDescriptionDefault
depthNoHow many levels of children to include (default: 2, max: 5). Higher depths are safe here due to filtering.
fileUrlNoFigma file URL (e.g., https://figma.com/design/abc123). REQUIRED unless figma_navigate was already called.
nodeIdsNoSpecific node IDs to retrieve (optional)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.46.0

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does real work: it discloses that visual properties (fills, strokes, effects) are excluded to reduce payload, and that deeper traversal (max depth=5) is supported relative to figma_get_file_data. It does not state the navigation prerequisite (figma_navigate must have been called) or anything about response shape/pagination, leaving some behavioral gaps for a no-annotation tool.

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 verb and scope, then the filtering behavior, then usage conditions, then exclusions — a logical order with zero filler sentences. Every clause (included properties, excluded properties, sibling routing, depth ceiling) carries information an agent needs.

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 read tool with no annotations and no output schema, the description covers purpose, contents of the payload, exclusions, and sibling routing well enough to call correctly. The remaining gap is the implicit navigation prerequisite for fileUrl, which is only documented in the schema rather than surfaced in the description.

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 description coverage is 100%, so baseline is 3; the description adds comparative meaning by explaining that this tool supports deeper depth (max 5) than figma_get_file_data, which helps an agent reason about the depth parameter's tradeoff. It adds nothing new for fileUrl or nodeIds, which the schema already documents fully.

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 file data) plus the optimization angle (plugin development, filtered properties) and enumerates what is included: IDs, structure, plugin data, component relationships. It explicitly distinguishes itself from figma_get_component and figma_get_component_for_development, so an agent can route without opening any 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?

Provides an explicit 'Use when user asks for:' list (plugin development, file structure for manipulation, node IDs for plugin API) and two explicit 'NOT for' exclusions that each name the correct alternative tool. Both the positive and negative routing conditions are spelled out rather than inferred.

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