Skip to main content
Glama
kicholiz

Figma Write Bridge MCP

by kicholiz

set_layout_sizing

Set hug, fill, or fixed sizing on a Figma node via horizontal/vertical sizing or width/height aliases. For TEXT nodes, add textAutoResize to keep wrap mode aligned.

Instructions

Set hug/fill/fixed sizing. Prefer layoutSizingHorizontal/Vertical or width/height aliases with FIXED | HUG | FILL. For TEXT nodes you can also pass textAutoResize (WIDTH_AND_HEIGHT | HEIGHT | NONE | TRUNCATE) so wrap mode stays aligned with sizing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
widthNoAlias for layoutSizingHorizontal: FIXED | HUG | FILL
heightNoAlias for layoutSizingVertical: FIXED | HUG | FILL
nodeIdYes
textAutoResizeNoTEXT only: WIDTH_AND_HEIGHT | HEIGHT | NONE | TRUNCATE
layoutSizingVerticalNo
counterAxisSizingModeNo
primaryAxisSizingModeNo
layoutSizingHorizontalNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It does add real behavioral context by explaining that textAutoResize keeps wrap mode aligned with sizing, but it omits prerequisites (e.g., does this require an auto-layout parent?), permission needs, or what happens to conflicting axis modes.

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?

Two tight sentences with the core action front-loaded and the TEXT-specific nuance second. No wasted words, though the alias/preference clause is slightly dense.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter mutation tool with no annotations, no output schema, and only 38% schema coverage, the description covers the headline behavior and the TEXT case but leaves axis-mode parameters and preconditions unexplained, so it is adequate but not complete.

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 38%, so the description must compensate. It explains the width/height aliases and the textAutoResize enum values, which maps to three of the eight parameters, but counterAxisSizingMode and primaryAxisSizingMode are left entirely undocumented in both the schema and the description.

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?

States a specific verb (Set) and resource (hug/fill/fixed sizing), so an agent knows it controls layout sizing modes. It is distinguishable from siblings like set_layout_mode and set_padding, though it never explicitly names a sibling to contrast with.

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?

It offers a parameter preference (use layoutSizingHorizontal/Vertical or the width/height aliases), which is useful routing, but gives no guidance on when to choose this tool over resize_node, resize_to_fit, or set_auto_layout. Usage is implied rather than stated.

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