Skip to main content
Glama

Generate button classes

generate_button_classes
Read-onlyIdempotent

Canonical button class string (DaisyUI btn + spatial CTA classes) from intent (variant, shape, size), plus the responsive CTA modifier class names. A starting point; extra classes can be appended.

Input Schema

NameRequiredDescriptionDefault
ctaNoAdd CTA spacing / min-height (default true).
sizeNosm | md | lg (default md).
shapeNoe.g. rounded-box (default) or rounded-full.
variantNoprimary | outline | ghost (default primary).
emphasisNodefault | neon (primary only).
responsiveNoFull width on mobile, auto on desktop (default true).
extraClassesNoExtra classes to append.
includeModifiersNoAlso return activeModifiers (default true).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive, so safety is covered. The description adds real context beyond them by disclosing what the return value consists of (base class string plus responsive modifier class names) and that it is intentionally partial — 'a starting point; extra classes can be appended.'

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?

Two sentences, zero padding. The output artifact is front-loaded before the caveat about extensibility, which is the right ordering for an agent scanning for what it gets back.

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 eight optional parameters, a 100% documented schema, and no output schema, the description should describe the return shape — and it does, naming both the base string and the modifier class names. The only meaningful omission is the relationship to validate_button_classes, which would complete the workflow picture.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all eight parameters with allowed values and defaults. The description references only the 'intent' trio (variant, shape, size) and the responsive modifiers, adding little beyond what the schema provides — the baseline 3 applies.

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

Purpose4/5

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

The description names the concrete artifact produced (a canonical DaisyUI 'btn' class string plus responsive CTA modifier names) and the inputs that drive it (variant, shape, size). That is specific enough to distinguish it from mutation-oriented siblings, though it never names the closely related validate_button_classes tool.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: it is a class-string builder for button markup and can serve as a starting point with extra classes appended. There is no explicit when-to-use or when-not guidance, and no routing to or from validate_button_classes, which is the most likely confusion point.

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