# flights MCP server

whentofly: flight search for AI agents — cheapest flexible-date round-trips + buy/wait verdict

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-dimabalony-flights
- Repository: https://github.com/dimabalony/whentofly-mcp
- Website: https://whentofly.io

## Install
- Endpoint: https://whentofly.io/mcp?ch=mcp-registry
- Auth: Not captured

## Setup notes
- Remote endpoint: https://whentofly.io/mcp?ch=mcp-registry

## Tools
- search_locations - 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. Endpoint: https://whentofly.io/mcp?ch=mcp-registry
- search_flights - Find the cheapest round-trip across a FLEXIBLE multi-month date window with a min/max trip length — e.g. "10–15 days, anytime Sep–Nov". Search a broad date window rather than requiring the traveler to choose exact dates first. First call the search_locations MCP tool for city or airport names, then pass each returned airport:AAA or city:AAA value unchanged as origin/destination (explicit legacy IATA codes remain supported). Add an earliest/latest date window and min/max trip duration; get back a ranked list of the cheapest fares (with booking links) plus a price verdict — an honest read of whether the cheapest fare is low, typical, or high versus the route's usual price, or unknown when we lack a usable typical-price band (a price-level read, not a buy-now-or-wait timing prediction). Non-economy requests may return representative Google Flights route-price evidence in metadata.route_price_check, but that evidence stays outside ranked results until it carries an exact seller booking action. Use it for any flight question where the dates are flexible or the user wants the cheapest time to fly. If metadata.refresh_hint is present, you may repeat the same call after the suggested delay to inspect a separate same-route/date/cabin price check. If you can wait longer for that best-effort cross-check, set verify=full. It uses a longer ~35s budget, but never treats a different airline, itinerary, gate, or booking URL as verification of the displayed offer. Provider failure, unavailability, or a spend cap can still return only cached indicators; always inspect metadata.freshness and metadata.route_price_check. Endpoint: https://whentofly.io/mcp?ch=mcp-registry

## Resources
Not captured

## Prompts
Not captured

## Metadata
- Owner: io.github.dimabalony
- Version: 1.0.1
- Runtime: Streamable Http
- Transports: HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jul 9, 2026
- Source: https://registry.modelcontextprotocol.io
