Booking.com stays by destination and dates, and full property details, as structured JSON.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
HasData API key, created at app.hasdata.com. 1,000 free credits every month, no card.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Get Booking Hotel Details Fetches a single Booking.com property by its full URL for the given stay dates (`checkInDate` / `checkOutDate`) and guest composition (rooms, adults, children with ages). Returns the property identity (hotelId, title, address, coordinates), policies (free cancellation, no prepayment, child/pet stays), price, rating and review summary, photos, and the list of available room suites for the requested window. Use to enrich property listings with real-time availability and pricing, monitor a specific competitor hotel over time, validate amenities and photos before displaying venue details to end users, or fetch full details after discovering the property URL via the Booking Search endpoint.
Full Booking.com URL of the property page. Only `booking.com` and `www.booking.com` hosts are accepted.
Number of rooms to book.
Number of adult guests across all rooms.
Number of child guests across all rooms (0–10). Pass `0` if there are no children.
Check-in date in `YYYY-MM-DD` format. Must be in the future and earlier than `checkOutDate`.
Check-out date in `YYYY-MM-DD` format. Must be later than `checkInDate`.
Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency. Provide one exact documented value (52 allowed), e.g. `hotelCurrency`, `usd`.
Language of the Booking.com interface and localized fields in the response.
Comma-separated list of child ages, one entry per child (each `0`–`17`). Required when `children > 0` and the number of ages must equal `children`. Example: `1,3,7`
Get Booking Hotel Details Fetches a single Booking.com property by its full URL for the given stay dates (`checkInDate` / `checkOutDate`) and guest composition (rooms, adults, children with ages). Returns the property identity (hotelId, title, address, coordinates), policies (free cancellation, no prepayment, child/pet stays), price, rating and review summary, photos, and the list of available room suites for the requested window. Use to enrich property listings with real-time availability and pricing, monitor a specific competitor hotel over time, validate amenities and photos before displaying venue details to end users, or fetch full details after discovering the property URL via the Booking Search endpoint.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full Booking.com URL of the property page. Only `booking.com` and `www.booking.com` hosts are accepted. |
| rooms* | number | Number of rooms to book. |
| adults* | number | Number of adult guests across all rooms. |
| children* | number | Number of child guests across all rooms (0–10). Pass `0` if there are no children. |
| currency | string | Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency. Provide one exact documented value (52 allowed), e.g. `hotelCurrency`, `usd`. |
| language | string | Language of the Booking.com interface and localized fields in the response. |
| checkInDate* | string | Check-in date in `YYYY-MM-DD` format. Must be in the future and earlier than `checkOutDate`. |
| checkOutDate* | string | Check-out date in `YYYY-MM-DD` format. Must be later than `checkInDate`. |
| childrenAges | string | Comma-separated list of child ages, one entry per child (each `0`–`17`). Required when `children > 0` and the number of ages must equal `children`. Example: `1,3,7` |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url",
"checkInDate",
"checkOutDate",
"rooms",
"adults",
"children"
],
"properties": {
"url": {
"type": "string",
"description": "Full Booking.com URL of the property page. Only `booking.com` and `www.booking.com` hosts are accepted."
},
"rooms": {
"type": "number",
"description": "Number of rooms to book."
},
"adults": {
"type": "number",
"description": "Number of adult guests across all rooms."
},
"children": {
"type": "number",
"description": "Number of child guests across all rooms (0–10). Pass `0` if there are no children."
},
"currency": {
"type": "string",
"description": "Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency. Provide one exact documented value (52 allowed), e.g. `hotelCurrency`, `usd`."
},
"language": {
"enum": [
"en-us",
"en-gb",
"de",
"nl",
"fr",
"es",
"es-ar",
"es-mx",
"ca",
"it",
"pt-pt",
"pt-br",
"no",
"fi",
"sv",
"da",
"cs",
"hu",
"ro",
"ja",
"zh-cn",
"zh-tw",
"pl",
"el",
"ru",
"tr",
"bg",
"ar",
"ko",
"he",
"lv",
"uk",
"hi",
"id",
"ms",
"th",
"et",
"hr",
"lt",
"sk",
"sr",
"sl",
"vi",
"tl",
"is"
],
"type": "string",
"description": "Language of the Booking.com interface and localized fields in the response."
},
"checkInDate": {
"type": "string",
"description": "Check-in date in `YYYY-MM-DD` format. Must be in the future and earlier than `checkOutDate`."
},
"checkOutDate": {
"type": "string",
"description": "Check-out date in `YYYY-MM-DD` format. Must be later than `checkInDate`."
},
"childrenAges": {
"type": "string",
"description": "Comma-separated list of child ages, one entry per child (each `0`–`17`). Required when `children > 0` and the number of ages must equal `children`.\n\nExample: `1,3,7`\n"
}
},
"additionalProperties": false
}Get Booking Search Results Searches Booking.com for accommodations by destination keyword and stay dates (`checkInDate` / `checkOutDate`) with guest composition (rooms, adults, children with ages) and rich filtering: property type, star rating, review score, hotel and room facilities, distance from center, reservation policy, bed preference, travel group, online payment, accessibility, plus optional price range and bedroom/bathroom counts. Pagination is page-based with 25 results per page; locale is controlled by `language` and `currency`. Returns each hotel's `hotelId`, title and Booking URL, location info (city, address, coordinates, distance to center / nearest beach), policies (free cancellation, no prepayment, child/pet stays), price (per stay, before discount, discount, currency), rating, review summary and main photo. Use to power travel-planning agents, OTA price/inventory monitoring, hotel competitor analysis, lead-generation in the hospitality vertical, or to feed `hotelId` / URL into the Booking Place endpoint for full property details.
| Argument | Type | Description |
|---|---|---|
| page | number | Page number of the search results. Booking.com returns 25 results per page; pass `2` for results 26–50, `3` for 51–75, etc. |
| sort | string | Sort order applied by Booking.com to the results page. |
| rooms* | number | Number of rooms to book. |
| adults* | number | Number of adult guests across all rooms. |
| keyword* |
| string |
| Free-text destination query. Usually a city, region or neighborhood (e.g. `Paris`, `Manhattan, New York`); a specific property name is also accepted. |
| meals__ | array | Filter by available meal plans. Multiple values are combined with OR. |
| bedrooms | number | Minimum number of bedrooms in the property. |
| children* | number | Number of child guests across all rooms (0–10). Pass `0` if there are no children. |
| currency | string | Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency. Provide one exact documented value (52 allowed), e.g. `hotelCurrency`, `usd`. |
| language | string | Language of the Booking.com interface and localized fields in the response. |
| rating__ | array | Filter by official star rating. Multiple values are combined with OR. |
| bathrooms | number | Minimum number of bathrooms in the property. |
| price_max_ | number | Maximum total price for the stay, in the requested `currency`. Must be `>= 20` and greater than `price[min]`. Required if `price[min]` is omitted. |
| price_min_ | number | Minimum total price for the stay, in the requested `currency`. Must be `>= 10`. Required if `price[max]` is omitted. |
| checkInDate* | string | Check-in date in `YYYY-MM-DD` format. Must be in the future and earlier than `checkOutDate`. |
| checkOutDate* | string | Check-out date in `YYYY-MM-DD` format. Must be later than `checkInDate`. |
| childrenAges | string | Comma-separated list of child ages, one entry per child (each `0`–`17`). Required when `children > 0` and the number of ages must equal `children`. Example: `1,3,7` |
| facilities__ | array | Filter by property-level facilities. Multiple values are combined with OR. |
| reviewScore__ | array | Filter by minimum guest review score bucket. Multiple values are combined with OR. |
| travelGroup__ | array | Filter by travel-group oriented stay options. Multiple values are combined with OR. |
| propertyType__ | array | Filter by property type. Multiple values are combined with OR. |
| bedPreference__ | array | Filter by bed configuration. Multiple values are combined with OR. |
| onlinePayment__ | array | Filter by online payment options. |
| roomFacilities__ | array | Filter by in-room facilities. Multiple values are combined with OR. |
| reservationPolicy__ | array | Filter by reservation flexibility. Multiple values are combined with OR. |
| roomAccessibility__ | array | Filter by in-room accessibility features. Multiple values are combined with OR. |
| distanceFromCenter__ | array | Filter by distance from the destination center. Multiple values are combined with OR. |
| propertyAccessibility__ | array | Filter by property-level accessibility features. Multiple values are combined with OR. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"keyword",
"checkInDate",
"checkOutDate",
"rooms",
"adults",
"children"
],
"properties": {
"page": {
"type": "number",
"description": "Page number of the search results. Booking.com returns 25 results per page; pass `2` for results 26–50, `3` for 51–75, etc."
},
"sort": {
"enum": [
"ourTopPicks",
"homesAndApartmentsFirst",
"priceLowestFirst",
"priceHighestFirst",
"bestReviewedAndLowestPrice",
"ratingHighToLow",
"ratingLowToHigh",
"ratingAndPrice",
"distanceFromDowntown",
"topReviewed"
],
"type": "string",
"description": "Sort order applied by Booking.com to the results page."
},
"rooms": {
"type": "number",
"description": "Number of rooms to book."
},
"adults": {
"type": "number",
"description": "Number of adult guests across all rooms."
},
"keyword": {
"type": "string",
"description": "Free-text destination query. Usually a city, region or neighborhood (e.g. `Paris`, `Manhattan, New York`); a specific property name is also accepted."
},
"meals__": {
"type": "array",
"items": {
"enum": [
"breakfastIncluded",
"kitchenFacilities"
],
"type": "string"
},
"description": "Filter by available meal plans. Multiple values are combined with OR."
},
"bedrooms": {
"type": "number",
"description": "Minimum number of bedrooms in the property."
},
"children": {
"type": "number",
"description": "Number of child guests across all rooms (0–10). Pass `0` if there are no children."
},
"currency": {
"type": "string",
"description": "Currency of the prices returned in the response. Use `hotelCurrency` to keep each property's native currency. Provide one exact documented value (52 allowed), e.g. `hotelCurrency`, `usd`."
},
"language": {
"enum": [
"en-us",
"en-gb",
"de",
"nl",
"fr",
"es",
"es-ar",
"es-mx",
"ca",
"it",
"pt-pt",
"pt-br",
"no",
"fi",
"sv",
"da",
"cs",
"hu",
"ro",
"ja",
"zh-cn",
"zh-tw",
"pl",
"el",
"ru",
"tr",
"bg",
"ar",
"ko",
"he",
"lv",
"uk",
"hi",
"id",
"ms",
"th",
"et",
"hr",
"lt",
"sk",
"sr",
"sl",
"vi",
"tl",
"is"
],
"type": "string",
"description": "Language of the Booking.com interface and localized fields in the response."
},
"rating__": {
"type": "array",
"items": {
"enum": [
"oneStar",
"twoStars",
"threeStars",
"fourStars",
"fiveStars"
],
"type": "string"
},
"description": "Filter by official star rating. Multiple values are combined with OR."
},
"bathrooms": {
"type": "number",
"description": "Minimum number of bathrooms in the property."
},
"price_max_": {
"type": "number",
"description": "Maximum total price for the stay, in the requested `currency`. Must be `>= 20` and greater than `price[min]`. Required if `price[min]` is omitted."
},
"price_min_": {
"type": "number",
"description": "Minimum total price for the stay, in the requested `currency`. Must be `>= 10`. Required if `price[max]` is omitted."
},
"checkInDate": {
"type": "string",
"description": "Check-in date in `YYYY-MM-DD` format. Must be in the future and earlier than `checkOutDate`."
},
"checkOutDate": {
"type": "string",
"description": "Check-out date in `YYYY-MM-DD` format. Must be later than `checkInDate`."
},
"childrenAges": {
"type": "string",
"description": "Comma-separated list of child ages, one entry per child (each `0`–`17`). Required when `children > 0` and the number of ages must equal `children`.\n\nExample: `1,3,7`\n"
},
"facilities__": {
"type": "array",
"items": {
"enum": [
"swimmingPool",
"parking",
"spa",
"freeWifi",
"hotTubJacuzzi",
"airportShuttle",
"fitnessCenter",
"restaurant",
"nonSmokingRooms",
"frontDesk24Hour",
"electricVehicleChargingStation",
"wheelchairAccessible",
"roomService"
],
"type": "string"
},
"description": "Filter by property-level facilities. Multiple values are combined with OR."
},
"reviewScore__": {
"type": "array",
"items": {
"enum": [
"wonderful",
"veryGood",
"good",
"pleasant"
],
"type": "string"
},
"description": "Filter by minimum guest review score bucket. Multiple values are combined with OR."
},
"travelGroup__": {
"type": "array",
"items": {
"enum": [
"adultsOnly",
"petFriendly"
],
"type": "string"
},
"description": "Filter by travel-group oriented stay options. Multiple values are combined with OR."
},
"propertyType__": {
"type": "array",
"items": {
"enum": [
"hostels",
"bedAndBreakfast",
"hotels",
"apartments",
"resorts",
"guesthouses",
"homestays",
"entireHomesAndApartments"
],
"type": "string"
},
"description": "Filter by property type. Multiple values are combined with OR."
},
"bedPreference__": {
"type": "array",
"items": {
"enum": [
"twinBeds",
"doubleBed"
],
"type": "string"
},
"description": "Filter by bed configuration. Multiple values are combined with OR."
},
"onlinePayment__": {
"type": "array",
"items": {
"enum": [
"acceptsOnlinePayments"
],
"type": "string"
},
"description": "Filter by online payment options."
},
"roomFacilities__": {
"type": "array",
"items": {
"enum": [
"privateBathroom",
"balcony",
"seaView",
"kitchenKitchenette",
"airConditioning",
"bathtub",
"hotTub",
"view",
"spaTub",
"upperFloorsAccessibleByElevator",
"microwave",
"refrigerator",
"coffeeMachine",
"electricKettle",
"heating",
"towels",
"toilet",
"mountainView",
"flatScreenTv",
"tv",
"coffeeTeaMaker",
"hairdryer",
"toiletPaper",
"shower",
"linens"
],
"type": "string"
},
"description": "Filter by in-room facilities. Multiple values are combined with OR."
},
"reservationPolicy__": {
"type": "array",
"items": {
"enum": [
"freeCancellation",
"noPrepayment"
],
"type": "string"
},
"description": "Filter by reservation flexibility. Multiple values are combined with OR."
},
"roomAccessibility__": {
"type": "array",
"items": {
"enum": [
"upperFloorsAccessibleByElevator",
"entireUnitLocatedOnGroundFloor",
"walkInShower",
"entireUnitWheelchairAccessible",
"adaptedBath",
"rollInShower",
"showerChair",
"emergencyCordInBathroom",
"toiletWithGrabRails",
"raisedToilet",
"lowerSink"
],
"type": "string"
},
"description": "Filter by in-room accessibility features. Multiple values are combined with OR."
},
"distanceFromCenter__": {
"type": "array",
"items": {
"enum": [
"lessThan1Km",
"lessThan3Km",
"lessThan5Km"
],
"type": "string"
},
"description": "Filter by distance from the destination center. Multiple values are combined with OR."
},
"propertyAccessibility__": {
"type": "array",
"items": {
"enum": [
"auditoryGuidance",
"toiletWithGrabRails",
"visualAidsTactileSigns",
"visualAidsBraille",
"bathroomEmergencyCord",
"raisedToilet",
"loweredSink"
],
"type": "string"
},
"description": "Filter by property-level accessibility features. Multiple values are combined with OR."
}
},
"additionalProperties": false
}