Skip to main content
Glama
lostpunk
by lostpunk

create_style_guide

Destructive

Build a style-guide board with variables and text styles in the open Figma file; target a page or fall back to the current page, and return the created page and IDs.

Instructions

Create a style-guide board, variables and text styles in the OPEN file. Optional pageId targets an existing page. Without it, create a page only within the document budget; at the limit use the current page and place the board to the right of existing content. Returns createdPage and actual IDs. Existing namespace is rejected. Does not create a cloud file or use REST.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoFoundation
radiiNo
colorsNo
pageIdNo
spacingNo
typographyNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.4

TDQS

A4.4/5.0
Behavior4/5

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

Adds meaningful behavior beyond the annotations: the namespace-collision failure mode ('Existing namespace is rejected'), the document-budget fallback, board placement, and the returned fields. It is consistent with destructiveHint=true (it creates resources) and openWorldHint=false (explicitly no cloud/REST), so there is no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core action in the first clause, then layers pageId behavior, budget fallback, return values, error behavior, and scope exclusions in a compact block with no filler sentences.

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

Completeness4/5

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

With no output schema, the description usefully names the return fields (createdPage and actual IDs) and covers budget and collision cases. It still leaves unclear what the created board contains and how the generated variables/styles map to the new page, which slightly limits self-sufficiency.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 6 parameters, so the description must carry the load, and it does for the one non-obvious parameter: pageId's optionality, target semantics, and budget-dependent fallback. The remaining five params (name, radii, colors, spacing, typography) are self-describing via defaults, but the description adds no explicit meaning for them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and a concrete set of resources (style-guide board, variables, text styles) scoped to the OPEN file, which cleanly separates it from siblings like create_page, create_scene, and set_variable. The closing exclusions ('Does not create a cloud file or use REST') further pin down what kind of creation this is.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives conditional guidance: pass pageId to target an existing page, otherwise a page is created within the document budget, and at the limit the current page is used with the board placed to the right. It does not name alternative tools or say when not to use this one, so it stops short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.