← flightclaw

# flightclaw docs

flightclaw is a remote MCP server for flight booking. Your agent searches ~300 airlines through Duffel, gets offers, and creates a hosted checkout link. The traveler pays there by card.

Connect

MCP server URL: https://mcp.flightclaw.com/mcp (streamable HTTP, OAuth 2.1 with dynamic client registration).

Sign in by email code. The first time your agent connects, a browser window opens. Enter your email, then the 6-digit code we send you (valid for 10 minutes), and approve the connection. There are no API keys.

Claude (claude.ai and desktop)

Customize → Connectors → “+” → Add custom connector (the free plan allows one custom connector). Name: flightclaw. URL: https://mcp.flightclaw.com/mcp. Click Connect.

ChatGPT

Settings → Security and login → turn on Developer mode (Pro, Plus, Business, Enterprise, Edu). Then create an app with “+” using URL https://mcp.flightclaw.com/mcp and OAuth authentication.

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "flightclaw": { "url": "https://mcp.flightclaw.com/mcp" }
  }
}

Claude Code

claude mcp add --transport http flightclaw https://mcp.flightclaw.com/mcp

Then run /mcp in Claude Code and sign in.

Tools

toolwhat it does
search_flightsSearch offers. Args: origin, destination (IATA), date, return_date, cabin, adults, children, infants, max_connections. Prices include the booking fee.
get_offerFull details for one offer (offer_id).
create_checkoutCreate a hosted checkout page. Args: offer_id, passengers (saved traveler names or passenger objects). The price comes from Duffel. Returns checkout_url, total_amount, total_currency, fare_amount, booking_fee.
get_orderGet an order booked from your account (order_id).
cancel_orderCall with order_id for a refund quote. Call again with order_id, cancellation_id and confirm=true to cancel.
list_travelers, save_traveler, set_meSaved traveler profiles for your account.
get_preferences, set_preferencesTravel preferences (cabin rules, airlines, seats).
list_groups, save_groupCompanion groups.
list_cards, save_card, set_points_balanceCards and points balances (no card numbers).
log_trip, trips_followup, record_trip_feedbackTrip history and post-trip feedback.

Example flow

1. search_flights  {"origin":"LHR","destination":"JFK","date":"2026-12-01"}
2. get_offer       {"offer_id":"off_..."}
3. create_checkout {"offer_id":"off_...","passengers":[{"given_name":"Jack","family_name":"Smith",
                    "born_on":"1990-01-01","gender":"m","title":"mr",
                    "email":"jack@example.com","phone_number":"+442071838750"}]}
   -> {"checkout_url":"https://mcp.flightclaw.com/checkout?id=...","total_amount":"478.65",
       "total_currency":"USD","fare_amount":"453.00","booking_fee":"25.65"}
4. Send checkout_url to the traveler. They pay by card and the airline issues the ticket.

Payment

Checkout link (default). The traveler opens checkout_url and pays by card (3-D Secure).

Autonomous payment with Link. An agent with a Link virtual card creates a spend request for exactly total_amount in total_currency. After the user approves the spend in Link, the agent pays on checkout_url with the virtual card.

WebMCP (in the browser)

flightclaw.com registers WebMCP tools with navigator.modelContext when the browser supports it. A browser agent can book on the website with no install and no sign-in:

The same flow is on the home page as a normal form: search → results → passengers → checkout.

Limits and fees

Data

We store your email and the profiles you save, per account. Accounts cannot see each other's data or orders. Card details go to Duffel's payment form and are never stored by flightclaw. flightclaw is not affiliated with Google or any airline.