Skip to main content
Glama

search_locations

Read-onlyIdempotent

Resolve a city or airport name or code before searching flights. Returns typed values such as city:SHA to search every catalog airport in Shanghai or airport:SHA for Hongqiao only. Pass the selected value unchanged to search_flights. Ask the traveler when multiple results are plausible.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qYesAirport/city name or 3-letter code prefix.
limitNo

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare read-only, non-destructive, and idempotent behavior. The description adds meaningful behavioral detail beyond annotations by explaining typed result values (e.g., city:SHA vs airport:SHA), catalog scope differences, and how to handle ambiguity. No contradiction with annotations.

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?

The description is three sentences with no fluff. It front-loads the purpose, provides a concrete example of return values, and gives an integration instruction and ambiguity-handling rule, all of which earn their 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?

Despite having no output schema, the description sufficiently explains the return format (typed values) and the meaning of those values. The main parameter q is well documented, and limit is covered by schema defaults. The tool is simple enough that this description is complete.

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 50%: q is described as 'Airport/city name or 3-letter code prefix' in schema, and the description enriches q with examples and the typed-prefix semantics. However, the limit parameter is not mentioned in the description, though schema covers its default and range.

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?

The description uses the specific verb 'Resolve' with a clear resource ('city or airport name or code') and explicitly frames it as a pre-step to searching flights, which strongly distinguishes it from the sibling search_flights tool.

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?

It explicitly states 'before searching flights' and instructs to 'Pass the selected value unchanged to search_flights', giving a direct usage workflow. It also provides decision guidance by advising the agent to ask the traveler when multiple results are plausible.

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.

TDQS

A4.7/5.0
Disambiguation5/5

The two tools have clearly distinct purposes: one resolves location names to typed values, the other searches flights using those values. There is no overlap or ambiguity between them.

Naming Consistency5/5

Both tool names follow the same verb_noun pattern: search_flights and search_locations. The naming is predictable and consistent.

Tool Count3/5

Two tools is on the thin side for a flight-search server, but each tool serves a necessary and non-trivial function. The scope is narrow enough that the count is defensible, though a richer surface might include route-specific or date-specific search variants.

Completeness4/5

The tool set covers the core workflow: resolve locations, then search flexible-date flights with pricing context and booking links. Minor gaps exist, such as no explicit tool for comparing specific routes side-by-side or managing search preferences, but the core purpose is well served.