# Expedia MCP

> Expedia lets your AI agent plan and book complete trips—hotels, flights, and rental cars—without you ever leaving your chat window. It handles everything from finding rates via `search_regions` to managing reservations using `create_booking`. Stop juggling tabs across multiple travel sites; this MCP gives your AI client the power of a full-service booking agent.

## Overview
- **Category:** ecommerce
- **Price:** Free
- **Tags:** travel-booking, hotel-search, flight-search, car-rental, pricing-comparison, itinerary-management

## Description

Planning any trip used to mean opening five different websites, comparing flight prices on one and hotel rooms on another. Now, you just tell your agent what you need. It searches through flights, hotels, and cars simultaneously, pulling live rates for everything from the initial search to a final quote comparison. The agent can narrow down options, pull detailed room quotes, or even book the whole thing—all in one chat session. This integration connects deep travel data into your workflow, making it feel like you're talking directly to an expert concierge. Since this MCP is hosted on Vinkius, you connect once and get access to a massive catalog of services for all your needs.

## Tools

### book_flight
Finalizes an airline ticket purchase for one or more passengers.

### cancel_booking
Cancels a lodging reservation using its property ID and dates.

### create_booking
Executes the full lodging reservation process for a property stay.

### get_car_quotes
Retrieves active price quotes based on specified rental car classes and dates.

### get_flight_quotes
Provides exact, real-time pricing for a specific flight itinerary you've queried.

### get_property_detail
Retrieves detailed content and amenities for any specific hotel property ID.

### get_room_quotes
Pulls live room rates and current availability for a chosen lodging property.

### search_cars
Searches for available rental vehicles at specific airport locations or branches.

### search_flights
Finds potential airline flights between any origin and destination.

### search_properties
Searches for hotels and lodging properties in a given area or region.

### book_car
Books a rental car after you provide the required driver name and email.

### cancel_flight
Cancels an existing flight booking, returning status and any applicable refund details.

### search_regions
Returns valid geographic regions, city names, and airport identifiers needed to start any search process.

## Prompt Examples

**Prompt:** 
```
Plan a complete trip to Tokyo: find hotels near Shibuya for March 10-14, a round-trip flight from LAX, and a rental car at Narita airport.
```

**Response:** 
```
Here's your Tokyo trip plan:

**Hotel:** 'Park Hotel Tokyo' near Shibuya — ¥28,000/night (≈$187), 4.5★, free cancellation until Mar 8. Total: ¥112,000.

**Flight:** LAX → NRT, Delta DL7, departing 11:30 AM, arriving 3:45 PM+1. Economy from $892 round-trip.

**Car:** Compact sedan at Narita — ¥4,200/day ($28) from Toyota Rent a Car, unlimited km.

Estimated total: ~$1,750 for 4 nights. Want me to pull detailed quotes for any of these, or should I book the hotel first?
```

**Prompt:** 
```
Compare direct flights from JFK to London Heathrow for next Friday.
```

**Response:** 
```
I found 6 direct flights from JFK to LHR for Friday:

1. **British Airways BA178** — Departs 7:00 PM, arrives 7:05 AM+1, from $684
2. **Delta DL1** — Departs 8:30 PM, arrives 8:40 AM+1, from $712
3. **American AA100** — Departs 10:00 PM, arrives 10:15 AM+1, from $698

BA178 is the best value and has the earliest arrival. Want me to pull a detailed quote with baggage and seat options for any of these?
```

**Prompt:** 
```
Get a room quote for property PRO-48291 for two nights starting tomorrow.
```

**Response:** 
```
Here are the room quotes for PRO-48291 (Grand Central Hotel):

**Standard Double** — $189/night, total $378 + $56 taxes. Free cancellation until 6 PM day of check-in.
**Deluxe King Suite** — $279/night, total $558 + $83 taxes. Non-refundable, includes breakfast.

The Standard Double offers the safest option with free cancellation. Would you like me to proceed with booking, or should I search for alternative properties in the area first?
```

## Capabilities

### Search Destinations
Find valid geographic regions and airports using `search_regions` before looking up properties or flights.

### Discover Travel Options
Execute searches for hotels (`search_properties`), flights (`search_flights`), and rental cars (`search_cars`) based on location and dates.

### Get Real-Time Pricing
Pull live rates for rooms with `get_room_quotes` or get precise cost estimates for a specific flight using `get_flight_quotes`.

### Build and Confirm Reservations
Create lodging bookings (`create_booking`), book flights (`book_flight`), or rent vehicles (`book_car`) with confirmation details.

### Manage Bookings
Cancel reservations for hotels, flights, or cars using dedicated tools like `cancel_booking` or `cancel_flight`.

## Use Cases

### Planning a Multi-City Corporate Trip
A manager needs to book flights from three different cities, find hotels in each, and rent cars at the arrival airports. The agent runs `search_regions` first, then uses `search_flights`, `search_properties`, and `search_cars` sequentially, consolidating all quotes into one final proposal.

### Handling a Last-Minute Change
A client's flight was delayed. The agent notices the change and uses `cancel_flight` to process a refund check, then immediately suggests alternative hotels using `get_room_quotes` for the new dates.

### Comparing All-In Costs
An agency needs to compare package pricing. The agent pulls detailed quotes by running `get_flight_quotes`, `get_car_quotes`, and `get_room_quotes` for the same dates, providing a clear data comparison before booking anything.

### Booking an International Family Trip
The user specifies Paris. The agent uses `search_regions` to get the correct ID, then runs `search_properties` and finds multiple options, allowing the user to select one before running `create_booking`.

## Benefits

- Compare rates instantly. Instead of checking three different tabs, your agent uses `get_flight_quotes` and `get_room_quotes` to pull live pricing for flights and hotels side by side.
- Manage the whole trip lifecycle. You can go from initial research using `search_properties` all the way through booking with `create_booking`, then cancel a segment using `cancel_flight`—no manual API calls needed.
- Avoid location guesswork. Before searching for anything, run `search_regions`. This makes sure your agent knows the correct airport or city ID to start planning from.
- Get full context on properties. If you find a hotel, use `get_property_detail` to check amenities and policies without opening a new tab.
- Consolidate ground transport. You can search for cars with `search_cars` and get multiple quotes via `get_car_quotes`, all part of the same itinerary plan.

## How It Works

The bottom line is, you give your agent permission to use these tools, and it does the heavy lifting of connecting all the travel data for you.

1. Sign up at the Expedia Group Developer Hub to create an API project and generate your unique credentials.
2. Enter those API keys into Vinkius, connecting your AI client (like Claude or Cursor) to this MCP catalog.
3. Tell your agent what trip you need—it runs the searches and gives you a final plan.

## Frequently Asked Questions

**How do I start a trip search with the Expedia MCP and `search_regions`?**
You must run `search_regions` first. This tool returns valid geographic IDs and airport codes. You need one of these identifiers to make sure any subsequent searches, like finding hotels via `search_properties`, actually work.

**Can I use `get_flight_quotes` before I search for flights?**
No. `get_flight_quotes` requires a specific itinerary to pull accurate pricing. You must first run `search_flights` to get the routes and then pass those details to `get_flight_quotes`.

**What is the difference between `search_cars` and `get_car_quotes`?**
`search_cars` finds available vehicles at a location. `get_car_quotes` takes those results and gives you real-time pricing based on specific car classes, letting you compare costs.

**If I book flights, do I need to use the `book_flight` tool?**
Yes. To complete a purchase after getting quotes using `get_flight_quotes`, you must run `book_flight`. This is the final step that reserves the ticket.

**If I use `cancel_flight`, what details should I expect regarding refunds?**
The tool provides the cancellation status and any applicable refund details. Keep in mind that refund eligibility depends heavily on the original fare class and the airline’s specific cancellation policy.

**When should I use `get_room_quotes` versus calling `create_booking`?**
Use `get_room_quotes` when you need to check current rates and availability without committing. Calling `create_booking` immediately executes the reservation, which means funds are held or charged.

**How does `get_property_detail` help me plan a trip?**
It retrieves deep content for a specific property that goes beyond basic search results. You can use it to check amenities, read full policies, and understand unique features of the lodging.

**If I want to compare rates across multiple properties, what workflow should I follow using `search_properties`?**
First, run `search_properties` to find viable options. Then, use `get_room_quotes` on the specific property IDs you are considering. This allows for a direct comparison of live rates.

**Can my AI agent search hotels, flights, and cars all in one conversation?**
Yes. This integration covers all three travel segments. Use `search_properties` for hotels, `search_flights` for air travel, and `search_cars` for vehicle rentals. Your agent can query all three in sequence and compile a complete trip plan with pricing from each segment in a single conversation.

**Does this integration handle actual bookings or is it only for searching?**
Both. You can search and compare options across all segments (read), and then proceed to create bookings using `create_booking` for hotels and `book_flight` for flights. Cancellations are also supported via `cancel_booking`. All transactions go through the official Expedia Group API with standard terms applied by the provider.

**What kind of API credentials do I need, and how is authentication handled?**
You need an API Key and an API Secret from the Expedia Group Developer Hub. The integration uses OAuth 2.0 client credentials flow — it automatically exchanges your key and secret for a short-lived access token on each request. You only need to enter your credentials once; token management is fully automated.