Staylist.world
Server Details
Free hotel discovery for AI assistants: search hotels, retrieve property details and photos, and get affiliate booking links. Previously observed nightly prices are indicative; travelers confirm current prices and availability with the booking provider. No account or API key required. Bookings and payments happen on partner websites. Documentation: https://staylist.world/agents
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 4 tools
Each tool has a fairly distinct role: search_hotels finds properties, get_hotel fetches details, get_booking_link returns the outbound booking URLs, and list_destinations suggests starting points. The only mild overlap is that get_hotel also returns booking links, which could confuse an agent about when to prefer get_booking_link.
All four tools follow a clean snake_case verb_noun pattern (get_booking_link, get_hotel, list_destinations, search_hotels). The convention is uniform and each name clearly signals its action and target.
Four tools is a lean but coherent surface for a hotel discovery/referral service: search, detail, links, and destinations. It is slightly thin (no separate reviews or availability tool) but every tool earns its place and nothing seems redundant.
The read-only domain is well covered: destination discovery, hotel search, detailed hotel info with offers, and outbound booking links, plus clear boundaries that booking/payment happen off-platform. Minor gaps exist (e.g., a dedicated review or availability-focused tool), but core traveler workflows are complete.
Available Tools
4 toolsget_booking_linkGet hotel booking linksARead-onlyIdempotentInspect
Return the approved booking links for a hotel (the same links shown to people on staylist.world) plus the Staylist hotel page. Property links open the exact hotel on Trip.com or Klook, where the traveler picks dates and room; preserve these URLs unchanged. Dated offer links, when present, are sorted by total; primary is never a commission preference. The traveler completes checkout on the booking site; this tool cannot book or charge anyone.
| Name | Required | Description | Default |
|---|---|---|---|
| adults | No | ||
| checkin | No | Calendar date in YYYY-MM-DD format; provide both dates or neither | |
| checkout | No | Calendar date in YYYY-MM-DD format; provide both dates or neither | |
| hotel_id | Yes | Exact hotel id returned by search_hotels | |
| children_ages | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), so the description's added value is the operational context: links mirror what is publicly shown on staylist.world, URLs must be preserved unchanged, dated offers are sorted by total, and primary is not a commission preference. It omits anything about caching, rate limits, or failure modes, so not a 5.
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?
Four sentences, front-loaded with what is returned and followed by the operational constraints; each sentence carries distinct information. Slightly dense but no filler.
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?
With no output schema, the description correctly carries the return-value burden (booking links plus hotel page, dated offers sorted by total). It could say more about what happens when no dated offers exist or how the links are keyed, but it is sufficient for correct invocation.
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 coverage is 60% and the description adds no parameter-level meaning at all (nothing about adults, checkin/checkout pairing, or children_ages). The schema documents the date-pair coupling and the hotel_id provenance itself, so the baseline 3 is appropriate for a description that neither compensates nor misleads.
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?
States a specific verb+resource (return approved booking links for a hotel) and adds scope detail (the Staylist hotel page, property links opening on Trip.com/Klook). It is plainly distinguishable from siblings like get_hotel and search_hotels, which fetch hotel data rather than booking URLs.
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?
Usage is implied by the purpose and there is one negative condition ('this tool cannot book or charge anyone'), which usefully rules out a mistaken intent. However, it never states when to prefer this over get_hotel or search_hotels, nor the prerequisites (e.g. needing a hotel_id from search_hotels).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_hotelCompare hotel offersARead-onlyIdempotentInspect
Hotel details: photos, address, star class, amenities, Trip.com review summary (score, review count, cleanliness/amenities/location/service sub-scores, what guests mention, highlights), check-in/out times, child policy, nearest airport/station, and booking links; for live-provider hotels also booking-site offers for the requested dates and guests (total, room, cancellation, conditions). refundable=null means unknown. Prices are not guaranteed. Preserve dates and occupancy from the search.
| Name | Required | Description | Default |
|---|---|---|---|
| adults | No | ||
| checkin | No | Calendar date in YYYY-MM-DD format; provide both dates or neither | |
| checkout | No | Calendar date in YYYY-MM-DD format; provide both dates or neither | |
| hotel_id | Yes | Exact hotel id returned by search_hotels | |
| children_ages | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds genuinely useful behavioral caveats beyond those: 'refundable=null means unknown', 'Prices are not guaranteed', and that booking-site offers appear only for live-provider hotels.
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?
It leads with the resource ('Hotel details:') which is good front-loading, but the bulk is one very long run-on enumeration of return fields. It is dense and readable but not tightly scoped; the field list could have been trimmed since much of it is enumerative rather than decision-relevant.
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?
With no output schema, the description usefully enumerates the returned fields (photos, review sub-scores, policies, transfer info, booking links, offers), so an agent knows what to expect. It also warns about unpriced/unknown refundability and non-guaranteed prices, covering the main surprises for a detail-plus-offer tool.
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 60%, with the checkin/checkout pairing constraint and the hotel_id provenance already documented in the schema. The description only adds the implicit requirement to reuse search dates and occupancy, without clarifying format or bounds for adults/children_ages, so it neither compensates for nor much improves on the schema.
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 states the resource precisely ('Hotel details' plus live-provider booking offers for the requested dates and guests) and enumerates the content returned, so an agent can tell it is a detail/offer lookup rather than a search. It does not explicitly name or contrast itself with siblings like search_hotels or get_booking_link, leaving differentiation to inference.
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 closing sentence 'Preserve dates and occupancy from the search' implies the intended workflow (call after search_hotels, carry over checkin/checkout/adults), which is useful contextual guidance. However there is no explicit when-to-use/when-not-to-use statement and no direct routing to get_booking_link for link-only needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_destinationsBrowse popular destinationsARead-onlyIdempotentInspect
Popular starting points with country codes. Optional; this list does not restrict which destinations can be searched. No provider search quota is used with the live provider.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavior not in annotations: it consumes no provider search quota and reflects the live provider, which matters for call budgeting.
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, no filler, and the key constraint (the list does not restrict searches) is placed early. Slightly fragmentary opening but appropriately sized for a trivial tool.
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 no-parameter, no-output-schema listing tool with strong annotations, the description covers what it returns, that it is optional, and its quota behavior. Only the return shape/size is unspecified, which is a minor gap given no output schema exists.
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?
Zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. No param claims are made that could mislead.
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 conveys that this returns a set of popular destinations with country codes, but 'Popular starting points' is loose phrasing that never states the action (listing/browsing) plainly. It is distinguishable from sibling search/get tools by resource, though no sibling is named.
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?
It clarifies that the list is optional and does not restrict which destinations can be searched, which is real routing guidance for an agent deciding whether it must call this first. It never states a positive condition for when to call it, so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_hotelsSearch hotelsARead-onlyIdempotentInspect
Find hotels by city, name or preferences (query words also match amenities and guest mentions, e.g. "pool", "breakfast"). Cities in Staylist's catalogue return hotels that each have an approved partner booking link (Trip.com, Klook), with a score, Trip.com guest rating, review sub-scores and what guests mention, star class, amenities, check-in/out times and nearby transport where collected, photos and a sample_estimate (a previously observed nightly price, not a quote for the dates). Other cities use a live provider with indicative prices for an explicit stay. Supply both dates or neither. One room, 1–8 adults and up to 6 children. Use get_booking_link for the traveler's link. Never send names, email addresses or payment details.
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| limit | No | ||
| query | No | ||
| stars | No | ||
| adults | No | ||
| checkin | No | Calendar date in YYYY-MM-DD format; provide both dates or neither | |
| checkout | No | Calendar date in YYYY-MM-DD format; provide both dates or neither | |
| min_rating | No | ||
| country_code | No | ||
| children_ages | No | ||
| max_price_per_night | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover the read-only/idempotent safety profile; the description adds substantial context beyond them: the two sourcing modes (Staylist catalogue vs live provider), what data is returned, and the critical caveat that sample_estimate is a previously observed price, not a quote. It also discloses a privacy rule ('Never send names, email addresses or payment details').
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 purpose is front-loaded and the sentences are dense with useful detail rather than filler. The description is long and somewhat run-on in the return-value sentence, but nearly every clause earns its place.
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?
With no output schema, the description usefully enumerates what results contain (score, guest rating, amenities, photos, sample_estimate) and states operational constraints and a privacy rule. It is nearly complete for an 11-parameter search tool, with only a few filter parameters left unaddressed.
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 only 18%, so the description must compensate, and it does explain query semantics, the paired-date rule, and occupancy limits. However, it leaves several parameters (stars, min_rating, max_price_per_night, country_code, limit) undefined, so meaningful gaps remain.
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?
Starts with a specific verb+resource ('Find hotels') and immediately scopes it by city, name or preference queries, including that query words also match amenities and guest mentions. It clearly separates itself from siblings by routing booking-link needs to get_booking_link.
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?
Gives concrete usage constraints ('Supply both dates or neither', 'One room, 1–8 adults and up to 6 children') and names the alternative tool for booking links. It does not explicitly state when to prefer get_hotel or list_destinations, so it falls short of full when/when-not guidance.
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.
4 tool updates
- First observed
get_booking_link - First observed
get_hotel - First observed
list_destinations - First observed
search_hotels
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.1622 npm1MIT
- AlicenseCqualityAmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs119 npm37 PyPIMIT
- AlicenseNot gradedqualityBmaintenanceEnables tracking competitor websites, changelogs, blog feeds, and pricing pages with meaningful diffs, classification, and Markdown digests via MCP tools for listing, adding, removing competitors, running checks, and retrieving digests or changes.MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.