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.
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.
Customize → Connectors → “+” → Add custom connector (the free plan allows one custom connector). Name: flightclaw. URL: https://mcp.flightclaw.com/mcp. Click Connect.
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.
{
"mcpServers": {
"flightclaw": { "url": "https://mcp.flightclaw.com/mcp" }
}
}
claude mcp add --transport http flightclaw https://mcp.flightclaw.com/mcp
Then run /mcp in Claude Code and sign in.
| tool | what it does |
|---|---|
search_flights | Search offers. Args: origin, destination (IATA), date, return_date, cabin, adults, children, infants, max_connections. Prices include the booking fee. |
get_offer | Full details for one offer (offer_id). |
create_checkout | Create 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_order | Get an order booked from your account (order_id). |
cancel_order | Call with order_id for a refund quote. Call again with order_id, cancellation_id and confirm=true to cancel. |
list_travelers, save_traveler, set_me | Saved traveler profiles for your account. |
get_preferences, set_preferences | Travel preferences (cabin rules, airlines, seats). |
list_groups, save_group | Companion groups. |
list_cards, save_card, set_points_balance | Cards and points balances (no card numbers). |
log_trip, trips_followup, record_trip_feedback | Trip history and post-trip feedback. |
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.
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.
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:
get_connection_instructions, get_pricing, get_supported_features, get_faq (read-only)search_flights, get_offer, start_checkout (returns checkout_url; navigate to it and complete the card form, or give it to the user), get_checkout_statusThe same flow is on the home page as a normal form: search → results → passengers → checkout.
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.