Skip to main content
Glama

UiChemy AI Website Creator

uichemy_set_text_style

Destructive

Style ONE element — its alignment, size, colour, hover colour or semantic tag — keyed by the text_* slot its copy lives in (uichemy_get_page lists those, including badge labels). This is the Text panel, not the global scale: use uichemy_set_type_scale to move every heading at once. COLOUR takes a ROLE (primary, accent, extra1, extra2, titleLight, descriptionLight), which follows palette changes and the surface the text sits on; a RAMP SHADE { role, step } (0 is the lightest of the picker's ten); or a #hex. A shade or a hex is stored as that hex and does not follow a later palette change. hoverColorRole takes the same. A BUTTON label takes no per-element colour — in the editor either — because its ink belongs to the button's role; use uichemy_set_button_design labelColor. SIZE IS A SLOT ON THE GLOBAL SCALE — heading-lg, body-md — painted as a variable, so a resized element still ramps across breakpoints instead of pinning to one pixel value.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tagNoSemantic level. Stored for export; not painted on the canvas.
alignNo
sizeKeyNoheading-xs|sm|md|lg|xl|2xl|3xl|4xl|5xl, or body-sm|md|lg|xl.
textKeyYesA `text_*` slot id, from uichemy_get_page.
colorRoleNoA role ("primary", "titleLight" …), { role, step } for a ramp shade, or "#RRGGBB". uichemy_get_colors lists the roles.
projectIdYes
hoverColorRoleNoThe colour on hover. Same forms as colorRole.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations declare destructiveHint=true, but the description goes beyond them with persistence semantics: role colours follow palette changes and surface, whereas a ramp shade or hex is stored as that hex and will not follow a later palette change. That is the key behavioural distinction an agent needs. It does not state that existing styles are overwritten or what validation errors look like, keeping it just below a 5.

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

Conciseness4/5

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

The core action and keying are front-loaded in the first clause, and every subsequent sentence carries a distinct rule. It is dense and long-winded in places (multiple em-dash asides), but virtually no sentence is filler.

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?

For a 7-param mutation tool with no output schema, the description covers slot sourcing, colour form semantics, hover behaviour, size scale, and a cross-tool restriction. Missing only overwrite/error behaviour, which is a minor gap given the annotations already flag destructiveness.

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

Parameters5/5

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

With 71% schema coverage the schema names most params, yet the description adds semantics the schema lacks: the meaning of role vs {role, step} (step 0 = lightest of ten, stored as hex), that hex values break palette linkage, that sizeKey is a variable-painted global-scale slot, and that tag is export-only. Only `align` goes unelaborated.

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 resource ('Style ONE element') and enumerates exactly the attributes it covers (alignment, size, colour, hover colour, semantic tag) with the keying mechanism (the `text_*` slot). It names the siblings it is not (uichemy_set_type_scale, uichemy_set_button_design), so an agent can distinguish it at a glance.

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

Usage Guidelines5/5

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

Explicitly routes the agent: use uichemy_set_type_scale for global heading scale, uichemy_set_button_design labelColor for button ink, uichemy_get_page for slot ids, uichemy_get_colors for roles. It also spells out a when-not case ('A BUTTON label takes no per-element colour'), which is rare and valuable.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources