Skip to main content
Glama

figma_edit

Modify existing Figma layers in a single undo step: rename, move, duplicate, set properties, delete, resize, prototype, group, boolean, and componentize.

Instructions

Change existing layers in one undo step: rename, move (to a parent, section or page), duplicate, set (visible, position, size, opacity, text, instance properties), delete, resizeToFit (sections grow to their content), prototype (click/hover/after-delay interactions: navigate, overlay, swap, scroll-to, back, close, url, and change-to between variants for interactive components, with transitions), flow (a prototype starting point), swap (an instance to another component or variant; overrides are kept), bind (a variable to fills, strokes, gap, padding, radius, size, opacity), style (a fill, stroke, text or effect style), annotate (native Figma annotations for dev handoff: markdown, measured properties, a category), group / ungroup, boolean (union, subtract, intersect, exclude or flatten shapes), and componentize (turn existing frames into a component, several components, or one component set with variants; works on copies by default, and can expose text layers as TEXT properties). Ops run in order and can use "$n" for the node made by op n. Changing or deleting existing nodes needs approved=true; without it, delete only hides and renames the node (🗑).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
opsYes
approvedNoRequired for ops that change existing nodes; for delete it means really remove

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/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 well: it discloses the single-undo-step model, ordered execution with $n back-references, and the crucial soft-delete fallback when approved is absent (hide+rename with 🗑) versus a real removal. It stops short of describing failure/rollback behavior on partial op failure or any permission/rate constraints, which keeps it out of 5 territory.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The single front-loaded sentence is appropriately sized for a tool with ~18 op variants, and every op clause carries some information. However, it is a run-on paragraph with nested parentheticals rather than a scannable structure, which hurts comprehension for such a dense op list.

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 complex, annotation-free, output-schema-free tool, the description covers op vocabulary, execution ordering, node referencing, and the approve/soft-delete contract. The remaining gap is error and partial-failure behavior, but the core information an agent needs to construct a valid call is present.

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 only 50%, but the description compensates by explaining op semantics the schema only names, e.g. 'resizeToFit (sections grow to their content)', 'swap ... overrides are kept', 'componentize ... works on copies by default'. The approved parameter's dual meaning (approve changes; for delete it means really remove) is also clarified beyond its schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource ('Change existing layers in one undo step') and then enumerates the full op vocabulary, so an agent knows exactly what surface it covers. It does not, however, distinguish itself from plausible siblings such as figma_execute_plan or figma_apply_transformations, leaving the agent to infer the boundary.

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?

The description gives an operational precondition ('Changing or deleting existing nodes needs approved=true; without it, delete only hides and renames the node') and ordering semantics ('Ops run in order and can use "$n"'), which is genuine when-to-use context. But it never names an alternative tool or states when this tool should be chosen over siblings, so selection guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.