2,500+ MCP servers ready to use
Vinkius

Expedia Hotels MCP Server for LlamaIndex 10 tools — connect in under 2 minutes

Built by Vinkius GDPR 10 Tools Framework

LlamaIndex specializes in data-aware AI agents that connect LLMs to structured and unstructured sources. Add Expedia Hotels as an MCP tool provider through Vinkius and your agents can query, analyze, and act on live data alongside your existing indexes.

Vinkius supports streamable HTTP and SSE.

python
import asyncio
from llama_index.tools.mcp import BasicMCPClient, McpToolSpec
from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.openai import OpenAI

async def main():
    # Your Vinkius token. get it at cloud.vinkius.com
    mcp_client = BasicMCPClient("https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp")
    mcp_tool_spec = McpToolSpec(client=mcp_client)
    tools = await mcp_tool_spec.to_tool_list_async()

    agent = FunctionAgent(
        tools=tools,
        llm=OpenAI(model="gpt-4o"),
        system_prompt=(
            "You are an assistant with access to Expedia Hotels. "
            "You have 10 tools available."
        ),
    )

    response = await agent.run(
        "What tools are available in Expedia Hotels?"
    )
    print(response)

asyncio.run(main())
Expedia Hotels
Fully ManagedVinkius Servers
60%Token savings
High SecurityEnterprise-grade
IAMAccess control
EU AI ActCompliant
DLPData protection
V8 IsolateSandboxed
Ed25519Audit chain
<40msKill switch
Stream every event to Splunk, Datadog, or your own webhook in real-time

* Every MCP server runs on Vinkius-managed infrastructure inside AWS - a purpose-built runtime with per-request V8 isolates, Ed25519 signed audit chains, and sub-40ms cold starts optimized for native MCP execution. See our infrastructure

About Expedia Hotels MCP Server

Connect Expedia Hotels to any AI agent via MCP.

How to Connect Expedia Hotels to LlamaIndex via MCP

Follow these steps to integrate the Expedia Hotels MCP Server with LlamaIndex.

01

Install dependencies

Run pip install llama-index-tools-mcp llama-index-llms-openai

02

Replace the token

Replace [YOUR_TOKEN_HERE] with your Vinkius token

03

Run the agent

Save to agent.py and run: python agent.py

04

Explore tools

The agent discovers 10 tools from Expedia Hotels

Why Use LlamaIndex with the Expedia Hotels MCP Server

LlamaIndex provides unique advantages when paired with Expedia Hotels through the Model Context Protocol.

01

Data-first architecture: LlamaIndex agents combine Expedia Hotels tool responses with indexed documents for comprehensive, grounded answers

02

Query pipeline framework lets you chain Expedia Hotels tool calls with transformations, filters, and re-rankers in a typed pipeline

03

Multi-source reasoning: agents can query Expedia Hotels, a vector store, and a SQL database in a single turn and synthesize results

04

Observability integrations show exactly what Expedia Hotels tools were called, what data was returned, and how it influenced the final answer

Expedia Hotels + LlamaIndex Use Cases

Practical scenarios where LlamaIndex combined with the Expedia Hotels MCP Server delivers measurable value.

01

Hybrid search: combine Expedia Hotels real-time data with embedded document indexes for answers that are both current and comprehensive

02

Data enrichment: query Expedia Hotels to augment indexed data with live information before generating user-facing responses

03

Knowledge base agents: build agents that maintain and update knowledge bases by periodically querying Expedia Hotels for fresh data

04

Analytical workflows: chain Expedia Hotels queries with LlamaIndex's data connectors to build multi-source analytical reports

Expedia Hotels MCP Tools for LlamaIndex (10)

These 10 tools become available when you connect Expedia Hotels to LlamaIndex via MCP:

01

book_hotel

This is a write action that results in an actual reservation. Required fields: property_id, check_in_date, check_out_date, room_id, rate_plan_id, guest first name, last name, and email. The room_id and rate_plan_id should be obtained from the check_availability or get_rate_plans tools. Include billing address and special requests if the user provides them. On success, returns an itinerary ID that can be used to retrieve or cancel the booking. ALWAYS confirm booking details with the user before executing this action. Book a hotel reservation through Expedia EAN

02

cancel_itinerary

This is a write action that modifies a real reservation. Whether a refund is available depends on the cancellation policy of the specific rate plan that was booked. Some rate plans are non-refundable. ALWAYS confirm the cancellation with the user and inform them of the applicable cancellation policy before executing this action. Returns the updated itinerary with cancellation status and any refund details. Cancel a hotel booking by itinerary ID

03

check_availability

Returns available room types, bed configurations, occupancy limits, cancellation policies, and pricing. Use this after a user has identified a hotel of interest to see what rooms are available for their desired stay dates. Required: property_id, check_in_date, check_out_date. Check room availability for a specific hotel property

04

check_price_match

This is part of Expedia's price match guarantee program. Required: property_id, check_in_date, check_out_date, competitor_url (URL where the lower price was found), and competitor_price (the lower price amount). Returns the price match result including whether the match was approved, the adjusted price if applicable, and any refund or credit details. Check if a hotel price matches a competitor's price

05

get_hotel_details

Returns property name, full address, phone number, star rating, guest rating, detailed descriptions, amenities list, policies (check-in/out times, pet policy, etc.), nearby attractions, and images. Use this to present rich hotel details to the user before they make a booking decision. Get detailed information about a specific hotel property

06

get_hotel_images

Returns image URLs in various categories (exterior, lobby, room, bathroom, pool, restaurant, etc.), along with image descriptions, captions, and subject IDs. Use this to display hotel photos to the user when browsing or presenting hotel details. Images are available in multiple sizes — the response includes URLs for each size variant. Get all images for a specific hotel property

07

get_itinerary

Returns booking status (confirmed, cancelled), property details, room information, check-in/check-out dates, guest details, total price paid, cancellation policy, and booking timestamps. Use this to check the status of a booking or to present booking confirmation details to the user. Get details of a hotel booking by itinerary ID

08

get_rate_plans

This includes standard rates, member-only deals, package rates, non-refundable options, and promotional pricing. Each rate plan includes details on meal plans (room only, breakfast included), cancellation policies, payment types (pay now vs pay at property), and total pricing. Use this to compare pricing options and present the best deals to the user. Get rate plans and pricing options for a hotel property

09

search_hotels

Use this to find hotels by destination region ID, check-in and check-out dates, number of rooms and guests. You can filter by amenities, price range, star rating, guest rating, and property type. The region ID can be obtained using the search_regions tool. Always provide check-in and check-out dates in ISO format (YYYY-MM-DD). Results include property IDs, names, locations, star ratings, and pricing information. Search for hotels using the Expedia EAN API

10

search_regions

This is the first step in a hotel search — you need a region_id to search for hotels. For example, searching for "Paris" returns the city region, specific neighborhoods, and nearby airports. Use this to help the user identify the correct destination before performing a hotel search. Returns region IDs, names, types, and hierarchy info. Search for destination regions by name

Troubleshooting Expedia Hotels MCP Server with LlamaIndex

Common issues when connecting Expedia Hotels to LlamaIndex through the Vinkius, and how to resolve them.

01

BasicMCPClient not found

Install: pip install llama-index-tools-mcp

Expedia Hotels + LlamaIndex FAQ

Common questions about integrating Expedia Hotels MCP Server with LlamaIndex.

01

How does LlamaIndex connect to MCP servers?

Use the MCP client adapter to create a connection. LlamaIndex discovers all tools and wraps them as query engine tools compatible with any LlamaIndex agent.
02

Can I combine MCP tools with vector stores?

Yes. LlamaIndex agents can query Expedia Hotels tools and vector store indexes in the same turn, combining real-time and embedded data for grounded responses.
03

Does LlamaIndex support async MCP calls?

Yes. LlamaIndex's async agent framework supports concurrent MCP tool calls for high-throughput data processing pipelines.

Connect Expedia Hotels to LlamaIndex

Get your token, paste the configuration, and start using 10 tools in under 2 minutes. No API key management needed.