Hotel MCP
Hotel MCP server: live Booking.com rates in Claude, Cursor and ChatGPT
FlightPowers' hotel MCP server gives Claude, Cursor and ChatGPT live Booking.com room rates by destination or by hotel name, with a price_as_seen_from parameter that prices the stay as a shopper in another country would see it. Free with ads at free-trial.flightpowers.com/mcp (Google sign-in, 50 searches a day); ad-free on your own RapidAPI key, where PRO is $10 for 2,000 searches. A hotel data server, not a booking engine.
Also called a Booking.com MCP or a hotel price MCP. It is hosted: you add a URL, nothing runs on your machine.
https://hotels.flightpowers.com/mcpYour client shows a Sign in button. Sign in with Google; your first 10 searches each day run free and ad-free with nothing pasted, and you paste your RapidAPI key once on the page that opens when you want more.
Is there an MCP server for hotel prices?
Yes. FlightPowers runs a hosted hotel MCP server at hotels.flightpowers.com/mcp: add the URL to Claude, Cursor, ChatGPT or any MCP client, sign in with Google, and the assistant can price hotels by destination or by name, live from Booking.com.
Is there a Booking.com MCP?
This is one: its tools read live Booking.com availability and rates at request time and return each property's total price, review score, room type, position and a booking link. It reads rates; it does not make reservations.
Can it show the price a shopper in another country sees?
Yes. price_as_seen_from takes a two-letter country code and prices the stay through a connection in that country. Gaps between countries are real but usually modest and depend on the property, so hold one hotel fixed and call each country a few times before you call it a gap.
The country comparison, measured on fixed properties with repeat samples, is on the geo-pricing page. On the REST API the same control is called proxy_country.
One real search
25 Lisbon hotels in one tool call
Two adults, November 11 to 16. I sent this call to hotels.flightpowers.com/mcp on 2026-10-06 at 19:54 UTC; it is the call an assistant makes for that question. It came back in about 9 seconds and billed 1 request.
{
"name": "search_hotels",
"arguments": {
"destination": "Lisbon",
"checkin_date": "2026-11-11",
"checkout_date": "2026-11-16",
"adults": 2,
"currency": "usd"
}
}{
"result_count": 25,
"results": [
{
"name": "JAM Lisbon",
"price": 648,
"price_string": "US$648",
"review_score": 8.9,
"review_count": 3713,
"room_type": "Standard Double Room",
"nights": 5,
"latitude": 38.70535,
"longitude": -9.158693
},
{
"name": "HF Fénix Lisboa",
"price": 809,
"price_string": "US$809",
"review_score": 8.6,
"review_count": 3261,
"room_type": "Economy Double or Twin Room",
"nights": 5,
"latitude": 38.72496514876953,
"longitude": -9.151086956262589
}
],
"api_usage": {
"requests_used_by_this_call": 1
}
}| Property | Room | Score | 5 nights | Per night |
|---|---|---|---|---|
| JAM Lisbon | Standard Double Room | 8.9 | US$648 | US$130 |
| HF Fénix Lisboa | Economy Double or Twin Room | 8.6 | US$809 | US$162 |
| Vila Garden Guesthouse | Double Room | 9.1 | US$543 | US$109 |
| Madalena by The Beautique Hotels | Superior Double Room | 8.8 | US$809 | US$162 |
| Charme apartamentos Bairro alto | One-Bedroom Apartment | 7.6 | US$512 | US$102 |
| HF Fénix Garden | Economy Double or Twin Room | - | US$721 | US$144 |
The first six rows in the order Booking.com ranked them. The cheapest of all 25 was V Dinastia at US$299 for the stay (US$60 a night). Every row also carries latitude, longitude and a booking link. Rates move by the minute, so read this as a captured run, not a price you can book today.
Connect it
One URL, any MCP client
The same address works for every client. A client with a sign-in button gets a Google sign-in; a script sends your key in a header instead.
Claude (claude.ai and Desktop)
Settings, Connectors, Add custom connector, paste https://hotels.flightpowers.com/mcp, press Connect and sign in with Google.
Claude Code
claude mcp add --transport http hotels https://hotels.flightpowers.com/mcpThen open /mcp in a session and sign in.
ChatGPT
Settings, Connectors, turn on developer mode, add the URL as a connector with OAuth authentication, and sign in with Google.
Cursor and any mcp.json client
{
"mcpServers": {
"hotels": { "url": "https://hotels.flightpowers.com/mcp" }
}
}Scripts, CI and clients with no sign-in button
{
"mcpServers": {
"hotels": {
"url": "https://hotels.flightpowers.com/mcp",
"headers": { "x-rapidapi-key": "YOUR_RAPIDAPI_KEY" }
}
}
}A client that takes only a URL can put the key on it: ?rapidapi_key=. Treat that URL as a secret.
The tools, printed raw
3 tools, read from a live tools/list
Names, titles, hints and every parameter as hotels.flightpowers.com/mcp returned them on 2026-10-06. Each parameter line is the first sentence of the server's own description.
search_hotels
FlightPowers: search hotels · required: destination · readOnlyHint true · idempotentHint false
FlightPowers hotel search: live Booking.com availability and nightly prices for a destination and date range.
| destination | Where to stay, in free text the way a person would say it, e.g. "Rome" or "Tokyo Shibuya". |
| checkin_date | First night of the stay, "YYYY-MM-DD". Give this with checkout_date for one stay, or use checkin_date_from plus checkin_date_to for a range of check-in dates. |
| checkout_date | Departure morning, "YYYY-MM-DD". Must be after checkin_date. |
| checkin_date_from | First check-in date of a range, "YYYY-MM-DD". |
| checkin_date_to | Last check-in date of the range, "YYYY-MM-DD". |
| nights | How many nights to stay, as a number (3) or a list ([2, 3, 7]) to price several lengths. |
| max_searches | The billed requests this call may make, up or down. |
| adults | Number of adult guests. Defaults to the upstream default when omitted. |
| children | Number of children sharing the room. |
| currency | ISO currency code for the prices returned, e.g. "usd". |
| budget_per_night | Only return properties at or below this nightly price, in `currency`. |
| price_as_seen_from | Two-letter country code, e.g. "de". Prices the stay through a residential connection in that country, so the result is what a shopper resident there would be quoted. |
| filters | Property filters to apply, e.g. ["free_cancellation", "breakfast_included"]. |
| providers | Which sources to price this stay on, e.g. ["booking"], ["airbnb"] or ["booking", "airbnb"]. |
find_hotel_by_name
FlightPowers: find one hotel by name · required: hotel_name · readOnlyHint true · idempotentHint false
FlightPowers single-property lookup: live Booking.com availability and pricing for one named property.
| hotel_name | The property name a person would type, e.g. "Hotel Artemide". |
| checkin_date | First night of the stay, "YYYY-MM-DD". Give this with checkout_date for one stay, or use checkin_date_from plus checkin_date_to for a rate calendar. |
| checkout_date | Departure morning, "YYYY-MM-DD". Must be after checkin_date. |
| checkin_date_from | First check-in date of a range, "YYYY-MM-DD". |
| checkin_date_to | Last check-in date of the range, "YYYY-MM-DD". |
| nights | How many nights to stay, as a number (3) or a list ([2, 3, 7]) to price several lengths. |
| max_searches | The billed requests this call may make, up or down. |
| adults | Number of adult guests. |
| children | Number of children sharing the room. |
| currency | ISO currency code for the prices returned, e.g. "usd". |
| price_as_seen_from | Two-letter country code, e.g. "de". Prices the stay as a shopper resident in that country would see it. |
compare_hotel_rates
FlightPowers: compare hotel rates across sources · required: destination, checkin_date, checkout_date · readOnlyHint true · idempotentHint false
FlightPowers cross-source comparison: prices one stay on every source you have a key for.
| destination | Where to stay, in free text the way a person would say it, e.g. "Rome" or "Tokyo Shibuya". |
| checkin_date | First night of the stay, "YYYY-MM-DD". |
| checkout_date | Departure morning, "YYYY-MM-DD". Must be after checkin_date. |
| adults | Number of adult guests. Defaults to the upstream default when omitted. |
| children | Number of children sharing the room. |
| currency | ISO currency code for every row, e.g. "usd". |
| providers | Which sources to price, e.g. ["booking", "airbnb"]. |
Booking.com is the source a FlightPowers hotels key covers. The providers argument and compare_hotel_rates price a stay only on sources you hold a key for, and list the rest as skipped.
What it costs
Free to try, $10 on your own key
Try it free
free-trial.flightpowers.com/mcp: Google sign-in, no key, 50 searches a day and 250 a month, one sponsored card per result.
PRO on your key
$10 a month for 2,000 hotel searches, 25 a minute, no ads.
Bigger plans
ULTRA $30 for 6,500, MEGA $75 for 25,000. Billing runs on RapidAPI, month to month. All plans.
More questions
- Is there a free hotel MCP?
- Yes, free-trial.flightpowers.com/mcp: sign in with Google and you get hotel and flight search with no key, 50 searches a day and 250 a month, with one labelled sponsored card on each result. Use it to try the tools; use the ad-free server on this page, on your own RapidAPI key, for anything you ship.
- What does a search cost on my key?
- One stay is one request on your RapidAPI plan. The Lisbon run on this page returned 25 properties for 1 request. PRO is $10 for 2,000 searches a month; BASIC is free with 10 a month, enough to check the setup works.
- Can it price several dates in one call?
- Yes, on this server. checkin_date_from, checkin_date_to and nights price one stay per check-in date in a single call, and find_hotel_by_name does the same for one property, which gives you a rate calendar. Each stay is one billed request.
- Is the price per night or for the stay?
- For the stay. Every row carries nights, so a nightly rate is one division away.
Keep going
Where to next
Both MCP servers
The hub: flights and hotels, every way to connect
Google Flights MCP server
Live fares for the same clients
Travel MCP servers compared
11 servers, read on the same day
Pricing by country
A repeat-sampled run across markets
Hotels API (REST)
The same data over plain HTTP
Hotel search in Claude
The prompt and the tool it calls
Hotels in n8n
The same rates in a workflow
Status
The uptime probe and nightly tests
Ask your assistant for a hotel rate
Add the URL, sign in with Google, and ask for hotels in any city on your dates. Every row comes back with the room, the score and a booking link.
Free tier: 10 requests/month. No card to try.
Docs: the Hotels API and the MCP servers.