Skip to main content
Glama

Compose Preview Catalogs

catalog_list_devices

List the @Preview(device = ...) ids this server's render lane recognises, with each one's dp size and density. The device override takes one of these ids; an unrecognised name renders the default frame rather than failing, so check here instead of guessing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
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.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "type": "object"
      +}
  2. First observed

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and delivers the key behavioral trait: an unrecognised name silently renders the default frame rather than failing. That non-erroring fallback is exactly the kind of context an agent cannot infer from the schema. It does not cover auth or rate-limit behavior, but the token param is documented in the schema.

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, no waste. The core purpose is front-loaded and the fallback caveat follows in the most useful position for an agent deciding whether to call it.

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 needn't be explained, and the description covers the one non-obvious behavior (silent default fallback). For a single-parameter, read-only catalog lister this is nearly complete; only auth/permission framing is absent.

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 sole parameter (token) is already fully documented with its preference order relative to the header. The description adds nothing about that parameter, so the baseline of 3 applies; its mention of `device` refers to a different tool's parameter, not this one's.

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?

States a precise verb and resource: 'List the @Preview(device = ...) ids this server's render lane recognises, with each one's dp size and density.' That clearly delimits the tool from siblings like catalog_list_previews or catalog_render_preview, though it never names a sibling to sharpen the distinction.

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?

'The device override takes one of these ids ... so check here instead of guessing' tells the agent when to call it (before supplying a device override) and why. It gives clear positive guidance but names no alternative tool and states no explicit when-not condition.

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.