Skip to main content
Glama

@striderlabs/mcp-booking

MCP server for Booking.com — search hotels, check availability, manage reservations, and more via AI agents.

By Strider Labs


Overview

This MCP (Model Context Protocol) server gives AI agents the ability to interact with Booking.com using browser automation (Playwright). It supports 14 tools covering the full hotel booking workflow.

Tools

Tool

Description

booking_status

Check login/session status

booking_login

Initiate login flow (returns URL for manual login)

booking_logout

Clear saved session and cookies

booking_search

Search hotels by destination, dates, guests, rooms

booking_get_property

Get property details (amenities, description, policies)

booking_check_availability

Check room availability for specific dates

booking_get_prices

Get pricing for a property

booking_filter_results

Filter last search by price, rating, amenities

booking_sort_results

Sort last search by price/rating/distance/reviews

booking_save_property

Save to wishlist/favorites

booking_book

Book a room (requires confirm=true)

booking_get_reservations

List current/upcoming reservations

booking_cancel_reservation

Cancel a booking (requires confirm=true)

booking_get_reviews

Get guest reviews for a property

Requirements

  • Node.js 18+

  • A Booking.com account (for bookings, reservations, and wishlist)

Installation

npm install @striderlabs/mcp-booking

Or install Playwright browsers after install:

npx playwright install chromium

Configuration

Add to your MCP config (e.g. ~/.claude/mcp_servers.json):

{
  "mcpServers": {
    "booking": {
      "command": "npx",
      "args": ["-y", "@striderlabs/mcp-booking"]
    }
  }
}

Authentication

The server uses cookie-based session persistence. Cookies are stored at ~/.strider/booking/.

  1. Run booking_login to get the login URL

  2. Open the URL in your browser and sign in

  3. Run booking_status to verify the session is active

Usage Examples

Search hotels

booking_search(destination="Paris", checkIn="2026-06-01", checkOut="2026-06-05", adults=2, rooms=1)

Filter and sort results

booking_filter_results(maxPrice=200, minRating=8.0, freeCancellation=true)
booking_sort_results(sortBy="rating")

Check availability and prices

booking_check_availability(propertyUrl="https://www.booking.com/hotel/fr/...", checkIn="2026-06-01", checkOut="2026-06-05")
booking_get_prices(propertyUrl="...", checkIn="2026-06-01", checkOut="2026-06-05")

Book a room

# Preview first (no confirm flag)
booking_book(propertyUrl="...", checkIn="2026-06-01", checkOut="2026-06-05", adults=2)

# Confirm booking (only after explicit user approval)
booking_book(propertyUrl="...", checkIn="2026-06-01", checkOut="2026-06-05", adults=2, confirm=true)

Manage reservations

booking_get_reservations()
booking_cancel_reservation(reservationId="12345678", confirm=true)

Safety

  • booking_book requires confirm=true and should only be called with explicit user confirmation

  • booking_cancel_reservation requires confirm=true and is irreversible

  • Both tools return a preview/warning when called without the confirm flag

Development

npm install
npm run build
npm start

License

MIT — Strider Labs

-
license - not tested
-
quality - not tested
-
maintenance - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/markswendsen-code/mcp-booking'

If you have feedback or need assistance with the MCP directory API, please join our Discord server