Skip to main content
Glama
kicholiz

Figma Write Bridge MCP

by kicholiz

move_node

Reposition a Figma canvas node using absolute x/y coordinates or relative dx/dy offsets; inside auto layout, enable ignoreAutoLayout to place it as an overlay.

Instructions

Move a node on the canvas. Pass absolute x/y, or relative dx/dy to nudge. Inside auto layout this is rejected unless ignoreAutoLayout is true (Ignore auto layout / overlay). Reorder stacks with insert_child; align with set_axis_align.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
xNoAbsolute target x. Omit to keep current and use dx instead.
yNoAbsolute target y. Omit to keep current and use dy instead.
dxNoRelative x offset. Applied only when x is omitted.
dyNoRelative y offset. Applied only when y is omitted.
nodeIdYes
ignoreAutoLayoutNoRequired to x/y-move a child of an auto-layout parent. Pins the node as an overlay.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.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 meaningful behavioral trait: x/y moves are rejected inside auto layout unless ignoreAutoLayout is true, which pins the node as an overlay. It stops short of covering permissions, reversibility, or return behavior, so it is solid but not exhaustive.

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?

Four tight sentences, front-loaded with purpose then the positional semantics, the constraint, and the alternatives. No filler; each sentence carries distinct 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?

Covers purpose, parameter semantics, the key auto-layout constraint, and sibling routing, which is enough to invoke it correctly. For a mutation tool with no annotations and no output schema, it could say more about failure/return behavior, but nothing essential to a correct call is missing.

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 coverage is 83%, so the parameters are largely documented already. The description adds the useful absolute-vs-relative framing ('absolute x/y, or relative dx/dy to nudge') but does not go beyond the schema's own per-parameter rules on when dx/dy apply. Baseline 3 is appropriate.

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?

Names a specific verb (move) and resource (node on the canvas) and immediately distinguishes its scope from siblings by routing reorder to insert_child and alignment to set_axis_align. An agent can identify the tool's job without opening 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 Guidelines5/5

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

Explicitly states the auto-layout condition under which the move is rejected (unless ignoreAutoLayout is true) and names two sibling alternatives for the adjacent tasks of reordering (insert_child) and aligning (set_axis_align). When-to-use, when-not, and alternatives are all present.

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