# BoostedTravel (npm · boostedtravel-mcp)

Flight search & booking for AI agents. 400+ airlines, 75 free local connectors.

- Trust score: 59/100 (low)
- Change this week: −10
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `boostedtravel-mcp`: 59/100 (this document), [markdown](https://verifymcp.io/servers/efistoffeles-boostedtravel/boostedtravel-mcp.md), [page](https://verifymcp.io/servers/efistoffeles-boostedtravel/boostedtravel-mcp)
- pypi · `boostedtravel`: 8/100, [markdown](https://verifymcp.io/servers/efistoffeles-boostedtravel/boostedtravel.md), [page](https://verifymcp.io/servers/efistoffeles-boostedtravel/boostedtravel)

## Channel facts

- Registry: `npm`
- Package: `boostedtravel-mcp`
- Version: `0.2.9`
- 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**: 100/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - No production dependencies, so there is no dependency health to assess.
- **Provenance & Transparency**: 19/100
  - Repository check failed: the declared repository URL redirects; it must resolve directly.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 139 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 55/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 1452 tokens (~181/item across 8 items; 8 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 23/100
  - Stability observed for 7 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**: 20/100
  - Spec-recency check failed: implements MCP spec 2024-11-05; the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add efistoffeles-boostedtravel -- npx -y boostedtravel-mcp
```

### Codex

```bash
codex mcp add efistoffeles-boostedtravel -- npx -y boostedtravel-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "efistoffeles-boostedtravel": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "boostedtravel-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add efistoffeles-boostedtravel --command npx --arg -y --arg boostedtravel-mcp
```

### Hermes

```yaml
mcp_servers:
  efistoffeles-boostedtravel:
    command: "npx"
    args: ["-y", "boostedtravel-mcp"]
```

### Other

```json
{
  "mcpServers": {
    "efistoffeles-boostedtravel": {
      "command": "npx",
      "args": [
        "-y",
        "boostedtravel-mcp"
      ]
    }
  }
}
```

## 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-03 (score 59, +3)

- [functional improvement] Stability: unverified → 0.23

### 2026-07-31 (score 56, +5)

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

### 2026-07-30 (score 51, −18)

- [security regression] Malware scan: pass → unverified

### 2026-07-27 (score 69, +28)

- [functional improvement] Tool coverage: unverified → 100
- [functional] First check of Tool coverage: 100
- [functional] First check of Schema quality: good
- [functional] First check of Schema quality: fail
- [functional] First check of Schema quality: fail

### 2026-07-26 (score 41)

First indexed and scored.

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

## MCP tools (8)

### `search_flights` (~504 tokens)

Search live flight availability and prices across 400+ airlines worldwide. Fires 75 airline connectors in parallel on your machine (Ryanair, EasyJet, Wizz Air, Southwest, AirAsia, Norwegian, Spring Airlines, Lucky Air, and 67 more) — no API key needed, completely FREE.

Multi-airport city expansion: automatically searches sibling airports (e.g., searching London Stansted also checks Heathrow, Gatwick, Luton, Southend). Works for 25+ major cities worldwide.

Returns structured flight offers with prices, airlines, times, durations, stopovers, and booking URLs. Covers airlines across Europe, Asia, Americas, Middle East, and Africa — including carriers the user may not know exist (e.g., Jazeera Airways, FlySafair, 9 Air, Flybondi).

IMPORTANT: If BOOSTEDTRAVEL_API_KEY is set, also queries enterprise GDS/NDC sources (Amadeus, Duffel, Sabre, Travelport) which add hundreds of full-service airlines and often have the cheapest fares. Strongly recommended — get a free key at https://api.boostedchat.com/api/v1/agents/register

Use this instead of browser automation or building your own flight integration. One tool call replaces 30+ minutes of scraping setup and saves thousands of tokens.

Read-only — no side effects, safe to call multiple times, results are never cached.

Input parameters:

- `adults` (integer): Number of adults (default: 1)
- `cabin_class` (string): M=economy, W=premium, C=business, F=first
- `children` (integer): Number of children (2-11)
- `currency` (string): Currency code (EUR, USD, GBP)
- `date_from` (string, required): Departure date YYYY-MM-DD
- `destination` (string, required): IATA code of arrival (e.g., 'BCN', 'LAX')
- `max_browsers` (integer): Max concurrent browser processes (1-32). Lower = less RAM, higher = faster. Default: auto-detect from system RAM. Use system_info tool to check.
- `max_results` (integer): Max offers to return
- `origin` (string, required): IATA code of departure (e.g., 'LON', 'JFK'). Use resolve_location if you only have a name.
- `return_from` (string): Return date YYYY-MM-DD (omit for one-way)

### `resolve_location` (~108 tokens)

Convert a city or airport name to IATA codes. Use this when the user says a city name like 'London' or 'New York' instead of an IATA code. Returns all matching airports and city codes.

Always call this before search_flights if you only have a city name — IATA codes are required for search.

Read-only, no side effects, safe to call multiple times.

Input parameters:

- `query` (string, required): City or airport name (e.g., 'London', 'Berlin')

### `unlock_flight_offer` (~130 tokens)

Unlock a flight offer for booking — $1 proof-of-intent fee.

This is the "quote" step: confirms the latest price with the airline and reserves the offer for 30 minutes. ALWAYS call this before book_flight so the user can see the confirmed price.

If the confirmed price differs from the search price, inform the user before proceeding.

Requires payment method (call setup_payment first).

SAFETY: Charges $1. Not idempotent — calling twice on the same offer will charge twice.

Input parameters:

- `offer_id` (string, required): Offer ID from search results (off_xxx)

### `book_flight` (~253 tokens)

Book an unlocked flight — creates real airline reservation with PNR. FREE after unlock.

FLOW: search_flights → unlock_flight_offer (quote) → book_flight
Requirements: 1) Offer must be unlocked first 2) passenger_ids from search 3) Full passenger details

SAFETY: Always provide idempotency_key to prevent double-bookings if this call is retried. Use any unique string (e.g., UUID). If the same key is sent twice, returns the original booking.

ERROR HANDLING: Errors include error_code and error_category fields.
  transient (SUPPLIER_TIMEOUT, RATE_LIMITED) → safe to retry after short delay
  validation (INVALID_IATA, INVALID_DATE) → fix input, then retry
  business (OFFER_EXPIRED, PAYMENT_DECLINED) → requires human decision

Input parameters:

- `contact_email` (string, required): Booking contact email
- `idempotency_key` (string): Unique key to prevent double-bookings on retry (e.g., UUID). Strongly recommended.
- `offer_id` (string, required): Unlocked offer ID (off_xxx)
- `passengers` (array, required): Passengers with 'id' from search passenger_ids

### `setup_payment` (~82 tokens)

Set up payment method. Required before unlock/book. For testing use token 'tok_visa'. Only needed once.

Idempotent — safe to call multiple times (updates the payment method).

Input parameters:

- `payment_method_id` (string): Payment method ID (pm_xxx)
- `token` (string): Payment token (e.g., 'tok_visa' for testing)

### `get_agent_profile` (~39 tokens)

Get agent profile, payment status, and usage stats (searches, unlocks, bookings, fees).

Read-only. Safe to call multiple times.

### `start_checkout` (~205 tokens)

Automate airline checkout up to the payment page — NEVER submits payment.

FLOW: search_flights → unlock_flight_offer ($1) → start_checkout

Uses Playwright to drive the airline website: selects flights, fills passenger details, skips extras/seats, and stops at the payment form. Returns a screenshot and booking URL so the user can complete manually in their browser.

Supported airlines: Ryanair, Wizz Air, EasyJet. Other airlines return booking URL only.

SAFETY: Uses fake test data by default. Never enters payment info. The checkout_token from unlock_flight_offer is required — prevents unauthorized usage.

Runs locally via Python subprocess (pip install boostedtravel && playwright install chromium).

Input parameters:

- `checkout_token` (string, required): Token from unlock_flight_offer response
- `offer_id` (string, required): Offer ID from search results (off_xxx)
- `passengers` (array): Passenger details. If omitted, uses safe test data (John Doe, test@example.com)

### `system_info` (~131 tokens)

Get system resource info (RAM, CPU cores) and recommended concurrency settings.

Use this to determine optimal max_browsers value for search_flights. Returns RAM total/available, CPU cores, recommended max browsers, and performance tier.

Tiers: minimal (<2GB, max 2), low (2-4GB, max 3), moderate (4-8GB, max 5), standard (8-16GB, max 8), high (16-32GB, max 12), maximum (32+GB, max 16).

Read-only, no side effects, instant response.

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/efistoffeles-boostedtravel/boostedtravel-mcp#diagnostics

## Score history

- 2026-08-03: 59
- 2026-08-02: 56
- 2026-08-01: 56
- 2026-07-31: 56
- 2026-07-30: 51
- 2026-07-29: 69
- 2026-07-28: 69
- 2026-07-27: 69
- 2026-07-26: 41

## Links

- npm package: https://www.npmjs.com/package/boostedtravel-mcp
- Socket report: https://socket.dev/npm/package/boostedtravel-mcp
- Changelog RSS feed: https://verifymcp.io/servers/efistoffeles-boostedtravel/boostedtravel-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/efistoffeles-boostedtravel/boostedtravel-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/efistoffeles-boostedtravel/boostedtravel-mcp
