Déstaire
Server Details
A curated guide to luxury hotels and private stays in Europe, with travel writing and city guides.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 8 tools
Each tool targets a distinct resource/action: articles, destinations, guides, and stays. The get/list/search verbs clearly separate detail retrieval, enumeration, and stay search, so an agent is unlikely to confuse the tools.
All tool names follow a consistent snake_case verb_noun convention, with singular nouns for getters and plural nouns for listers. search_stays fits the same verb_resource pattern, and there are no mixed naming styles or vague verbs.
Eight tools is well within the ideal range and each tool earns its place for this travel content domain. There are no redundant or trivial tools.
The tool surface covers the core read-only lifecycle of the domain: browse articles, destinations, guides, and stays; retrieve full details; and search stays with useful filters. List results provide URLs/slugs that connect to getters and search filters, so there are no obvious dead ends. Write operations are not expected for this public-facing content server.
Available Tools
8 toolsget_articleGet an articleRead-onlyIdempotentInspect
One article: its opening paragraphs, or with detail "full" its whole text with every list of places.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | The article's slug, the last part of its URL. | |
| detail | No | "concise" (the default): the start of the answer and a count, to save context; "full": all of it. | concise |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | |
| note | No | |
| text | Yes | |
| photo | Yes | |
| title | Yes | |
| author | Yes | |
| category | Yes | |
| published | Yes | |
| truncated | Yes | |
| standfirst | Yes |
get_destinationGet a destinationRead-onlyIdempotentInspect
One destination and its stays: the first 10 and the total, or all of them with detail "full".
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | The destination's slug, the last part of its URL. | |
| detail | No | "concise" (the default): the start of the answer and a count, to save context; "full": all of it. | concise |
| country | No | The country, when two destinations share a slug. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | |
| name | Yes | |
| note | No | |
| stays | Yes | |
| total | Yes | |
| country | Yes |
get_guideGet a city guideARead-onlyIdempotentInspect
One city guide's public shop page: its standfirst, what it holds, its price, and photo URLs. The guide itself is sold on its page.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | The guide's slug, the last part of its URL. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | |
| city | Yes | |
| price | Yes | |
| title | Yes | |
| onSale | Yes | |
| photos | Yes | |
| country | Yes | |
| sections | Yes | |
| standfirst | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so safety is covered. The description adds valuable behavioral context beyond that: the page is public, it is a shop page rather than guide content, the guide is sold on the page, and the returned data includes price and photo URLs. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no filler. The primary purpose is front-loaded, the return contents are listed compactly, and the 'sold on its page' sentence adds useful context without bloating the description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity one-parameter getter, the description is complete: it explains what the tool returns, that the page is public, what the guide is, and that it is sold at that page. The output schema and readOnly annotations supply the remaining return-format and safety information, so nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter, slug, and the schema already provides a full description including its role as the last part of the guide's URL, a pattern, and max length. The tool description does not need to repeat this, so the baseline of 3 applies since the schema carries the semantic burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: retrieving one city guide's public shop page, and enumerates the exact contents returned (standfirst, contents, price, photo URLs). The word 'One' clearly differentiates this single-item getter from list_guides and aligns with sibling get_* tools without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the usage context clear: use this when you need a single city guide's public shop page, identified by slug. It does not explicitly name list_guides or other alternatives, but the singular and public-shop-page framing gives enough context for correct selection among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_stayGet a stayARead-onlyIdempotentInspect
One stay as its page shows it: description, address, location, website, "from" rate, amenities, collections, and photo URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | The stay's slug, the last part of its URL. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | |
| lede | Yes | |
| name | Yes | |
| rate | Yes | The "from" rate: the lowest nightly price over the next six months, checked each week. |
| town | Yes | |
| photos | Yes | |
| address | Yes | |
| country | Yes | |
| website | Yes | |
| location | Yes | |
| amenities | Yes | |
| collections | Yes | |
| description | Yes | |
| destination | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which cover the safety profile. The description adds value by listing the specific content returned, but it does not disclose edge cases like not-found behavior or response format. Since annotations carry the safety burden, the description's additional content detail earns a 3, not lower.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the core purpose ('One stay as its page shows it') and then lists the key fields. There is no redundancy or filler, and every element contributes to understanding what the tool does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a simple one-parameter getter with an output schema (as indicated by the signal), the description covers the returned fields and the annotations cover safety. It does not mention error handling or pagination (not applicable here), but for a get single item, the description is largely complete. A minor gap is not specifying the return format beyond the field list, but that is likely covered by the output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema documents the 'slug' parameter fully with a description and pattern. The tool description adds no further semantic detail about the parameter, so the baseline of 3 applies given 100% schema coverage. The description does not compensate or add nuance beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'get' and resource 'stay', and clarifies it returns a single stay as shown on its page. The enumerated fields (description, address, location, website, rate, amenities, collections, photo URLs) make the tool's scope precise and distinguishable from list/search siblings like list_stays or search_stays.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving a single stay by slug, but it does not explicitly state when to use this tool over alternatives such as 'search_stays' or 'list_*' tools. There is no mention of conditions, exclusions, or alternative routing, leaving the selection to inference from the sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_articlesList articlesARead-onlyIdempotentInspect
The travel writing, newest first: title, standfirst, author, category, date, and page URL.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | The most articles to give. | |
| category | No | Only this category. |
Output Schema
| Name | Required | Description |
|---|---|---|
| total | Yes | |
| articles | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already cover the read-only, idempotent, and non-destructive safety profile. The description adds the behavioral guarantee of newest-first ordering and enumerates output fields, though the output schema likely already documents those fields. Pagination and empty-result behavior are not mentioned, but this is a minor gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler, front-loading the content type and ordering before listing fields. It is compact and readable, though the phrase 'The travel writing' is slightly awkward as an opening.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with two optional parameters, full schema coverage, an output schema, and read-only annotations, the description is largely complete. The main missing element is explicit guidance about sibling alternatives, but that is more of a usage-guideline concern than a completeness gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both limit and category already described in the input schema. The description adds no additional meaning about parameter behavior beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource as travel writing and specifies newest-first ordering plus the returned fields, making the operation clear. Combined with the title 'List articles', it is distinguishable from get_article and the destination/guide list tools, though it does not name them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for listing travel articles, which gives some usage context. However, it does not explicitly state when to prefer this over get_article, list_destinations, list_guides, or search_stays, so alternative routing is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_destinationsList destinations and collectionsARead-onlyIdempotentInspect
The countries and destinations that have stays, and the collections (Coast, City, Mountain…), each with its number of stays. Their names and slugs are the filters of search_stays.
| Name | Required | Description | Default |
|---|---|---|---|
| country | No | Only this country: a name or an ISO code. |
Output Schema
| Name | Required | Description |
|---|---|---|
| countries | Yes | |
| collections | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given the strong annotations (readOnly, idempotent, non-destructive), the description adds useful behavioral context: it returns only destinations/countries that have stays, includes stay counts, and enumerates collection categories. It does not contradict the annotations and provides meaningful semantics beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The description is front-loaded with the core purpose and then immediately adds the relationship to search_stays, earning every word.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema covers return values, annotations cover safety and idempotency, and the description covers the semantic purpose and downstream use in search_stays. Nothing essential is missing for an agent to call this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single optional country parameter, so the schema carries the parameter documentation. The description adds no additional meaning about the country filter, but the baseline of 3 is appropriate because the schema already fully explains it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (destinations and collections), the action (list), and the specific scope (those that have stays, with counts). It also explicitly names the sibling relationship to search_stays by stating that returned names and slugs are filters, which differentiates this from other list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states an explicit use case: the returned names and slugs are the filters for search_stays. This effectively tells an agent when to call this tool, though it does not explicitly name alternatives or say when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_guidesList city guidesARead-onlyIdempotentInspect
The city guides on sale: city, standfirst, price, and the URL of the page where a reader can buy the guide.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| guides | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered and the description does not contradict it. The description adds the 'on sale' semantic and output fields, but no additional behavioral traits such as pagination, ordering, or filtering behavior, keeping it at baseline.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence front-loads the core concept ('The city guides on sale') and then enumerates the returned fields. There is no filler, repetition of annotations, or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the empty parameter schema, read-only annotations, and presence of an output schema, the description is sufficient for basic invocation and understanding of what the tool returns. It could be slightly more explicit about whether this is the complete set of guides or whether any selection behavior applies, but the tool is simple enough that this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema description coverage is effectively 100%, so the baseline for parameter semantics is 4. The description's field list concerns output, not parameters, so there is nothing extra needed here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('city guides') and the specific data returned (city, standfirst, price, buy URL), so an agent can tell this is a listing tool for guides. It does not include an explicit verb like 'list' or 'return' in the description itself, and it does not explicitly contrast with sibling tools, so it falls just short of the top score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'on sale' implies the use case: an agent needing purchasable city guides with price and buy URL. However, the description does not name alternatives or explain when to prefer list_guides over get_guide, list_articles, or list_destinations, so the guidance remains implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_staysSearch staysARead-onlyIdempotentInspect
Find hotels and private stays by plain words, with optional filters for country, destination, collection, amenities, and a nightly budget in euros. Best matches first. Gives each stay's page URL, place, short description, and "from" rate.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | "relevance" (best match first) or "rate" (lowest rate first). | relevance |
| limit | No | The most stays to give. | |
| query | No | What the reader wants, in plain words: "quiet hotel on Lake Como with a spa". Stays that match more words come first. | |
| country | No | Only this country: a name or an ISO code, such as "France" or "FR". | |
| max_rate | No | Only stays whose "from" rate is at most this many euros a night (a week rate counts a seventh). Stays with no rate are left out. | |
| amenities | No | Only stays that have each of these, by word: "spa", "pool", "beach", "tennis". | |
| collection | No | Only this collection: a name or a slug, such as "Coast". list_destinations lists them. | |
| destination | No | Only this destination: a name or a slug, such as "Provence". |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| stays | Yes | |
| total | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description does not need to re-state safety. It adds useful behavioral context by noting 'Best matches first' and listing the returned fields, which helps the agent set expectations without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with the core action front-loaded. Every clause earns its place: what the tool finds, how results are ordered, and what output fields are returned. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich input schema covering all 8 optional parameters, explicit annotations, and an output schema, the description is complete enough. It adds the high-level user intent and result shape, and nothing an agent needs to invoke the tool correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description summarizes the filter categories (country, destination, collection, amenities, budget) but does not add semantic detail beyond what the schema already gives; it is a useful orienting summary but not a meaning extension.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Find hotels and private stays by plain words', a specific verb and resource that clearly identifies this as a search tool. The optional filters and 'from' rate output further distinguish it from sibling retrieve tools like get_stay and list_destinations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly presents this as the tool for finding stays by free-text words and filters, giving the agent an obvious trigger condition. It does not explicitly name alternatives like get_stay for known stays, so it stops short of a full when-not, but the search-versus-get distinction is strongly implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Changed
get_article4 fields changed- added
Input schema / properties / detailAdded value: +{ + "default": "concise", + "description": "\"concise\" (the default): the start of the answer and a count, to save context; \"full\": all of it.", + "enum": [ + "concise", + "full" + ], + "type": "string" +} - added
Output schema / properties / noteAdded value: +{ + "type": "string" +} - added
Output schema / properties / truncatedAdded value: +{ + "type": "boolean" +} - changed
Output schema / requiredPrevious value: -[ - "title", - "url", - "standfirst", - "author", - "category", - "published", - "photo", - "text" -]New value: +[ + "title", + "url", + "standfirst", + "author", + "category", + "published", + "photo", + "text", + "truncated" +]
- Changed
get_destination4 fields changed- added
Input schema / properties / detailAdded value: +{ + "default": "concise", + "description": "\"concise\" (the default): the start of the answer and a count, to save context; \"full\": all of it.", + "enum": [ + "concise", + "full" + ], + "type": "string" +} - added
Output schema / properties / noteAdded value: +{ + "type": "string" +} - added
Output schema / properties / totalAdded value: +{ + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" +} - changed
Output schema / requiredPrevious value: -[ - "name", - "url", - "country", - "stays" -]New value: +[ + "name", + "url", + "country", + "total", + "stays" +]
8 tool updates
- First observed
get_article - First observed
get_destination - First observed
get_guide - First observed
get_stay - First observed
list_articles - First observed
list_destinations - First observed
list_guides - First observed
search_stays
Related MCP Connectors
Luxury hotel search, rate comparison, booking quotes, and secure checkout handoff.
Editorial guide to restaurants and bars — hand-picked venues with opinions, not a places database
Search and book luxury villa rentals across Europe with real-time availability and pricing.
Verified food venues in 206 cities with provenance, festivals with dates, bookable tours and stays.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceLuxury hotel intelligence and secure checkout handoff for AI travel agents.1Apache 2.0

Departi MCP Serverofficial
AlicenseAqualityBmaintenanceTravel compliance and trip planning for digital nomads — visa requirements, tax residency analysis, Schengen 90/180-day tracking, and curated accommodation, transport, and experience search across 189 European destinations.7MIT- AlicenseNot gradedqualityDmaintenanceBook hotels worldwide — search, price, prebook & book across 249 countries. 65 tools for hotel search, flights, loyalty, analytics. Zero API keys needed. at best prices for hotels 3 M+ property5 npm1MIT
- AlicenseAqualityAmaintenanceSearch vacation rental properties, check real-time availability, get canonical pricing quotes, and create direct bookings. Each property is its own node with live data. Supports staircase pricing, seasonal rates, and 11 languages.41332 npm3Apache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.