Skip to main content
Glama

List cities

list_cities
Read-onlyIdempotent

Use this when someone asks which cities WonderKit covers or needs a valid city key. Lists cities that have a published city guide of real things to do, with their keys. Reads public guides only; it cannot plan, save, or look up a private trip.

Input Schema

NameRequiredDescriptionDefault

No arguments

Output Schema

NameRequiredDescriptionDefault
hintNo
noteYesRead-only reminder; not user content
foundNofalse when the lookup did not resolve
citiesNo
reasonNounknown_city, region_not_city, no_city_guide, no_itineraries_for_city, ambiguous_city, no_published_guide, no_matches, unknown_itinerary, lookup_failed, …
regionNoThe state, country, or area the city ask was read as
matchesNoCandidate cities when the name is ambiguous
nearestNoCovered cities in or near the asked-for area. Not the city that was asked for
planUrlNoGuest planner link for the destination as asked; it plans any city
truncatedNo
suggestionsNoNear-miss spellings, or same-name cities elsewhere, when the name is unknown
itinerariesUrlNoWonderKit itineraries for this city
planDescriptionNoOne line saying what planUrl opens

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, but the description adds meaningful traits: it reads public guides only, covers only cities with a published guide, and cannot mutate or access private trips. It does not discuss rate limits or result ordering, so it is strong but not exhaustive.

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: the usage trigger is front-loaded, followed by the capability and limitation. Every clause earns its place.

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?

With an output schema present and zero parameters, the description only needs to establish purpose, scope, and limits — all of which it does. Nothing required to invoke this correctly is missing.

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?

The tool takes zero parameters, so the baseline is 4. The description does add that each city comes back 'with their keys', which is modest but useful context beyond the empty input schema.

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 ('Lists cities that have a published city guide of real things to do, with their keys') plus a scope qualifier that separates it from itinerary/trip tools. An agent can distinguish it from siblings like list_itineraries or plan_trip_link without opening the schema.

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?

Gives an explicit trigger ('when someone asks which cities WonderKit covers or needs a valid city key') and explicit exclusions ('it cannot plan, save, or look up a private trip'), which routes the agent away from the sibling tool families. Both when-to-use and when-not are covered.

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