Set text properties
figma_set_text_propertiesSet typography on whole Figma text nodes—font, weight, size, spacing, case, color, alignment, lists, resizing, and truncation—so AI agents can edit text styles consistently.
Instructions
Change typography on whole text nodes, like Figma's text panel: font family, weight, size, line height, letter spacing, case, decoration, colour, paragraph spacing and indent, lists, alignment (horizontal and vertical), resizing, truncation, leading trim, wrap style. A new family keeps each run's own weight (a bold word stays bold); a new weight applies to all of it. A weight the family names differently ("SemiBold" vs "Semi Bold") is matched, and anything substituted is reported as fellBack. maxLines ends the text in an ellipsis after that many lines. On a board a sticky, shape or connector restyles its text, and a table every cell; those texts have no alignment, resizing or truncation of their own. For part of a text use figma_set_text_range. Returns per-item results: items: [{ id, ok, error? }] — one node failing does not fail the call. Editors: Design; unverified: FigJam, Slides.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| case | No | ||
| list | No | Numbered or bulleted paragraphs; none removes the list. | |
| align | No | ||
| color | No | ||
| weight | No | Font weight as a number ("600") or a Figma style name ("Semi Bold" — Inter uses spaces, not "SemiBold"). | |
| nodeIds | Yes | ||
| session | No | Optional sessionId or file name, to pick a Figma file when more than one is connected. | |
| fontSize | No | ||
| maxLines | No | Truncate with an ellipsis after this many lines. | |
| truncate | No | Turn ellipsis truncation on or off. | |
| wrapStyle | No | Figma's textWrapStyle. | |
| autoResize | No | hug = one line that grows; wrap = fixed width, grows down; truncate = a fixed box ending in an ellipsis. | |
| decoration | No | ||
| fontFamily | No | A family available in this Figma (figma_suggest_fonts lists ranked ones). | |
| lineHeight | No | "auto", px ("24"), or percent ("150%"). | |
| leadingTrim | No | cap-height removes the vertical space above and below the glyphs. | |
| alignVertical | No | Where the text sits in a box taller than it. | |
| letterSpacing | No | px ("0.5") or percent ("-1%"). | |
| idempotencyKey | No | Caller-owned retry key, ≤128 chars. Re-calling with the same key never executes twice: it returns the existing result, or waits for the op still in flight. Supply your own for anything large — if the MCP client times out (rather than the bridge), only a key you chose can be used to retry safely. | |
| paragraphIndent | No | px the first line of each paragraph is offset from the left. | |
| paragraphSpacing | No | Vertical px between paragraphs. |