mcpField
G
google-flights

google-flights

Local
github.com/pulsemcpMaps & Travel81Updated 8w ago

About google-flights

google-flights is an MCP server for searching Google Flights, covering flight search, date-price grids and airport code lookup. It requires no API key, which suits users comparing fares or looking up IATA airport codes.

Key features

  1. 01Flight search with cabin, stop, sorting and pagination filters
  2. 02Date-price grid showing lowest fare for about 60 days
  3. 03Airport IATA code lookup by city, airport name or partial code
  4. 04Multi-passenger support for adults, children and infants
  5. 05Built-in rate limiting to avoid throttling

Use cases

  1. 01Finding the cheapest nonstop flights on a route
  2. 02Identifying the lowest-fare travel dates within a month
  3. 03Looking up IATA airport codes for a city

MCP support

This project is an MCP server that exposes the search_flights, get_date_grid and find_airport_code tools, along with the google-flights://config resource, to MCP clients.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"com-pulsemcp-google-flights": {
"command": "npx",
"args": [
"-y",
"google-flights-mcp-server"
]
}
}
}
Run commandnpx -y google-flights-mcp-server

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmgoogle-flights-mcp-server0.2.6

Tools

3

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
adultsnumberNoNumber of adult passengers (default: 1)
offsetnumberNoPagination offset (default: 0)
originstringYesOrigin airport IATA code (e.g., "SFO")
sort_byenumNoSort order (default: best)best | price | duration | departure | arrival
childrennumberNoNumber of child passengers (default: 0)
currencystringNoCurrency code for prices (default: USD)
max_stopsenumNoMax stops filter (default: any)any | nonstop | 1 | 2
trip_typeenumNoTrip type (default: one_way)one_way | round_trip
seat_classenumNoCabin class (default: economy)economy | premium_economy | business | first
destinationstringYesDestination airport IATA code (e.g., "LAX")
max_resultsnumberNoMax results per page, 1-50 (default: 20)
return_datestringNoReturn date in YYYY-MM-DD (required for round_trip)
departure_datestringYesDeparture date in YYYY-MM-DD format
infants_on_lapnumberNoNumber of infants on lap (default: 0)
infants_in_seatnumberNoNumber of infants with own seat (default: 0)
exclude_basic_economybooleanNoExclude basic economy fares (default: true). Set to false to include all fare tiers.

Details

From the project README

Google Flights MCP Server

MCP server for searching Google Flights. Provides flight search, date-price grids for finding cheapest travel dates, and airport IATA code lookup. No API key required.

Highlights

  • Flight search with full filtering (cabin class, stops, sorting, pagination)
  • Date-price grid for finding cheapest travel dates across ~60 days
  • Airport IATA code lookup by city name, airport name, or partial code
  • No API key or authentication required
  • Multi-passenger support (adults, children, infants)
  • Multiple currency support
  • Built-in rate limiting to avoid throttling
  • TypeScript with strict type checking

Capabilities

Tools
ToolDescription
search_flightsSearch for flights with full filtering, sorting, and pagination
get_date_gridGet a date-price grid showing the cheapest flight price for each day
find_airport_codeLook up airport IATA codes by city name, airport name, or partial code
Resources
ResourceDescription
google-flights://configServer configuration and available tools

Quick Start

Claude Desktop Configuration

If this is your first time using MCP Servers, make sure you have the Claude Desktop application and follow the official MCP setup instructions.

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "google-flights": {
      "command": "npx",
      "args": ["-y", "google-flights-mcp-server"]
    }
  }
}

Restart Claude Desktop and you should be ready to go!

Example Usage

Search for flights:

"Find me the cheapest nonstop flights from SFO to LAX next Friday"

Find cheapest dates:

"When is the cheapest time to fly from JFK to London in March?"

Look up airport codes:

"What are the airport codes for Tokyo?"

Development

Install Dependencies
npm install
Build
npm run build
Running in Development Mode
npm run dev
Testing
# Run manual tests (hits real Google Flights)
npm run test:manual

Project Structure

google-flights/
├── local/                 # Local server implementation
│   ├── src/
│   │   └── index.ts      # Main entry point
│   └── package.json
├── shared/               # Shared business logic
│   ├── src/
│   │   ├── server.ts     # Server factory with DI
│   │   ├── tools.ts      # Tool registration
│   │   ├── tools/        # Individual tool implementations
│   │   ├── resources.ts  # Resource implementations
│   │   ├── flights-client/ # Google Flights client (protobuf + HTTP)
│   │   └── logging.ts
│   └── package.json
├── tests/                # Test suite
│   └── manual/           # Manual tests against real Google Flights
└── package.json          # Root workspace config

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.