Skip to main content
Glama

search

Read-onlyIdempotent

Searches live flight offers between an origin and destination for given travel dates. Supports one-way (omit return_date) and round-trip searches with flexible passenger counts and cabin class. Use this when the user wants to compare available flights, airlines, prices, layovers, or booking links for a specific route. Do not use it for rental cars, hotels, trains, or general travel planning unless the user has flight-search intent. The tool queries external flight aggregator APIs in real time, returns price-ranked results grouped by number of stops, and includes affiliate booking links. Results and booking links are valid for approximately 15 minutes due to real-time airline pricing. It does not book flights, modify reservations, charge users, or store user data.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
adultsNoNumber of adult passengers (1-9). Defaults to 1.
localeNoPreferred language code (e.g. en, de, fr). Defaults to en.en
originYesDeparture city, airport name, or IATA code (e.g. 'Frankfurt', 'JFK', 'London Heathrow').
infantsNoNumber of infants under 2 (0-9). Defaults to 0.
childrenNoNumber of children aged 2-11 (0-9). Defaults to 0.
currencyNoPreferred ISO 4217 currency code for prices (e.g. EUR, USD, GBP). Defaults to EUR.EUR
trip_classNoCabin class: Y for economy, C for business. Defaults to Y.Y
destinationYesArrival city, airport name, or IATA code.
return_dateNoReturn date for round-trip. Omit for one-way flights.
departure_dateYesDeparture date. Accepts common formats such as YYYY-MM-DD, DD.MM.YYYY, or natural-language dates.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

TDQS

A4.6/5.0
Behavior5/5

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

Annotations declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds significant behavioral context: real-time API queries, 15-minute validity of results/links, and explicit statements of what it does not do (book, modify, charge, store data). 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph of about 6 sentences, front-loaded with the core purpose. Each sentence is functional and adds value. It is concise but could benefit from slightly more structured presentation (e.g., separate sections for usage and behavior), but overall well-written.

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?

Considering the complexity (10 parameters, 3 required, output schema present), the description covers the use case, data source, result format, and limitations. It explains the real-time nature and includes what the tool does not do. An output schema exists, so return values are accounted for separately. The description is complete for an agent to invoke correctly.

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 baseline is 3. The description reinforces the trip-type parameter (omit return_date for one-way) but does not add new parameter-level details beyond what the schema already provides. It offers general context but not deeper semantics.

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 clearly specifies the tool's action: 'Searches live flight offers between an origin and destination for given travel dates.' It distinguishes one-way and round-trip searches and explicitly states it is not for other travel services like rental cars or hotels. Even though there are no sibling tools, the description differentiates from non-flight searches effectively.

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?

The description explicitly tells when to use the tool ('when the user wants to compare available flights...') and when not to ('Do not use it for rental cars, hotels, trains...'). It provides context about real-time queries, price ranking, and affiliate links, offering clear usage guidance.

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.4/5.0
Disambiguation5/5

With only one tool, there is no possibility of confusion between tools. The 'search' tool has a clear and distinct purpose.

Naming Consistency5/5

The single tool is named 'search', which is a simple, appropriate verb. There are no other tools to compare for consistency, but the name aligns with its function.

Tool Count2/5

A single tool for a 'Flights' server is too thin. While the search tool is functional, an agent would likely expect additional tools for booking, modifying, or checking flight status, making the count feel insufficient.

Completeness3/5

The search tool covers its described scope well (one-way/round-trip, flexible parameters, real-time results). However, the server lacks any other flight-related operations such as booking or managing reservations, which are obvious gaps for a flights server.