Best-time-to-book verdicts, live last-minute hotel deals, and city price calendars, from data.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
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.
Find hotels that have editorial reviews. Filter by city and minimum overall grade; optionally rank by one category (location, rooms, service, dining, facilities, value).
Only hotels in this city, e.g. 'Istanbul'
Max results to return (default 10)
Rank results by this category's grade
Minimum overall grade, e.g. 'B+'
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Find hotels that have editorial reviews. Filter by city and minimum overall grade; optionally rank by one category (location, rooms, service, dining, facilities, value).
| Argument | Type | Description |
|---|---|---|
| city | string | Only hotels in this city, e.g. 'Istanbul' |
| limit | integer | Max results to return (default 10) |
| category | string | Rank results by this category's grade |
| min_grade | string | Minimum overall grade, e.g. 'B+' |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Only hotels in this city, e.g. 'Istanbul'"
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Max results to return (default 10)"
},
"category": {
"enum": [
"location",
"rooms",
"service",
"dining",
"facilities",
"value"
],
"type": "string",
"description": "Rank results by this category's grade"
},
"min_grade": {
"enum": [
"A+",
"A",
"A-",
"B+",
"B",
"B-",
"C+",
"C",
"C-",
"D+",
"D",
"D-",
"F+",
"F",
"F-"
],
"type": "string",
"description": "Minimum overall grade, e.g. 'B+'"
}
},
"additionalProperties": false
}Get a data-backed verdict on whether to book a hotel now or wait, for a city and stay dates. Based on tracked daily median prices.
| Argument | Type | Description |
|---|---|---|
| city* | string | City name, e.g. 'Lisbon' |
| checkIn* | string | Check-in date, YYYY-MM-DD |
| checkOut* | string | Check-out date, YYYY-MM-DD |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city",
"checkIn",
"checkOut"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "City name, e.g. 'Lisbon'"
},
"checkIn": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Check-in date, YYYY-MM-DD"
},
"checkOut": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Check-out date, YYYY-MM-DD"
}
},
"additionalProperties": false
}Hot dates (events and holidays that push hotel prices up) and value windows (historically cheaper stretches) for a city in a date range.
| Argument | Type | Description |
|---|---|---|
| to | string | Range end, YYYY-MM-DD (default: one year from today) |
| city* | string | City name, e.g. 'Lisbon' |
| from | string | Range start, YYYY-MM-DD (default: today) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city"
],
"properties": {
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Range end, YYYY-MM-DD (default: one year from today)"
},
"city": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "City name, e.g. 'Lisbon'"
},
"from": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Range start, YYYY-MM-DD (default: today)"
}
},
"additionalProperties": false
}Editorial review of a specific hotel: overall letter grade, who it suits and who it doesn't, a six-category breakdown (location, rooms, service, dining, facilities, value), and a verdict. ~350 hotels covered; available in 19 languages.
| Argument | Type | Description |
|---|---|---|
| city | string | Optional city name to narrow the match |
| hotel* | string | Hotel name or slug, e.g. 'Artelist Hotel' or 'artelist-hotel-istanbul' |
| locale | string | Language for the review text (default: en) |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"hotel"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Optional city name to narrow the match"
},
"hotel": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Hotel name or slug, e.g. 'Artelist Hotel' or 'artelist-hotel-istanbul'"
},
"locale": {
"enum": [
"en",
"de",
"ru",
"fr",
"es",
"it",
"uz",
"tr",
"ar",
"zh",
"pt",
"id",
"ja",
"ko",
"th",
"pl",
"hi",
"nl",
"vi"
],
"type": "string",
"description": "Language for the review text (default: en)"
}
},
"additionalProperties": false
}Current last-minute hotel deals in a city: live rates below each hotel's tracked typical price, plus hotels that historically drop prices close to check-in.
| Argument | Type | Description |
|---|---|---|
| city* | string | City name, e.g. 'Lisbon' |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "City name, e.g. 'Lisbon'"
}
},
"additionalProperties": false
}List the cities with hotel booking-timing data on Best Time to Book Hotels. Optionally filter by a search string. Call this first to learn coverage.
| Argument | Type | Description |
|---|---|---|
| search | string | Optional filter matched against city and country names |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"search": {
"type": "string",
"maxLength": 100,
"description": "Optional filter matched against city and country names"
}
},
"additionalProperties": false
}