Skip to main content
Glama

Dice Cities

dice_cities
Read-onlyIdempotent

List cities DICE (dice.fm) sells event tickets in, worldwide. Optionally filter by name/country substring. Each city's id + perm_name is what dice_browse needs. Use this first to resolve a city name to a browse id.

Input Schema

NameRequiredDescriptionDefault
queryNoOptional substring to filter by city name, perm_name, or country name (case-insensitive), e.g. "york", "united kingdom".

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare the safety profile (readOnly, idempotent, non-destructive, openWorld), so the description need not restate it. It adds genuine workflow context by disclosing which fields come back (`id` + `perm_name`) and that they are the required input for dice_browse. It does not mention result limits or pagination, but that is a minor gap against an otherwise well-covered annotation set.

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?

Three tight sentences with zero filler: what it lists, how to filter, and what to do with the result. The chaining instruction is front-loaded and the return-field hint closes it efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description must describe return values — and it does, naming the exact fields an agent needs to feed into the next tool. Combined with 100% schema coverage on the only parameter and a full annotation set, nothing needed to call this correctly is missing.

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% and the single `query` param is fully documented there, so the schema does the heavy lifting. The description only restates 'filter by name/country substring' and is actually less precise than the schema, which also covers perm_name. Baseline 3 is appropriate.

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 (List) and resource (cities DICE sells tickets in) with scope (worldwide) and names its purpose in the pipeline. It is unambiguously distinguishable from sibling dice_browse and dice_event, which it explicitly feeds into.

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?

Explicit sequencing guidance: 'Use this first to resolve a city name to a browse id' names the downstream alternative (dice_browse) and the condition that selects it. An agent knows exactly when to call this vs. the browse tool.

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.