MCP tools
The server sends its runtime schema to Codex. Use types_get for exact field contracts. This page gives the shorter human-readable list.
Offline context
Section titled “Offline context”These tools work while Figmaboy is closed.
| Tool | Purpose |
|---|---|
designs_list |
Search saved designs and return IDs, names, projects, timestamps, and page counts. |
design_context_get |
Load a saved page by file ID or name with the document, ordered layers, assets, revision, and preview. |
Inspect and understand
Section titled “Inspect and understand”These tools require an open design.
| Tool | Purpose |
|---|---|
editor_status |
Active file/page, save state, selection, change token, viewport, and canvas geometry. |
design_capabilities |
Supported node/style capabilities and required semantic hierarchy conventions. |
types_get |
Complete TypeScript contract for every node, style, operation, and tool. |
icons_search |
Search Phosphor icons and return exact names with visual previews. |
assets_list |
List reusable image assets in the open design with dimensions, usage, and previews. |
fonts_list |
List fonts used by the design, loaded by Figmaboy, and portable system families. |
design_audit |
Check a frame for clipping, overflow, contrast, and undersized named controls. |
document_get |
Complete open page document, ordered layer tree, and change token. |
nodes_get |
Fetch exact node records by ID or filter all nodes by type/name. |
geometry_get |
Local, world, canvas-client, and rotated-corner geometry. |
| Tool | Purpose |
|---|---|
operations_apply |
Atomically create, update, delete, reparent, or reorder native layers. |
nodes_center |
Center layers horizontally, vertically, or both relative to a parent or selection. |
nodes_set_border_radius |
Set uniform or independent radii on frames, rectangles, and images. |
image_place |
Persist and place a local PNG, JPEG, or WebP as an image layer. |
selection_set |
Replace the editor selection with exact node IDs. |
viewport_focus |
Fit the viewport to specified nodes or the complete design. |
operations_apply, nodes_center, nodes_set_border_radius, and image_place accept an optional expectedChangeToken for optimistic concurrency.
Review, history, and persistence
Section titled “Review, history, and persistence”| Tool | Purpose |
|---|---|
frame_screenshot |
Capture one complete frame and its descendants as PNG evidence. |
render |
Render the full design or selected nodes to PNG. |
history_undo |
Undo the most recent editor mutation. |
history_redo |
Redo the most recently undone mutation. |
document_save |
Immediately persist the open page and return its revision/save state. |
Authoring rules
Section titled “Authoring rules”Codex should follow this order:
- Inspect capabilities, available materials, types when needed, and the current document.
- Create named parent containers before their children.
- Use one top-level frame per screen and semantic section/component groups.
- Remember that child coordinates are parent-local.
- Apply related changes atomically.
- Run
design_auditand resolve useful findings. - Capture and inspect a complete frame screenshot.
- Refine visible issues and save.
During /evolve, designers can also use evolve_candidate_validate and evolve_candidate_render for early checks. These tools operate on an isolated candidate rather than the live canvas. Whether or not the designer calls them, Figmaboy renders every returned proposal and sends the exact image and audit through a dedicated visual-review turn before director review.