travel_mcp
Enables comprehensive travel and hospitality operations including parallel hotel price comparison, restaurant discovery and reservations, multi-modal transit directions, and cross-platform place reviews.
README
Comprehensive Travel & Hospitality MCP Server (hotel_search)
A unified FastMCP server providing parallel hotel accommodations, gourmet dining and cafe searches (Tabelog Japan), multi-modal transit & routing, and verified traveler/diner reviews across global and regional platforms.
Key Capabilities
π¨ Accommodations & Hotels
- π Parallel Multi-Provider Search: Query Agoda, Booking.com, and Hotels.com simultaneously with
search_hotels(..., provider="all"). - π Silent Chrome Authentication: Seamlessly loads user sessions for Agoda (VIP tier), Booking.com (Genius tier), and Hotels.com (OneKey rewards).
- βοΈ Cross-Platform Price Comparison: Compare live rates across all three platforms in parallel using
compare_hotel_prices(...)to find the cheapest provider. - ποΈ Room Grid & Rate Packages: Inspect bed configurations, room sizes, breakfast inclusions, cancellation policies, and rates.
π½οΈ Dining, Restaurants & Cafes (Tabelog Japan)
- π£ Gourmet Search & Ranking: Search restaurants with Bayesian score curves (
>=3.50top 3%,>=4.00legendary/Michelin tier) viasearch_restaurants(...)/search_tabelog(...). - π Award Winner Highlights: Filter and highlight The Tabelog Award winners (Gold, Silver, Bronze) and Tabelog 100 Famous Stores (Hyakumeiten).
- π± Budget & Amenities: Separate lunch vs. dinner budgets, multilingual menus, private dining rooms, and barrier-free access.
- π
Live Vacancy Calendar: Check open reservation dates via
check_restaurant_reservation(...).
π§ Multi-Modal Transit & Navigation
- πΆππ Directions & Fares: Calculate walking routes, public transit (subway/bus line names and transfers), and taxi fares via
get_transit_and_directions(...).
β Verified Place Reviews
- π¬ Cross-Platform Reviews: Retrieve review scores, star distributions, and traveler feedback from Google Reviews, Kakao Maps, and Tabelog via
get_place_reviews(...).
Project Structure
hotels-mcp/
βββ pyproject.toml # PEP 517/518 build config, dependencies & CLI entrypoints
βββ README.md # Documentation & usage guide
βββ AGENTS.md # Agent guidelines & GitNexus code intelligence
βββ CLAUDE.md # Claude developer instructions
βββ tests/
β βββ __init__.py
β βββ test_server.py # 17 live multi-provider integration test suites
βββ src/
βββ travel_mcp/
βββ __init__.py # Package root
βββ __main__.py # CLI entrypoint (`python -m travel_mcp`)
βββ server.py # FastMCP server instance, tools, prompts & resources
βββ models.py # Normalized Pydantic DTOs for travel, dining, and transit
βββ providers/
βββ __init__.py # Unified provider factory & registry
βββ accommodations/ # Hotel accommodation providers
β βββ __init__.py
β βββ base.py # HotelProvider ABC & session loader
β βββ agoda.py # Agoda accommodation provider
β βββ booking.py # Booking.com accommodation provider
β βββ hotels_com.py # Hotels.com accommodation provider
βββ dining/ # Restaurant & cafe providers
β βββ __init__.py # Dining provider factory
β βββ base.py # DiningProvider ABC
β βββ tabelog.py # Tabelog client & vacancy parser
βββ routes/ # Multi-modal routing providers
β βββ __init__.py # Route provider factory
β βββ base.py # RouteProvider ABC
β βββ kakao.py # Kakao Maps routing provider
βββ reviews/ # Unified place review providers
βββ __init__.py # Review provider registry
βββ base.py # ReviewProvider ABC
βββ agoda.py # Agoda reviews provider
βββ google.py # Google Reviews provider
βββ kakao.py # Kakao Place reviews provider
βββ tabelog.py # Tabelog reviews provider
Installation & Setup
cd /Users/richardluo/Developer/hotels-mcp
uv sync
Run Tests:
uv run python tests/test_server.py
Run Server:
uv run travel-mcp
# or
uv run python -m travel_mcp
Antigravity / MCP Configuration
Add to ~/.gemini/config/mcp_config.json or your workspace .agents/mcp_config.json:
{
"mcpServers": {
"travel_mcp": {
"command": "uv",
"args": [
"--directory",
"/Users/richardluo/Developer/hotels-mcp",
"run",
"python",
"-m",
"travel_mcp"
],
"env": {
"PYTHONUNBUFFERED": "1"
}
}
}
}
Available Tools
π½οΈ Dining, Restaurants & Cafes
| Tool | Parameters | Description |
|---|---|---|
search_restaurants |
query, prefecture=None, area=None, genre=None, sort_by='rating', meal_type='all', provider='tabelog', page=1, limit=10 |
Searches top-rated restaurants across Japan on Tabelog (tabelog.com). Includes Bayesian scores (3.5+ top 3%, 4.0+ legendary), Award winners (Gold/Silver/Bronze), Hyakumeiten (100 Famous Stores), lunch/dinner budgets, and booking status. |
get_restaurant_details |
restaurant_id_or_url, provider='tabelog' |
Fetches complete restaurant profile, award history, exact address, GPS coordinates, phone, budget, amenities, and high-res food photos. |
suggest_dining |
query, provider='tabelog', limit=5 |
Autocompletes search keywords for restaurants, stations, areas, and food genres. |
check_restaurant_reservation |
restaurant_id, provider='tabelog' |
Checks live upcoming online booking vacancy calendar and available reservation dates for a restaurant. |
search_tabelog |
(same as search_restaurants) | Direct shortcut to Tabelog restaurant search. |
get_tabelog_restaurant_details |
(same as get_restaurant_details) | Direct shortcut to Tabelog restaurant profile. |
suggest_tabelog |
(same as suggest_dining) | Direct shortcut to Tabelog autocomplete. |
check_tabelog_reservation |
(same as check_restaurant_reservation) | Direct shortcut to Tabelog vacancy calendar. |
π§ Multi-Modal Transit & Routing
| Tool | Parameters | Description |
|---|---|---|
get_transit_and_directions |
origin, destination, travel_mode='all', country='KR', provider=None |
Calculates walking steps, public transit (subway/bus lines, transfers, fares), and driving taxi fares between any two places (hotels, restaurants, cafes, stations, airports). |
get_hotel_distance_and_transit |
origin, destination, travel_mode='all', country='KR', provider=None |
Alias for get_transit_and_directions. |
β Place & Venue Reviews
| Tool | Parameters | Description |
|---|---|---|
get_place_reviews |
place_or_hotel, provider='kakao', page=1, page_size=10 |
Fetches verified user reviews, star distributions, and reviewer feedback from Kakao Maps, Google Reviews (provider='google'), or Tabelog (provider='tabelog'). |
π¨ Accommodations & Hotels
| Tool | Parameters | Description |
|---|---|---|
search_hotels |
query, check_in, check_out, adults=2, children=0, rooms=1, min_price=None, max_price=None, provider='all', logged_in=True, limit=10 |
Searches Agoda, Booking.com, and/or Hotels.com in parallel with date, occupancy, and price filters. |
compare_hotel_prices |
hotel_name, check_in, check_out, adults=2, rooms=1 |
Runs a 3-way parallel price check across Agoda, Booking.com, and Hotels.com to find the cheapest rate. |
suggest_locations |
query, provider='all', limit=5 |
Autocompletes destination cities, districts, landmarks, and properties across Agoda, Booking.com, and Hotels.com. |
get_property_details |
hotel_id, provider='agoda', check_in=None, check_out=None, adults=2, children=0, rooms=1, logged_in=True |
Fetches property overview, address, amenities, and policies. |
get_room_grid |
hotel_id, provider='agoda', check_in="", check_out="", adults=2, children=0, rooms=1, logged_in=True |
Inspects room types, bed setups, breakfast inclusion, cancellation policies, and rates. |
get_hotel_reviews |
hotel_id, provider='agoda', page=1, page_size=10 |
Fetches verified traveler reviews and category scores. |
get_hotel_faq |
hotel_id, provider='agoda' |
Retrieves official verified hotel FAQs. |
get_login_status |
provider='all' |
Checks active authentication for Agoda (VIP), Booking.com (Genius), and Hotels.com (OneKey). |
interactive_login |
provider='agoda' |
Opens Chrome to sign-in portal if session expired (supports 'agoda', 'booking.com', or 'hotels.com'). |
MCP Prompts & Resources (MCP 2.0)
Prompts
plan_trip_itinerary(destination, check_in, check_out, adults, dining_preferences): End-to-end trip planning combining hotels, dining recommendations, and transit routes.search_japan_dining(query, prefecture, genre, meal_type): Discover top-rated dining spots and award winners in Japan.compare_hotel_deals(hotel_name, check_in, check_out, adults, rooms): 3-way price comparison and perk evaluation.search_destination_hotels(destination, check_in, check_out, adults, rooms): Search and rank accommodations.
Resources
travel://providers(andhotels://providers): Registry of accommodation, dining, routing, and review providers.travel://capabilities: Full capability breakdown across all travel domains.travel://status(andhotels://status): Live session & cookie health across all providers.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.