Smithery's MCP Proxy and managed identity shut down on October 31. See what's changing

SmitherySign up for Arcade

Google Flights

Arcade toolkit · docs.arcade.dev

Arcade's Google Flights toolkit lets LLMs search and resolve flight itineraries via the SerpApi Google Flights endpoint, returning structured results with direct booking links.

Capabilities

  • Airport lookup: Resolve city names, country names, or airport names to IATA codes, including metropolitan area codes (NYC, LON, etc.) usable in flight searches.
  • One-way & round-trip search: Query flights with full control over dates, cabin class, and passenger counts; round-trip fares are fetched in a single call to return accurately bundled pricing.
  • Multi-city (open-jaw) search: Search multi-leg itineraries that are neither simple one-ways nor round-trips; bundled pricing is typically cheaper than equivalent summed one-ways.
  • Booking option resolution: Convert a booking_token from any search result into a list of airlines and OTAs selling that specific itinerary, with optional POST data for backend vendor hand-offs.
  • Direct booking links: Every search result includes a google_flights_url that opens the pre-selected itinerary on Google Flights, enabling immediate user hand-off without a secondary lookup.

Secrets

SERP_API_KEY — An API key issued by SerpApi, the service that powers the underlying Google Flights data. To obtain one: create an account at serpapi.com, navigate to your dashboard, and copy the API Key shown there. Free-tier accounts include a limited number of monthly searches; paid plans are required for higher volume. The key must have access to the Google Flights engine — no additional per-engine toggle is needed on SerpApi's side.

For configuring secrets in Arcade, see https://docs.arcade.dev/en/guides/create-tools/tool-basics/create-tool-secrets. You can also manage secrets directly at https://api.arcade.dev/dashboard/auth/secrets.

Tools4

  • GoogleFlights_GetFlightBookingOptions

    Resolve a booking_token to the airlines and OTAs selling that itinerary. Pass a booking_token from a one-way, round-trip, or multi-city flight search result to get the vendors selling that specific flight. The token encodes the route, dates, cabin class, and passenger counts (every segment for multi-city), so there are no travel_class, num_adults, or num_children parameters; supplying a cabin or party size would silently disagree with the itinerary the token was issued for. Leave include_booking_post_data off (the default) when an LLM is comparing prices; turn it on only when a backend needs to rebuild the vendor hand-off, since the POST body is multiple kilobytes per option.

  • GoogleFlights_LookupAirports

    Find IATA airport codes for a city, country, or airport name. Metropolitan codes (NYC, LON, TYO, PAR, ...) are accepted as a departure_airport_code or arrival_airport_code in flight searches and mean "any airport in this city".

  • GoogleFlights_SearchFlights

    Search Google Flights for one-way or round-trip itineraries. For a trip where the traveler returns to their origin, issue a single call with both outbound_date and return_date set. Do NOT issue two separate one-way searches in opposite directions and sum the prices: airlines price round-trip fares independently from one-way fares, so the sum of two cheapest one-ways is rarely equal to the cheapest round-trip and is typically more expensive. Each returned itinerary carries a google_flights_url that opens that specific pre-selected flight on Google Flights, so you can hand the user a booking link straight from these results without a separate booking-options lookup.

  • GoogleFlights_SearchMultiCityFlights

    Search Google Flights for a multi-city (open-jaw) itinerary. Use this for trips that are neither a simple one-way nor a round-trip (e.g. an open-jaw three-leg trip that ends back at the origin). The open-jaw bundle is typically cheaper than the equivalent set of one-way searches summed; never substitute several one-way searches for a single multi-city query. Each returned itinerary carries a google_flights_url that opens that specific pre-selected itinerary on Google Flights, so you can hand the user a booking link straight from these results without a separate booking-options lookup.