# com.pulsemcp/google-flights (npm · google-flights-mcp-server)

MCP server for searching Google Flights — flight search, date grid pricing, and airport lookup.

- Trust score: 69/100 (medium)
- Change this week: +18
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `google-flights-mcp-server`: 69/100 (this document), [markdown](https://verifymcp.io/servers/com-pulsemcp-google-flights/google-flights-mcp-server.md), [page](https://verifymcp.io/servers/com-pulsemcp-google-flights/google-flights-mcp-server)

## Channel facts

- Registry: `npm`
- Package: `google-flights-mcp-server`
- Version: `0.2.6`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 87/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (97 of 101), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (97 of 101), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 37 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 76/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 968 tokens (~242/item across 4 items; 3 tools + 1 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add com-pulsemcp-google-flights -- npx -y google-flights-mcp-server
```

### Codex

```bash
codex mcp add com-pulsemcp-google-flights -- npx -y google-flights-mcp-server
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-pulsemcp-google-flights": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "google-flights-mcp-server"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-pulsemcp-google-flights --command npx --arg -y --arg google-flights-mcp-server
```

### Hermes

```yaml
mcp_servers:
  com-pulsemcp-google-flights:
    command: "npx"
    args: ["-y", "google-flights-mcp-server"]
```

### Other

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

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 69, +64)

- [security regression] Provenance: unverified → fail
- [security improvement] Install scripts: unverified → pass
- [security improvement] Known CVEs: unverified → partial
- [security improvement] Malware scan: unverified → pass
- [functional improvement] License: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Stability: unverified → 0.23
- [functional improvement] Schema quality: unverified → good
- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] Schema quality: unverified → 100
- [functional] Licence: MIT

### 2026-08-01 (score 5, −19)

- [functional regression] Tool coverage: 100 → unverified
- [functional regression] Schema quality: 100 → unverified

### 2026-07-31 (score 24, −27)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-27 (score 51)

First indexed and scored.

## MCP tools (3)

### `search_flights` (~649 tokens)

Search for flights on Google Flights with full filtering and pagination.

Returns structured flight data including prices, airlines, times, durations, stops, individual flight segments with aircraft type and legroom, fare brand (e.g. "Economy", "Economy+", "Economy Flex"), and fare extensions (carry-on and checked bag inclusion).

The fare_brand field indicates the fare tier: "Economy" (basic/lowest tier), "Economy+" (mid-tier with extras), or "Economy Flex" (higher tier with more flexibility). This is derived from Google's numeric fare tier data and may be null if unavailable. Use the extensions field (carry_on_included, checked_bags_included) for concrete amenity details.

By default, basic economy fares (fare_brand "Economy") are excluded from results since they typically have significant restrictions (no carry-on, no seat selection, non-refundable). Set exclude_basic_economy to false to include all fare tiers.

IMPORTANT — Handling large result sets: Popular routes often return 50-150+ flights. If total_results is high, recommend narrowing with filters (max_stops, sort_by, seat_class) rather than paginating through everything. For example, set max_stops to "nonstop" or sort_by to "price" to surface the most relevant options quickly.

Pagination: The response includes has_more (boolean) and next_offset (number or null). To get the next page, call search_flights again with the same parameters but set offset to next_offset. Keep paginating while has_more is true. Each page returns up to max_results flights.

Use find_airport_code first if you need to look up IATA airport codes.
Use get_date_grid to find the cheapest dates before searching.

Input parameters:

- `adults` (number): Number of adult passengers (default: 1)
- `children` (number): Number of child passengers (default: 0)
- `currency` (string): Currency code for prices (default: USD)
- `departure_date` (string, required): Departure date in YYYY-MM-DD format
- `destination` (string, required): Destination airport IATA code (e.g., "LAX")
- `exclude_basic_economy` (boolean): Exclude basic economy fares (default: true). Set to false to include all fare tiers.
- `infants_in_seat` (number): Number of infants with own seat (default: 0)
- `infants_on_lap` (number): Number of infants on lap (default: 0)
- `max_results` (number): Max results per page, 1-50 (default: 20)
- `max_stops` (string): Max stops filter (default: any)
- `offset` (number): Pagination offset (default: 0)
- `origin` (string, required): Origin airport IATA code (e.g., "SFO")
- `return_date` (string): Return date in YYYY-MM-DD (required for round_trip)
- `seat_class` (string): Cabin class (default: economy)
- `sort_by` (string): Sort order (default: best)
- `trip_type` (string): Trip type (default: one_way)

### `get_date_grid` (~213 tokens)

Get a date-price grid for a route showing the lowest flight price for each day.

Returns an array of dates with their lowest prices, plus the overall cheapest date. Great for deal-hunting when the user has flexibility on travel dates — call this first to find the cheapest day, then use search_flights on that date.

The grid typically covers ~60 days around the anchor date.

Input parameters:

- `adults` (number): Number of adult passengers (default: 1)
- `currency` (string): Currency code for prices (default: USD)
- `departure_date` (string): Anchor date in YYYY-MM-DD. Grid shows prices around this date. Default: 7 days from now.
- `destination` (string, required): Destination airport IATA code (e.g., "LAX")
- `origin` (string, required): Origin airport IATA code (e.g., "SFO")
- `seat_class` (string): Cabin class (default: economy)
- `trip_type` (string): Trip type (default: one_way)

### `find_airport_code` (~94 tokens)

Look up airport IATA codes by city name, airport name, or partial code.

Use this to find the correct airport code before calling search_flights or get_date_grid.

Returns matching airports with their IATA code, full name, city, and country.

Input parameters:

- `query` (string, required): City name, airport name, or partial code (e.g., "San Francisco", "Heathrow", "LAX")

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/com-pulsemcp-google-flights/google-flights-mcp-server#diagnostics

## Score history

- 2026-08-03: 69
- 2026-08-02: 69
- 2026-08-01: 5
- 2026-07-31: 24
- 2026-07-30: 51
- 2026-07-28: 51
- 2026-07-27: 51

## Links

- npm package: https://www.npmjs.com/package/google-flights-mcp-server
- Socket report: https://socket.dev/npm/package/google-flights-mcp-server
- Repository: https://github.com/pulsemcp/mcp-servers
- Changelog RSS feed: https://verifymcp.io/servers/com-pulsemcp-google-flights/google-flights-mcp-server/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-pulsemcp-google-flights/google-flights-mcp-server/changelog.json
- HTML version of this page: https://verifymcp.io/servers/com-pulsemcp-google-flights/google-flights-mcp-server
