projects / hotelbeds-mcp

Hotelbeds MCP server

An MCP server that lets an agent find, price, book and cancel hotel stays through the Hotelbeds Booking API, and look up destinations and hotel details through the Content API. A proof of concept: sandbox only, not production-ready.

MCP server Travel 9 tools Node.js MIT ● PoC · sandbox

What it does

Covers the hotel booking lifecycle on Hotelbeds, from availability search to cancellation, plus the content an agent needs to describe a hotel properly. Validated end to end against the Hotelbeds sandbox.

Set HOTELBEDS_API_KEY and HOTELBEDS_SECRET from your own sandbox account. The same key pair covers both APIs.

Tools

GroupTools
Bookingsearch_hotels, check_rate, create_booking, get_booking, get_cancellation_quote, cancel_booking
Contentlist_destinations, list_hotels_content, get_hotel_details

What I learned building it

  1. Every request needs a fresh signature. Hotelbeds signs each call with SHA256 over key, secret and the current timestamp, and doesn’t support CORS. A browser can’t call it directly, so anything user-facing needs a server-side proxy.
  2. The minimum rate is for the whole stay, not per night. Agents get this wrong unless the tool description says so explicitly.
  3. Facility filters can’t go into the availability query. “Spa” or “beachfront” have to be filtered on your side, against a cached content index.
  4. Sandbox prices drift. A 2% price tolerance caused booking failures. Re-checking the rate immediately before booking, with a fresh rate key, fixed them.

Limitations

This is a proof of concept. Sandbox only, no caching layer, no production error handling or support. Don’t use it with live credentials.