Skip to main content
Glama

ui_builder_list_catalogs

List the component catalogs a UI-builder design can pin to. Start here: a design's catalogPin must name a revision this server actually serves, and each catalog's catalogPin here is exactly that. By default a summary of what authoring needs, a few KB rather than the whole capability: per component its id, role, traits, slots as name[min..max]:accepted|roles and properties as name:type, with ! when required and =a|b listing the allowed values; per catalog its export formats and the modifier vocabulary. full: true returns the released CatalogsResponseV1 envelope with adapter status, parity and export notes per component; componentIds narrows either to the components you are about to use.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fullNoThe whole CatalogCapabilityV1 per catalog, as the released envelope. Defaults to false.
tokenNoA grant token from poll_access, when you cannot set the X-Compose-Preview-Token header yourself — an MCP client fixes its headers at connect time, so this is how a token approved during this session is used in it. Prefer the header where you control it.
agentNameNoOptional agent/client name shown to design viewers; self-reported.
agentModelNoOptional current model name shown to design viewers; self-reported. Omit when unknown.
componentIdsNoOnly these components. Omit for all of them.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / agentModel
      Added value: +{
      +  "description": "Optional current model name shown to design viewers; self-reported. Omit when unknown.",
      +  "maxLength": 80,
      +  "type": "string"
      +}
    • addedInput schema / properties / agentName
      Added value: +{
      +  "description": "Optional agent/client name shown to design viewers; self-reported.",
      +  "maxLength": 80,
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "type": "object"
      +}
  3. First observed

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does disclose behavior: the default is a summary ('a few KB rather than the whole capability') versus the full CatalogsResponseV1 envelope, and it sketches the returned shape per component and catalog. It does not discuss auth/permission requirements or rate limits, which is a gap, though the operation is read-only and low-risk.

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?

Front-loads the purpose in the first clause, then layers the prerequisite and mode behavior. The dense format spec for slots/properties (`name[min..max]:accepted|roles`) is long but earns its place as output-interpretation guidance. Slightly heavy overall but not padded.

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?

An output schema exists, so return values need not be exhaustively re-explained, and the description still usefully summarizes the default shape and the full mode. Combined with a fully covered schema, an agent has enough to invoke it correctly; only auth context is left implicit.

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 coverage is 100%, so the baseline is 3, but the description adds meaning beyond the schema text: `full: true` is characterized as returning the released envelope with adapter status, parity and export notes, and `componentIds` is described as narrowing either mode. That is genuine added semantics for two of the five parameters.

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 ('List the component catalogs a UI-builder design can pin to') and frames its role relative to sibling concerns by naming the catalogPin prerequisite. An agent can tell this apart from ui_builder_search_components or catalog_library without opening a schema.

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?

'Start here' plus the explanation that a design's catalogPin must name a revision this server actually serves gives a clear entry-point rationale. It also explains when to use the default summary vs `full: true` vs `componentIds`. It does not explicitly name a competing sibling to use instead, so it stops short of a 5.

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.