Combine as variants
figma_combine_as_variantsCombine Figma components into one variant set, using Property=Value names to define variant properties and layout rows or property grids.
Instructions
Combine components into one component set (variants), like Figma's Combine as variants. Name each component "Property=Value, Other=Value" first (figma_rename_node) — Figma derives the variant properties from those names. The components must share a parent; the set is laid out as a wrapping row unless arrange: false. columns: "State" lays it out as a grid instead — a column per State value, a row per combination of the other properties — and returns the grid's page coordinates, for header labels made with figma_create_text outside the set. Then place variants with figma_create_instance and switch them with figma_set_instance_properties. Editors: Design; unverified: Slides.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| gap | No | Space between variants, px. Default 24. | |
| name | No | The set's name, e.g. "Button". | |
| arrange | No | Lay the variants out in a wrapping row. Default true. | |
| columns | No | A variant property every component names, e.g. "State": one grid column per value. | |
| session | No | Optional sessionId or file name, to pick a Figma file when more than one is connected. | |
| description | No | What the set is for — shown in the assets panel and Dev Mode. | |
| componentIds | Yes | ||
| 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. |