{"name":"com.hasdata/google-flights","slug":"hasdata-google-flights","title":"HasData Google Flights","description":"Google Flights itineraries with fares, legs, carbon emissions and price history, as JSON.","url":"https://mcp.market/server/hasdata-google-flights","rating":null,"grade":"A","score":93,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":41,"stars":6,"forks":0,"downloads_week":116,"last_push_at":"2026-10-12T14:34:07.000Z","license":"MIT"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T03:51:08.374Z","last_ok_at":"2026-11-04T03:51:08.374Z","latency_ms":150},"claimed":false,"transport":"mixed","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/HasData/google-flights-mcp","website":"https://hasdata.com/apis/google-flights-api","version":"1.0.7","remotes":[{"type":"streamable-http","url":"https://mcp.hasdata.com/mcp?apis=google_travel_flights","headers":[{"description":"HasData API key, created at app.hasdata.com. 1,000 free credits every month, no card.","isRequired":true,"isSecret":true,"name":"x-api-key"}]}],"packages":[{"registryType":"npm","identifier":"@hasdata/google-flights-mcp","version":"1.0.7","transport":{"type":"stdio"},"environmentVariables":[{"description":"HasData API key, created at app.hasdata.com. 1,000 free credits every month, no card.","isRequired":true,"isSecret":true,"name":"HASDATA_API_KEY"}]},{"registryType":"pypi","identifier":"hasdata-google-flights-mcp","version":"1.0.7","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"HasData API key, created at app.hasdata.com. 1,000 free credits every month, no card.","isRequired":true,"isSecret":true,"name":"HASDATA_API_KEY"}]}],"tools":[{"name":"hasdata_google_travel_flights_getGoogleFlights","description":"Get Google Flights Results\n\nSearches Google Flights for one-way, round-trip, or multi-city itineraries with passenger mix (adults, children, infants in-seat/on-lap), travel class, bags, max price, sort order (price, duration, emissions, departure/arrival time), stops, include/exclude airlines and connections, time windows, layover duration, and deep-search mode. Returns per-itinerary price, total duration, stops, flight legs with airline, flight number, aircraft, departure/arrival airports and times, CO2 emissions, plus booking and departure tokens for round-trip returns or booking options. Use for travel-planning agents, fare monitoring, corporate travel dashboards, emission-aware trip optimization, and comparing routes and airlines across markets.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"departureId":{"type":"string","description":"Specifies the departure airport code (IATA) or location kgmid.\n\n  - **IATA Code**: A 3-letter uppercase code (e.g., SFO for San Francisco, LHR for London Heathrow). Search on [IATA](https://www.iata.org/en/publications/directories/code-search).\n  - **Location kgmid**: A string starting with `/m/`, found in Wikidata under \"Freebase ID\" (e.g., `/m/02_286` for New York, NY).\n\nMultiple values can be separated by commas (e.g., `JFK,LGA,/m/0hptm`).\n"},"arrivalId":{"type":"string","description":"Specifies the arrival airport code (IATA) or location kgmid.\n\n  - **IATA Code**: A 3-letter uppercase code (e.g., `SFO` for San Francisco, `LHR` for London Heathrow). Search on [IATA](https://www.iata.org/en/publications/directories/code-search).\n  - **Location kgmid**: A string starting with `/m/`, found in Wikidata under \"Freebase ID\" (e.g., `/m/02_286` for New York, NY).\n\nMultiple values can be separated by commas (e.g., `JFK,LGA,/m/0hptm`).\n"},"outboundDate":{"type":"string","description":"The outbound travel date in 'yyyy-MM-dd' format.\n"},"returnDate":{"type":"string","description":"The return travel date in 'yyyy-MM-dd' format. Required when **type** is `roundTrip`.\n"},"type":{"type":"string","enum":["roundTrip","oneWay","multiCity"],"description":"Specifies the type of flight. Options:\n\n  - `roundTrip` (default)\n  - `oneWay`\n  - `multiCity` (requires `multiCityJson` for flight details)\n\nFor round trips, retrieve return flight details with a separate request using `departureToken`.\n"},"multiCityJson":{"type":"string","description":"This parameter specifies flight details for multi-city trips. It is a JSON string containing multiple flight objects. Each object must include the following fields:\n\n- **departureId** – The departure airport code or location KGMID. Uses the same format as the main `departureId` parameter.\n- **arrivalId** – The arrival airport code or location KGMID. Uses the same format as the main `arrivalId` parameter.\n- **date** – The flight date. Uses the same format as the `outboundDate` parameter.\n- **times** *(optional)* – The time range for the flight. Uses the same format as the `outboundTimes` parameter.\n"},"gl":{"type":"string","description":"The two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`."},"hl":{"type":"string","description":"The two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`."},"currency":{"type":"string","description":"Parameter defines the currency of the returned prices Provide one exact documented value (71 allowed), e.g. `ALL`, `DZD`."},"travelClass":{"type":"string","enum":["economy","premiumEconomy","business","first"],"description":"The travel class for the flight (Economy, Premium Economy, Business, or First).\n"},"showHidden":{"type":"boolean","description":"Indicates whether to include hidden options in the results.\n"},"adults":{"type":"number","description":"Number of adult passengers (>= 1 if specified).\n"},"children":{"type":"number","description":"Number of child passengers.\n"},"infantsInSeat":{"type":"number","description":"Number of infants occupying seats.\n"},"infantsOnLap":{"type":"number","description":"Number of infants sitting on an adult's lap.\n"},"sortBy":{"type":"string","enum":["topFlights","price","departureTime","arrivalTime","duration","emissions"],"description":"Sort the flight results based on price, departure time, arrival time, etc.\n"},"stops":{"type":"string","enum":["nonStop","oneStopOrFewer","twoStopsOrFewer"],"description":"Restrict the number of stops (layovers) in the flight itinerary.\n"},"excludeAirlines":{"type":"string","description":"A comma separated list of airline codes to exclude from results. You can search for airline codes on [IATA](https://www.iata.org/en/publications/directories/code-search). For example, `UA` is United Airlines.\n"},"includeAirlines":{"type":"string","description":"A comma separated list of airline codes to exclusively include in results. You can search for airline codes on [IATA](https://www.iata.org/en/publications/directories/code-search). For example, `UA` is United Airlines.\n\n`excludeAirlines` and `includeAirlines` parameters can't be used together.\n"},"bags":{"type":"number","description":"Number of carry-on bags per passenger.\n"},"maxPrice":{"type":"number","description":"Maximum price limit for the flight search, in the selected currency.\n"},"outboundTimes":{"type":"string","description":"Set up to 4 time boundaries (2 for departure, 2 for arrival) to filter flights. Each number represents the start of an hour.\n\nExamples:\n  - `6,20` → 6:00 AM - 9:00 PM departure\n  - `1,15` → 1:00 AM - 4:00 PM departure\n  - `7,18,2,21` → 7:00 AM - 9:00 PM departure, 2:00 AM - 10:00 PM arrival\n"},"returnTimes":{"type":"string","description":"Set up to 4 time boundaries (2 for departure, 2 for arrival) to filter return flights. Each number represents the start of an hour.\n\nExamples:\n  - `6,20` → 6:00 AM - 9:00 PM departure\n  - `1,15` → 1:00 AM - 4:00 PM departure\n  - `7,18,2,21` → 7:00 AM - 9:00 PM departure, 2:00 AM - 10:00 PM arrival\n"},"lessEmissions":{"type":"boolean","description":"Prefer flight options with lower carbon emissions.\n"},"layoverDuration":{"type":"string","description":"Set the maximum layover duration in minutes to filter flights. For example, `120, 360` filters layovers between 2 hours and 6 hours, while `45, 180` allows layovers from 45 minutes to 3 hours.\n"},"includeConnections":{"type":"string","description":"A comma separated list of specific airports to allow as connections.\n"},"excludeConnections":{"type":"string","description":"A comma separated list of specific airports to exclude as connections.\n"},"maxDuration":{"type":"number","description":"The maximum total flight duration in minutes.\n"},"deepSearch":{"type":"boolean","description":"Enable deep search. Returns the same results as Google Flights in a browser, but takes longer to respond. Default is `false`.\n"},"departureToken":{"type":"string","description":"Used to select a flight and retrieve return flights for a round trip or the next leg of the itinerary for a multi-city trip.\n"},"bookingToken":{"type":"string","description":"Used to request booking options for selected flights. This token is found in the flight results and cannot be used with `departureToken`.\n"}},"required":["departureId","arrivalId","outboundDate"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":93,"grade":"A","scanned_at":"2026-10-15T05:16:52.422Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-15T05:16:52.299Z","components":{"code":{"score":25,"max":25,"notes":["2 source files scanned","9 source files scanned"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 215ms"]},"poisoning":{"score":15,"max":15,"notes":["1 tool descriptions checked"]},"auth":{"score":8,"max":15,"notes":["API key sent as a header"]},"maintenance":{"score":15,"max":15,"notes":["last push 3 days ago"]},"identity":{"score":10,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year","website matches verified namespace"]}},"findings":[],"inputs":{"probes":[{"url":"https://mcp.hasdata.com/mcp?apis=google_travel_flights","reachable":true,"authRequired":false,"latencyMs":215,"serverInfo":{"name":"hasdata-mcp-api-server","version":"1.0.0"}}],"packages":[{"registryType":"npm","identifier":"@hasdata/google-flights-mcp","version":"1.0.7","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":1,"publishedAt":"2026-09-24T11:38:25.052Z","repositoryUrl":"git+https://github.com/HasData/google-flights-mcp.git","weeklyDownloads":74},{"registryType":"pypi","identifier":"hasdata-google-flights-mcp","version":"1.0.7","found":true,"weeklyDownloads":42,"license":"MIT","dependencyCount":2,"publishedAt":"2026-09-24T11:34:36.848470Z","repositoryUrl":"https://github.com/HasData/google-flights-mcp"}],"repo":{"found":true,"owner":"HasData","repo":"google-flights-mcp","archived":false,"pushedAt":"2026-10-12T14:34:07Z","stars":6,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/104488373?v=4","ownerCreatedAt":"2022-04-27T07:07:45Z","license":"MIT"},"icon":{"url":"https://hasdata.com/favicon.svg","source":"registry"},"presence":{"stars":6,"forks":0,"downloadsWeek":116,"license":"MIT","lastPushAt":"2026-10-12T14:34:07.000Z","score":41}}}},"grade_history":[],"reviews":[]}