Skip to main content
Glama

Get random band

random_band
Read-only

Pick a random band from the Encyclopaedia Metallum archive, optionally filtered by a coarse genre bucket. Genre-filtered picks may take up to 30 seconds while re-rolling for a match.

Instructions

A random band from the archive, optionally from a coarse genre bucket. Genre-filtered picks re-roll until they match, so they can take up to ~30 seconds.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
genreNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnlyHint, openWorldHint), so the bar is lower, yet the description adds a genuinely useful trait not in structured data: genre-filtered picks re-roll until they match and can take up to ~30 seconds. That latency/retry disclosure materially affects how an agent should call and wait on this tool. It stops short of describing the returned band's shape.

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 waste, with the core purpose front-loaded and the caveat/cost second. Every clause earns its place.

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 single-optional-param read tool with readOnlyHint covering safety, the description supplies purpose, optionality, and the key latency caveat. With no output schema, the only minor gap is not indicating what a returned band object contains, but that is a small omission for this tool class.

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 0%, so the description must compensate, and it partially does by framing 'genre' as a 'coarse genre bucket' and explaining the re-roll consequence of filtering. However, it adds no syntax or semantic detail about the 23 allowed enum values or how they behave at boundaries (e.g., near-miss genres failing), leaving the enum itself to carry the meaning.

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+resource ('a random band from the archive') with an explicit scope modifier ('optionally from a coarse genre bucket'). This clearly distinguishes it from the deterministic siblings get_band, browse_bands, and search_bands, which an agent can tell apart without opening any schema.

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 by the random/serendipity nature of the tool, and the genre bucket is presented as optional, but the description never says when to prefer this over browse_bands or search_bands, nor when a genre filter is appropriate. No exclusions or explicit alternative routing are provided.

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