Skip to main content
Glama
google-flights-mcp

google-flights-mcp

cheapest_dates

Compare daily fares across a date window to find the cheapest day to fly. Returns each departure day's lowest price, sorted by cost, for one-way or round-trip searches.

Instructions

Find the cheapest day(s) to fly within a date window (price-calendar style).

Runs one search per candidate departure day in the window (capped at 21 days — neither of this server's data sources expose a real bulk price-calendar endpoint) and returns each day's cheapest fare, sorted by price ascending.

Args: destination: Destination airport IATA code. start_date: First candidate departure date, YYYY-MM-DD. end_date: Last candidate departure date, YYYY-MM-DD (inclusive; max 21 days after start_date). origin: Origin airport IATA code. Defaults to Lisbon (LIS). trip_length: Nights for a round trip, applied to every departure day in the window. Omit to price one-way fares. adults, children, infants: Passenger counts (see search_flights). cabin_class: "economy" | "premium" | "business" | "first". currency: ISO currency code. Defaults to EUR. max_stops: Maximum stops to allow. Omit to allow any.

Input Schema

NameRequiredDescriptionDefault
adultsNo
originNoLIS
infantsNo
childrenNo
currencyNoEUR
end_dateYes
max_stopsNo
start_dateYes
cabin_classNoeconomy
destinationYes
trip_lengthNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

No annotations exist, so the description carries the full burden and does substantial work: it discloses that one underlying search is issued per candidate day (up to 21), explains why no true bulk endpoint exists, and states results are sorted ascending by price. It stops short of describing failure handling when some of the ~21 sub-searches error out or the latency cost of a full 21-day window.

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?

Front-loaded with the purpose and the key mechanism before the args list, and the parenthetical about the missing bulk endpoint is justified rather than padding. The Args block is long but each line adds format or default information, so little is wasted.

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 an 11-parameter tool with no annotations and no output schema, the description covers inputs thoroughly and hints at the return shape ('each day's cheapest fare, sorted by price ascending'). With no output schema, a clearer sketch of the response fields (day, fare, currency, stops) would close the remaining gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the description fully compensates: every one of the 11 parameters gets format or defaults (IATA codes, YYYY-MM-DD, EUR default, LIS origin default), plus semantics the schema cannot express — end_date is inclusive, trip_length applies to every departure day and omission means one-way, max_stops omission means unrestricted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: find the cheapest day(s) to fly within a date window, with 'price-calendar style' framing that makes the scan-over-a-window shape unmistakable. It never explicitly contrasts itself with search_flights (the obvious alternative for a known-date lookup), so an agent must infer the boundary rather than read it.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is clear: use it when the departure date is flexible and you want the cheapest day inside a window, with an explicit 21-day cap on the window. No exclusion statement tells the agent when to prefer search_flights instead.

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

Deploy Server

Other Tools