Skip to content

Guide

Using the Google Flights MCP in Cursor

Cursor's agent can write and test your travel features against real flight and hotel data when you connect the FlightPowers MCP servers. One block in .cursor/mcp.json unlocks four tools: live Google Flights pricing, Booking.com hotel searches, and the date-range and destination-list expansions that turn a single prompt into a multi-day scan.

What you need

  • Cursor (download from cursor.com)
  • A RapidAPI key for the

    Google Flights Live API

    and the

    Booking Live API

    . One key covers both once you subscribe to each listing. The free tier (10 requests/month) verifies your config works; the $10 PRO plan (2,500 requests/month) is the realistic floor for a development workflow.

Setting up the MCP servers

Add this block to .cursor/mcp.json (create the file in your project root if it does not exist yet):

{
  "mcpServers": {
    "flights": {
      "url": "https://flights.flightpowers.com/mcp",
      "headers": { "x-rapidapi-key": "YOUR_RAPIDAPI_KEY" }
    },
    "hotels": {
      "url": "https://hotels.flightpowers.com/mcp",
      "headers": { "x-rapidapi-key": "YOUR_RAPIDAPI_KEY" }
    }
  }
}

Replace YOUR_RAPIDAPI_KEY with your actual key. Both servers share the same key once you subscribe to each listing on RapidAPI.

Restart Cursor. The tools appear in the agent toolbox.

The four tools

search_oneway_flights: Live one-way flight prices from Google Flights. Pass a single date or a date range (departure_date_from / departure_date_to) and the server expands it internally. Each result includes price, price_as_number, price_range_in_relation_to_other_periods (the context field), and a buy_link that opens the itinerary on Google Flights ready to book.

search_roundtrip_flights: Paired round-trip itineraries with both legs already matched. One object per option with a combined total_price, not two lists to cross-join. Takes a return_date or a trip length in nights.

search_hotels: Live Booking.com destination search. Returns ranked properties with price_string, price_as_number, review_score, room_type, and a booking_link. Accepts the same filters the site offers: review_score_8, free_cancellation, and the rest.

find_hotel_by_name: Availability and price for one named hotel. Takes the name a human would type (add the city to disambiguate a chain) and resolves the property internally. Supports price_as_seen_from, a two-letter country code that prices the stay as a shopper in that market would see it, the field rate-parity checks are built on.

Example prompts

Generate types from a live response. "Call search_oneway_flights for LHR to JFK on October 13 and show me the raw JSON so we can write a parser for it."

Build test fixtures. "Fetch live prices for LIS to JFK across November and build a test fixture from the five cheapest days."

Test parsing logic. "Add a priceContext helper that maps price_range_in_relation_to_other_periods to a badge color, then check it against a live JFK to LHR search."

Multi-market pricing. "Run find_hotel_by_name for the Rixos Sungate with price_as_seen_from us, de, and il, and print the price spread."

How it works

The servers are hosted at https://flights.flightpowers.com/mcp and https://hotels.flightpowers.com/mcp. Nothing runs on your machine. Cursor sends your RapidAPI key with each call (in the x-rapidapi-key header), so usage meters against your own subscription. The free BASIC tier (10 requests/month, hard cap, no card) verifies the config works. A scheduled agent that scans routes daily fits the cheapest paid plan.

Date ranges and destination lists

Both flight tools accept a date range (departure_date_from / departure_date_to) and a list of airports in from_airport and to_airport (comma-separated strings like "JFK,EWR,LGA"). The server expands them internally, so a flexible search is one call where the REST API would be a client-side fan-out of one request per date and destination combination.

When to use this

Use the MCP servers when your agent is writing or testing travel features and needs real data to validate against. The response shape it codes against is the one production will see. Use the REST API for production traffic and scheduled scans outside Cursor.

Test it on your own routes

Ask the agent to fetch a live price. The free tier verifies your key works; the paid tiers are sized for daily development.

Free tier: 10 requests/month. No card to try.