Booking.com MCP Server
Community MCP server that lets AI agents search hotels, check availability, book stays, and manage reservations on Booking.com via Playwright browser automation.
The @striderlabs/mcp-booking server is a community-built Model Context Protocol implementation that exposes Booking.com's hotel marketplace to AI agents. It is not an official product of Booking.com. Instead of using a public API (Booking.com does not publish one for consumers), it drives a headless Chromium browser via Playwright to perform real interactions on the Booking.com website.
The server ships 14 tools that cover the full hotel booking workflow: session management (booking_login, booking_logout, booking_status), discovery (booking_search, booking_filter_results, booking_sort_results), property research (booking_get_property, booking_get_reviews, booking_check_availability, booking_get_prices), and transactional actions (booking_save_property, booking_book, booking_get_reservations, booking_cancel_reservation). Sessions are persisted locally at ~/.strider/booking/ after a one-time manual sign-in flow.
Because it operates via browser automation against a live consumer site, this server is best treated as a power-user or research tool. Booking.com may change its UI at any time, and automated traffic could violate the site's terms of service. There is no official Booking.com MCP server at this time; alternatives include Bright Data's general-purpose web MCP (which can scrape Booking.com data) or smaller community projects like esakrissa/hotels_mcp_server.
Tools
| Tool | Description |
|---|---|
booking_status |
Check whether the current Booking.com session is authenticated. |
booking_login |
Start a manual browser-based login flow and persist the session locally. |
booking_logout |
Clear stored cookies and end the Booking.com session. |
booking_search |
Search hotels by destination, check-in/check-out dates, and guest configuration. |
booking_get_property |
Retrieve full property details including amenities and policies. |
booking_check_availability |
Verify room availability for a given property and date range. |
booking_get_prices |
Fetch current pricing for a property and stay configuration. |
booking_filter_results |
Refine a search result set by price, star rating, or amenity features. |
booking_sort_results |
Order search results by price, rating, or distance. |
booking_save_property |
Add a property to the user's Booking.com wishlist. |
booking_book |
Reserve a room at the selected property. |
booking_get_reservations |
List the signed-in user's current and upcoming bookings. |
booking_cancel_reservation |
Cancel an existing reservation. |
booking_get_reviews |
Retrieve guest reviews for a property. |
Prerequisites
- Node.js 18 or later
- A Booking.com account (required for bookings, reservations, and wishlist tools)
- Chromium installed via Playwright
Install
npm install @striderlabs/mcp-booking
npx playwright install chromium
Claude Desktop / MCP client config
Add to ~/.claude/mcp_servers.json (or the equivalent config for your MCP client):
{
"mcpServers": {
"booking": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-booking"]
}
}
}
First-time login
- Call the
booking_logintool from the agent. - Open the returned URL in your browser and complete the Booking.com sign-in flow manually.
- Call
booking_statusto confirm the session is persisted.
Session cookies are stored at ~/.strider/booking/ and reused on subsequent runs. No API token or environment variable is required.
- Plan a multi-city trip by searching hotels across destinations, comparing prices, and shortlisting saved properties to the user's Booking.com wishlist.
- Monitor pricing for a specific property over time and alert the user when a target price is hit.
- Auto-book a hotel that matches strict criteria (price ceiling, rating floor, distance from a coordinate) without leaving the chat.
- Pull all upcoming reservations and summarize check-in dates, cancellation deadlines, and policies for a travel briefing.
- Pre-screen properties by aggregating recent reviews and amenities before a human makes the final booking decision.
- "Find 4-star hotels in Lisbon for June 12 to 16 for two adults, under 200 EUR a night, and save the top three to my wishlist."
- "Check availability and current price at property ID 1234567 for the weekend of July 5."
- "List my upcoming Booking.com reservations and tell me which ones can still be cancelled for free."
- "Summarize the last 50 reviews of this Tokyo hotel and flag any complaints about noise or cleanliness."
- "Cancel my Barcelona reservation for next Friday."
- Covers the full hotel booking workflow end to end, including search, booking, and cancellation, with 14 dedicated tools.
- No API key or paid plan required; authentication is a one-time manual browser login.
- Uses Playwright against the live site, so results reflect what a real Booking.com user would see.
- Not affiliated with or endorsed by Booking.com. Automating the consumer site may violate its terms of service.
- Browser automation is fragile: UI changes on Booking.com can break individual tools without notice.
- Performs real financial transactions through
booking_bookandbooking_cancel_reservation, so accidental agent actions can cost money.
- Bright Data MCP: general-purpose web data MCP that can scrape Booking.com listings without a dedicated booking workflow.
- esakrissa/hotels_mcp_server: lighter MCP server focused on hotel and destination search via the Booking.com API on RapidAPI.
- Apify Booking Scraper MCP: hosted Apify actor exposed as an MCP server for read-only Booking.com data extraction.