Create frame
figma_create_frameCreate auto-layout frames for sections, rows, or cards, then add content inside via parentId. Frames hug their content or fill a parent column's width, using gap, padding, and alignment.
Instructions
A frame — the building block for structure. Build designs step by step: one frame per section, row or card, each with auto-layout (layout, gap, padding, alignX/alignY), then add content into it by parentId. An auto-layout frame hugs its content on any axis you give no size for; sizing: { horizontal: "fill" } makes it take its parent column's width. A wrapping row (wrap) spaces its rows by rowGap (default: the gap). Content is not clipped unless clipsContent: true. Name it for what it is. Editors: Design; unverified: FigJam, Slides.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| x | No | ||
| y | No | ||
| gap | No | Space between items, px. | |
| name | No | What it is, e.g. "Header", "Pricing card". | |
| wrap | No | Wrap items onto new lines (horizontal layout only). | |
| width | No | Fixes the width. Omit to hug (auto-layout) — a plain frame defaults to 100. | |
| alignX | No | Horizontal alignment of the items. | |
| alignY | No | Vertical alignment of the items. baseline (a row only) lines up text baselines, e.g. "$29 /mo". | |
| height | No | Fixes the height. Omit to hug (auto-layout). | |
| layout | No | Auto-layout direction: horizontal = a row, vertical = a column. | |
| rowGap | No | Space between wrapped rows, px. Needs wrap; default the gap. | |
| sizing | No | How it sizes, as in Figma's panel: { "horizontal": "fill" } to take the parent column's width; "hug" fits content; "fixed" keeps the number. | |
| padding | No | Padding: one number for all sides ("24"), or four comma-separated ("48,48,32,32") for top,right,bottom,left. | |
| session | No | Optional sessionId or file name, to pick a Figma file when more than one is connected. | |
| parentId | No | Defaults to the current page (in Slides: the focused slide). | |
| background | No | Omitted: transparent inside another frame, white directly on the page. | |
| alignContent | No | How wrapped rows share the height. Needs wrap. | |
| clipsContent | No | Clip children at the frame edge. Default false (shadows stay visible). | |
| cornerRadius | No | ||
| 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. |