Skip to main content
Glama

Get prototype reactions

figma_get_reactions
Read-only

Read prototype reactions (click, drag, hover, navigation) from Figma nodes. Use before generating interactive code to capture flows, overlays, and fixed layers.

Instructions

Prototype reactions: what a layer does on click, drag, hover, and where it navigates. scope: "node" (default) reads one node; "subtree" or "page" lists every node with reactions, plus the page's flows, prototype start and background, and frames that scroll, keep fixed layers or open as overlays. Read it before generating interactive code; figma_set_reactions writes them. Editors: Design; unverified: FigJam, Slides.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMax nodes per call for subtree/page. Default 200.
scopeNoDefault "node".
cursorNoOpaque cursor from a previous truncated call.
nodeIdNoNode id or Figma link. Required unless scope is "page" (then: the page it sits on).
sessionNoOptional sessionId or file name, to pick a Figma file when more than one is connected.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare this a safe, non-destructive read. The description adds real context beyond that: it discloses that subtree/page scope returns page-level flows, prototype start and background, plus scroll/fixed/overlay frame behavior, and flags editor support (Design yes; FigJam, Slides unverified). That editor caveat is genuinely useful behavior the annotations cannot express.

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?

Two dense sentences with zero filler, front-loaded with what reactions are, then scope semantics, then usage routing and editor caveats. Every clause carries information.

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?

With no output schema, the description does the work of explaining what page-scope returns, and it covers editor compatibility and the write counterpart. Remaining gaps are minor: pagination/truncation behavior and how cursor ties to the limit are only hinted at via the schema, not 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 coverage is 100%, so the baseline is 3, but the description goes further by explaining the semantic difference between scope values (node reads one node; subtree/page enumerate every node with reactions plus page metadata), which the terse enum description does not convey.

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 resource (prototype reactions) and enumerates what they capture: click, drag, hover, navigation targets. It also differentiates the three scope modes and names the sibling figma_set_reactions, so an agent can tell read from write 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 Guidelines4/5

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

"Read it before generating interactive code; figma_set_reactions writes them" gives an explicit trigger and a named alternative for the write path. It does not, however, distinguish this from other read tools like figma_get_node or figma_get_design_context, so routing among the read family is left to inference.

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