What it does
Flights is an MCP server and Python library that provides programmatic access to Google Flights data by reverse-engineering the API directly, bypassing HTML scraping. It exposes two main tools: search_flights to find flights on a specific date with detailed filters (cabin class, airline preferences, departure windows, stop counts), and search_dates to identify the cheapest travel dates across a flexible range. The library handles rate limiting, retries, and input validation automatically.
Who it's for
Backend engineers integrating flight search into larger travel or booking applications; travel researchers and planners who need to embed flight lookups in Claude-driven workflows; anyone building trip planning tools that require reliable, programmatic access to flight pricing and availability without web scraping.
Common use cases
- Search for flights on a specific date, filtering by cabin class (economy to first), non-stop or stop preferences, and airline codes
- Identify the cheapest travel dates across a date range for flexible travelers with schedule flexibility
- Build multi-city itineraries by chaining multiple legs together
- Integrate real-time flight pricing into AI agents that advise on travel costs and route optimization
- Compare flights sorted by price, duration, or departure time to find optimal routes
Setup pitfalls
- Must use
pipx install flightsorpip install flights; the MCP server runs viafli-mcporfli-mcp-http— ensure the binary path is correct in your Claude Desktop config (usewhich fli-mcpto verify) - Requires filesystem read/write access to store configuration and cache; consider sandboxing if running in restricted environments
- Makes direct HTTP calls to Google's API; network failures are retried automatically but extended outages will block searches
- The JSON output format (via
--format jsonin CLI) is experimental and may change; avoid hardcoding against its schema