Duffel MCP. Book flights and stays using natural conversation.
Works with every AI agent you already use
…and any MCP-compatible client
Just plug in your AI agents and start using Vinkius.
Duffel MCP Server lets you book flights and accommodations directly through your AI agent. Search for real-time travel offers, manage existing orders, and fetch specific details—from airport codes to seat maps—all within a natural conversation.
It handles everything from creating initial offer requests to processing payments.
What your AI agents can do
Book stay
Books a specific accommodation listing.
Cancel order
Cancels a flight order using its ID.
Change order
Requests a modification to an existing flight order.
Find and book specific accommodations using the book_stay tool.
Cancel or change existing flight orders using cancel_order or change_order.
Start the booking process by calling create_offer_request to compare flight prices.
Create a final flight booking or order using create_order.
Get real-time pricing and availability for a selected accommodation via fetch_stay_rates.
Access specific data points like airport details (get_airport), airline info (get_airline), or aircraft types (get_aircraft).
Handle financial transactions by creating payments for hold orders using create_payment.
Ask AI about this MCP
Supported MCP Clients
Waiting for input…
Duffel MCP Server: 29 Tools for Travel Management
These tools let your AI agent handle every step of the travel lifecycle: from initial data gathering (airports, airlines) to complex transactions (booking, payment).
019e5d13book stay
Books a specific accommodation listing.
019e5d13cancel order
Cancels a flight order using its ID.
019e5d13change order
Requests a modification to an existing flight order.
019e5d13create offer request
Starts the process of comparing available flight options.
019e5d13create order
Finalizes a flight booking and creates a confirmed order.
019e5d13create payment
Generates a payment method for a temporary hold on an order.
019e5d13create webhook
Sets up a webhook to notify an external system of events.
019e5d13fetch stay rates
Gets the specific price and rate details for a listed accommodation.
019e5d13get accommodation
Retrieves detailed information about a specific type of stay or hotel.
019e5d13get aircraft
Gets specific technical details about an aircraft type.
019e5d13get airline
Retrieves information about a specific airline.
019e5d13get airport
Gets details for a specific airport location.
019e5d13get offer
Retrieves detailed information about a single flight offer.
019e5d13get offer request
Gets the details of a flight offer request.
019e5d13get order
Retrieves the status and details of a flight order.
019e5d13get payment
Retrieves the status and details of a payment transaction.
019e5d13get seat maps
Fetches the seating layout for a specific flight offer.
019e5d13list accommodation
Retrieves a list of available accommodations in a given area.
019e5d13list aircraft
Lists all known aircraft types.
019e5d13list airlines
Lists all known airlines.
019e5d13list airports
Lists all known airport codes and details.
019e5d13list offer requests
Lists all previously created flight offer requests.
019e5d13list offers
Retrieves a list of flight offers associated with a request.
019e5d13list orders
Lists all historical flight orders placed by the user.
019e5d13list webhook events
Retrieves a list of recent webhook event notifications.
019e5d13price offer
Verifies the final price and services included in a specific flight offer.
019e5d13quote stay
Creates a formal quote for a desired accommodation stay.
019e5d13search stays
Searches for available accommodations based on dates and location.
019e5d13suggest accommodation
Suggests accommodations by searching using a name.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on every call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with Duffel, then connect any of our 4,700+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 4,700+ others, all in one place
- Add new capabilities to your AI anytime you want
- Every connection is secured and compliant automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog every week
What you can do with this MCP connector
You're gonna book flights and stays right through your AI client. This server makes your agent a full-on travel agent. You can search for deals, compare prices, and manage your whole trip—from the first search to the final payment.
Book Stays: You can find and book specific accommodations using book_stay. You can also search for available stays based on dates and location with search_stays, or suggest a place by name using suggest_accommodation. For a specific listing, you can get detailed info with get_accommodation or check out the exact price and rate details using fetch_stay_rates.
You can also start by getting a formal quote for a stay using quote_stay.
Book Flights: To start the process, your agent can call create_offer_request to compare available flight options. You'll finalize the booking and create a confirmed order with create_order. Before you're all set, you can get detailed info on a single flight offer with get_offer, or check the details of a previous request using get_offer_request.
You can also check the final price and services included in a specific flight offer by running price_offer. For flight orders, you can check the status and details using get_order, or see a list of your past orders with list_orders. To make a hold on your order, your agent can generate a payment method using create_payment and check the transaction status with get_payment.
Manage Orders: Need to change something? You can request a modification to an existing flight order using change_order, or cancel an order completely with cancel_order. You can also list all your historical flight orders using list_orders, or see a list of all flight offers associated with a request using list_offers.
View Travel Data: You don't need to Google everything. You can pull specific details on airports using get_airport, check out airline info with get_airline, or get technical details on an aircraft type using get_aircraft. You can also get a list of all known airport codes and details using list_airports, or list all known airlines with list_airlines, and list every aircraft type with list_aircraft.
For accommodations, you can see a list of available places in an area using list_accommodation.
View Flight Details: You can get a seating layout for a specific flight offer using get_seat_maps. To get a list of your previous flight offer requests, use list_offer_requests. You can also list all available flight offers by calling list_offers.
Other Tools: You can set up a webhook to notify an external system of events using create_webhook, and you can check a list of recent webhook event notifications with list_webhook_events.
How Duffel MCP Works
- 1 Subscribe to the Duffel server and enter your Duffel Access Token.
- 2 Tell your AI agent what trip you need (e.g., 'I need a flight from JFK to LHR next month').
- 3 The agent uses the necessary tools (
create_offer_request,list_offers, etc.) to gather data and present the final options to you.
The bottom line is you talk to your AI agent, and it runs the complex booking logic behind the scenes.
Who Is Duffel MCP For?
Travel agents, corporate travel managers, and developers building custom booking tools. If your job involves coordinating multi-leg trips, checking real-time pricing, or managing team travel, this is for you. It handles the messy, multi-step API calls so you don't have to.
Find the best flight and hotel options for clients instantly, without manually switching between booking portals.
Manage team bookings, check order statuses, and handle cancellations for large groups through a single AI interface.
Integrate live, functional travel booking capabilities into custom internal agents or applications using the exposed tools.
What Changes When You Connect
- Manage complex travel changes without leaving your chat. Use
change_orderorcancel_orderto modify or cancel existing bookings instantly. - Get real-time pricing for every stay. Instead of guessing, run
fetch_stay_rateson any accommodation search result to verify the exact cost. - Never lose an order ID. You can use
list_ordersto retrieve a full history of all past flight orders and their current status. - Build complex itineraries piece by piece. First, use
create_offer_requestto compare flights. Then, uselist_offersto see all available options before committing tocreate_order. - Handle payments securely. When you need to hold a flight or hotel, call
create_paymentto process the required funds. - Access foundational data. Need to know if a flight is viable? Use
get_airportorget_airlineto validate codes and details before building a quote.
Real-World Use Cases
Handling a last-minute client change.
A travel agent needs to change a client's flight date. Instead of calling the airline's portal and manually updating the booking, they ask their agent: 'Change the order for JFK to MIA by two days.' The agent runs change_order and confirms the new itinerary, solving the problem in the chat.
Planning a multi-stop corporate trip.
A corporate manager needs to book flights and hotels for a team. They start by running create_offer_request for all legs, then use search_stays for the hotel. Finally, they call create_order and book_stay to finalize everything in one session.
Verifying pricing before booking.
A developer needs to ensure a quoted rate is accurate. They run get_offer to see the initial price, then use price_offer to confirm the final cost and included services before writing the create_order call.
Getting a full travel history audit.
An administrator needs to see all team travel activity. They ask their agent to run list_orders and list_offer_requests. This instantly provides a full, structured record of every attempted and confirmed trip.
The Tradeoffs
Calling tools out of sequence
Trying to create_order without first running create_offer_request and getting an offer ID. The system fails because it lacks the necessary identifiers to proceed.
→
Always start by using create_offer_request to generate potential flight options. Then, use list_offers to select the best one. Only after confirming the offer should you call create_order.
Using vague search terms
Asking the agent to 'find me a good hotel in Tokyo.' This is too vague and requires manual follow-up to define dates or the number of guests.
→
Be specific: 'Search for stays in Tokyo, checking in on Nov 1st and checking out on Nov 5th for two adults.' Use search_stays to get a list, then fetch_stay_rates for pricing.
Ignoring order status checks
Assuming a booking is final just because you ran create_order. You might not know if it's 'confirmed' or 'on hold' until you check the status.
→
After any order action, always use get_order to pull the current status. If you need to change it, use change_order.
When It Fits, When It Doesn't
Use this server if your core business flow involves multi-step, real-time travel booking and itinerary management. You need to move beyond simple lookups; you need to execute transactions (booking, cancelling, paying). For example, if you need to know if a flight exists, use list_offers. If you need to make the flight happen, use create_offer_request followed by create_order. Don't use this if you only need to look up static data like airport codes—you can use dedicated data tools for that. But if you need to check availability and then book it, this is your endpoint.
Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by Duffel. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
VINKIUS INFRASTRUCTURE
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on every call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Works with Claude, ChatGPT, Cursor, and more
The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.
This server provides 29 capabilities that interface natively with Claude, ChatGPT, Cursor, and any MCP client. No middleware. No custom integration required.
Available Capabilities
Manually managing travel bookings is a nightmare of tabs and forms.
Right now, booking a complex trip means opening a flight site, grabbing the confirmation number; opening a hotel site, copying the dates; then going to a separate booking portal to check the price. You spend twenty minutes copy-pasting IDs and jumping between sites just to compare rates.
With Duffel, you talk to your agent. You tell it the trip details. It runs all the necessary checks—`create_offer_request` for flights, `search_stays` for hotels—and presents you with the full, comparative itinerary, all in one chat window.
Duffel MCP Server: Book flights and manage stays.
You don't have to manually list every single action. Instead of running separate tools for flights, then hotels, then checking the payment, your agent handles the sequence. It coordinates the `create_order` (flight) and `book_stay` (hotel) calls, ensuring the payment flow is correct.
The difference is that the entire process, from initial search to final confirmation, is managed by the agent, not by your manual clicking. It's one conversation.
Common Questions About Duffel MCP
How do I check the price of a flight using the Duffel MCP Server? +
You start by calling create_offer_request to get a set of potential flights. Then, use list_offers to see the options. Finally, you can run price_offer on a specific offer to confirm the final cost and services.
Can I use the Duffel MCP Server to cancel a booking? +
Yes, use cancel_order with the flight order ID. If it's a stay, you'll use the book_stay tool to manage the cancellation process.
What data does the Duffel MCP Server provide about locations? +
It provides several lookup tools. Use list_airports to get a list of all known airport codes, or get_airport for specific details on a single location.
Does the Duffel MCP Server handle payments? +
Yes, you can use create_payment to process payments. You must typically do this for a hold order to finalize a booking.
How do I find out what accommodations are available? +
Start with search_stays, providing the location and dates. Then, use list_accommodation or suggest_accommodation to refine the results.
How does the Duffel MCP Server handle changing an existing order using the `change_order` tool? +
The change_order tool allows you to request modifications to an existing flight booking. You provide the order ID and the specific changes needed, and the server processes the request against the airline's rules and current availability.
What specific data can I get about a flight using the `get_offer` tool? +
The get_offer tool provides detailed information about a specific flight offer, including the airline, flight times, fare classes, and the current price. It's essential for verifying details before a booking.
Does the Duffel MCP Server support listing historical flight orders using `list_orders`? +
Yes, the list_orders tool retrieves a list of all your flight orders. This lets your agent check the status, ID, and details of past or current bookings for easy reference.
How do I search for flights between two cities? +
Use the create_offer_request tool. You'll need to provide the origin, destination, departure date, and passenger details. The agent will then return available flight offers.
Can I see the seat map before booking a flight? +
Yes! Once you have an Offer ID, use the get_seat_maps tool to retrieve the visual layout and availability of seats for that specific flight offer.
How do I find hotel rates for a specific search result? +
After performing a search with search_stays, use the fetch_stay_rates tool with the search_result_id to get all available pricing and room options for that accommodation.
Use it with your favorite AI tools
Connect this server to Cursor, Claude, VS Code, and more.
More in this category
Konfío
Automate your Konfío SMB banking and lending. Manage loans, pay invoices, track credit cards, and emit SAT-compliant CFDIs directly from any AI agent.
Getpaid
Manage billing, track payments, and initiate checkouts via AI agents with Getpaid.io.
Billplz
Manage your payment collections via Billplz — list collections, bills, and transactions directly from any AI agent.
You might also like
Reqres
Test your front-end against a real API — manage users, resources, and project records for prototyping and testing.
Woodpecker
Equip your AI agent with direct access to Woodpecker — manage cold email sequences, track prospect engagement, and monitor deliverability without opening the Woodpecker platform.
Paperless-ngx
Manage your digital archive via Paperless-ngx — search documents, upload files, manage tags, and organize correspondents directly from any AI agent.