This project provides an MCP (Model Context Protocol) server that exposes Expedia Travel Recommendations (hotels, flights, activities, and cars) via both stdio and streamable-http protocolsβideal for LLM integrations and web-based applications.
- π MCP server integration for Expedia's travel recommendation APIs
- π¦ Supports both
stdioandstreamable-httpprotocols - π¨ Hotel,
βοΈ Flight, πΊοΈ Activity, and π Car rental recommendations - π API key-based secure access
- Python 3.11+
- Expedia API key
export EXPEDIA_API_KEY="your_api_key_here"
uvx expedia_travel_recommendations_mcp --protocol "stdio"export EXPEDIA_API_KEY="your_api_key_here"
uvx expedia_travel_recommendations_mcp --protocol "streamable-http"Access it at:
http://0.0.0.0:9900/mcp
docker run \
-p 9900:9900 \
-e EXPEDIA_API_KEY=your_api_key_here \
expediagroup/expedia-travel-recommendations-mcpAccessible at:
http://0.0.0.0:9900/mcp
{
"mcpServers": {
"expedia-recommendation": {
"url": "http://localhost:9900/mcp"
}
}
}{
"mcpServers": {
"expedia-travel-recommendations": {
"command": "uvx",
"args": [
"expedia_travel_recommendations_mcp",
"--protocol",
"stdio"
],
"env": {
"EXPEDIA_API_KEY": "your_api_key_here"
}
}
}
}{
"query": {
"destination": "Seattle",
"check_in": "2025-05-01",
"check_out": "2025-05-05",
"property_types": ["HOTEL", "RESORT"],
"amenities": ["POOL", "SPA"],
"guest_rating": "WONDERFUL",
"sort_type": "CHEAPEST"
}
}These are exposed when using the
streamable-httpprotocol.
POST /expedia/hotelsβ Hotel recommendationsPOST /expedia/flightsβ Flight recommendationsPOST /expedia/activitiesβ Activity recommendationsPOST /expedia/carsβ Car rental recommendations
See the examples/ folder for client scripts.
Make sure the virtual env is activated (install.sh must be run first):
source install_env/bin/activate
python examples/mcp_client_stdio.pyEnsure MCP server is running:
python examples/mcp_client_streamable_http.pyLicensed under the Apache License 2.0.