HolidayFox
Server Details
Search independent UK holiday stays, check live availability and exact prices, then open checkout.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 8 tools
Each tool has a clearly distinct role in the booking journey: search, listing details, availability, quote, addons, reviews, checkout, and owner messaging. The descriptions explicitly distinguish overlapping price-related tools, such as check_availability returning nightly prices while get_quote returns the authoritative total with addons. An agent should have no trouble selecting the right tool.
All tool names use consistent snake_case with a clear verb_noun pattern: search_stays, get_listing_details, check_availability, get_quote, list_addons, begin_checkout, get_reviews, and message_owner. The conventions are predictable and readable throughout.
Eight tools are well-scoped for a holiday-accommodation booking assistant, with each tool covering a meaningful step in the search-to-checkout flow. There are no unnecessary tools and no obvious need to split or merge operations.
The set covers search, details, availability, pricing, extras, reviews, checkout, and owner contact, which supports the core pre-booking workflow well. A minor gap exists around post-booking operations such as retrieving or cancelling an existing booking, though the described external payment flow makes this somewhat understandable.
Available Tools
8 toolsbegin_checkoutOpen HolidayFox checkoutAIdempotentInspect
Produce the secure HolidayFox checkout link for a quote. The guest opens the link and pays on holidayfox.com. This tool takes no payment and does not confirm a booking.
| Name | Required | Description | Default |
|---|---|---|---|
| quoteId | Yes | The quote id returned by get_quote. | |
| numAdults | Yes | ||
| numInfants | No | ||
| checkinDate | Yes | YYYY-MM-DD — must match the quote. | |
| numChildren | No | ||
| checkoutDate | Yes | YYYY-MM-DD — must match the quote. | |
| destinationId | Yes | ||
| accommodationTypeId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations declaring readOnlyHint=false, idempotentHint=true, destructiveHint=false and openWorldHint=true, the description usefully adds that the tool takes no payment and does not confirm a booking, and that payment happens on holidayfox.com. It omits auth requirements, link expiry, and re-invocation behavior, so it is good but not complete.
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, front-loaded with the action, then the flow, then the boundary. Every sentence carries information and nothing is padded.
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?
No output schema exists, yet the description never says what the returned link looks like or how long it is valid, and it leaves 5 of 8 parameters unexplained. For an 8-parameter tool with a real-world payment handoff, this is the minimum viable level rather than complete.
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 38% (quoteId, checkinDate, checkoutDate documented; destinationId, accommodationTypeId, numAdults/numChildren/numInfants not), and the description adds no parameter meaning at all. With low coverage, the description was expected to compensate and does not.
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 a specific verb and resource: 'Produce the secure HolidayFox checkout link for a quote.' An agent can tell this is the link-generation step rather than a payment or booking step. It does not explicitly name or contrast with any sibling tool (get_quote, check_availability), so it stops short of a 5.
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 only implied: the quoteId parameter reference in the schema points at get_quote, and the description's 'does not confirm a booking' establishes a boundary, but there is no explicit 'use this after get_quote when the guest is ready to pay' instruction or any named alternative. Adequate but inferential.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_availabilityCheck HolidayFox availabilityARead-onlyIdempotentInspect
Check which dates are free. With destinationId alone it returns the site-wide availability calendar. With accommodationTypeId it returns per-date availability and the party-adjusted nightly price for that one unit. Dates are YYYY-MM-DD and the window is limited to 120 days. Returns availability and nightly prices only; the full stay total comes from get_quote.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | Yes | YYYY-MM-DD | |
| numDogs | No | Dogs in the party. Affects availability at dog-friendly sites; not a separate charge here. | |
| numAdults | No | ||
| startDate | Yes | YYYY-MM-DD | |
| numInfants | No | ||
| numChildren | No | ||
| destinationId | Yes | ||
| accommodationTypeId | No | Optional — narrows to one unit type. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly/idempotent/non-destructive/openWorld, so the bar is lower, and the description adds real value: a hard 120-day window limit and an explicit statement of what is NOT returned (stay totals, deferred to get_quote). It does not discuss pagination or result size, so it stops short of 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 tight sentences, front-loaded with the core action, then mode behavior, then constraints, then the boundary with get_quote. Every sentence carries distinct information with no repetition of the name or title.
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 an 8-parameter read tool with no output schema, the description covers the essential contract: inputs' date format and window limit, the two query modes, and the exact return surface. Gaps are minor – the individual party-size parameters are only collectively implied.
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 50%, so the description must compensate, and it does for the two decisive parameters: it explains that destinationId alone yields the site-wide calendar while accommodationTypeId narrows to one unit type with pricing. It also notes the 120-day date limit and that party size ('party-adjusted price') affects results, though numAdults/numChildren/numInfants remain semantically undocumented.
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 and resource ('Check which dates are free') and immediately disambiguates the two operating modes: destinationId alone returns the site-wide calendar, accommodationTypeId returns per-date availability plus party-adjusted price. An agent can distinguish it from get_quote and search_stays without opening a schema.
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?
Explicitly says when to use each mode (destinationId alone vs adding accommodationTypeId) and routes the agent to the correct alternative for stay totals: 'the full stay total comes from get_quote.' No condition 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.
get_listing_detailsGet HolidayFox listing detailsBRead-onlyIdempotentInspect
Full facts about one HolidayFox destination: description, location, amenities, restrictions, check-in/out times, cancellation policy, whether it confirms instantly or by request, and every accommodation type with its size, sleeps, minimum stay and price. Data is live from the HolidayFox booking system.
| Name | Required | Description | Default |
|---|---|---|---|
| numDogs | No | Dogs in the party. Affects availability at dog-friendly sites; not a separate charge here. | |
| numAdults | No | ||
| numInfants | No | ||
| checkinDate | No | YYYY-MM-DD. With checkoutDate, prices each unit for that stay. | |
| numChildren | No | ||
| checkoutDate | No | YYYY-MM-DD. | |
| destinationId | Yes | From search_stays, e.g. "dest-MGaRjAwxGUrG". |
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 one genuinely useful behavioral fact — 'Data is live from the HolidayFox booking system' — signalling freshness, but says nothing about cost/latency of the call or whether prices appear only when dates are supplied.
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?
A single dense sentence that front-loads the core purpose and then enumerates outputs, with no filler. It is long but every clause maps to real returned data, so nothing feels wasted.
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 (amenities, cancellation policy, instant-vs-request booking, unit sizes/prices), which is the right move. It stops short of covering the optional date/party parameters and the call sequence, leaving gaps for a 7-param 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 coverage is only 57% and three optional params (numAdults, numInfants, numChildren) have no description anywhere. The description mentions check-in/out times, minimum stay and price as returned data but never explains that checkinDate/checkoutDate price each unit or how party size affects results, so it fails to compensate for the coverage gap.
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+resource ('Full facts about one HolidayFox destination') and enumerates the exact fields returned, so the agent knows precisely what this tool produces. It does not, however, differentiate itself from siblings like get_quote or check_availability, which also return stay-related data.
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?
There is no when-to-use guidance: nothing says to call this after search_stays and before get_quote/begin_checkout, nor when check_availability is the better choice. The only routing hint is the schema's note that destinationId comes from search_stays, which is schema-level, not description-level.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_quotePrice a HolidayFox stayARead-onlyIdempotentInspect
Get the authoritative total price for a specific stay directly from the HolidayFox booking system, including any length-of-stay discount and any optional extras passed in addons. Returns a quote id for begin_checkout, so the checkout total matches this quote, extras included. Does not hold the dates or make a booking.
| Name | Required | Description | Default |
|---|---|---|---|
| addons | No | Optional extras to include, from list_addons. The quoted total includes them. | |
| quantity | No | Number of units, default 1. | |
| numAdults | Yes | ||
| numInfants | No | ||
| checkinDate | Yes | YYYY-MM-DD | |
| numChildren | No | ||
| checkoutDate | Yes | YYYY-MM-DD | |
| accommodationTypeId | Yes | From search_stays or get_listing_details. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/openWorld, so the safety profile is covered. The description adds real context beyond them: pricing is authoritative and includes length-of-stay discounts and extras, the quote id must be reused at checkout for totals to match, and the call does not hold inventory or book. No auth or expiry/validity-window details, which is the remaining 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?
Three tight sentences, front-loaded with the core purpose, then the output linkage, then the negative scope. No filler or restatement of the title.
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 discloses the key return artifact (quote id) and its use. It also covers what the tool does not do. Minor gap: it does not say whether the quote expires or what happens when the stay is unavailable, which matters for a pricing call.
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 63%; four parameters (numAdults, numInfants, numChildren, quantity) carry no description anywhere. The description does add meaning for `addons` beyond the schema by stating the quoted total includes them and that they come from list_addons, but it does not compensate for the undocumented guest/quantity parameters.
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 (get) and resource (authoritative total price for a specific stay) sourced from the HolidayFox booking system. It also draws a clear boundary against siblings: 'Does not hold the dates or make a booking' separates it from check_availability, and the mention of begin_checkout distinguishes it from checkout.
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 explicit downstream context — the returned quote id feeds begin_checkout so the checkout total matches — and routes the addons input to list_addons. It stops short of naming check_availability as the alternative to use when the agent only wants availability rather than a price, so the when-not is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_reviewsRead HolidayFox guest reviewsARead-onlyIdempotentInspect
Read published guest reviews for a HolidayFox destination — star ratings, what guests said, and any reply from the owner. Returns an average rating and the most recent reviews.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max reviews to return, 1–10, default 5. | |
| destinationId | Yes | From search_stays or get_listing_details. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds meaningful context beyond that: only 'published' reviews are returned (a moderation filter) and the response includes an average rating plus the most recent reviews — useful given there is no output schema.
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 tight sentences with the resource and scope front-loaded and the return contents summarized immediately after. The middle clause enumerating 'star ratings, what guests said, and any reply' is slightly listy but earns its place by previewing the payload.
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 read tool whose annotations cover the safety profile and whose schema fully documents both parameters, the description covers the remaining gap — what comes back — by naming the average rating and recent reviews. Pagination behavior is not addressed, but with a hard cap of 10 results that is a minor omission.
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 only two parameters, so the schema fully documents both destinationId and limit (including the 1–10 range and default of 5). The description adds no syntax or format detail beyond what the schema already provides; baseline 3 applies.
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 and resource ('Read published guest reviews for a HolidayFox destination') and enumerates the payload (star ratings, guest text, owner reply). It does not explicitly distinguish itself from siblings such as get_listing_details, which could plausibly also surface review data.
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 offers no when-to-use guidance, no prerequisites, and no routing to or away from alternatives. The only hint about provenance ('destinationId from search_stays or get_listing_details') lives in the schema, not the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_addonsList HolidayFox extrasARead-onlyIdempotentInspect
List the optional extras a specific accommodation type offers — things like firewood, a hot-tub session, an extra guest, or breakfast — with their prices. Returns product ids accepted by get_quote as addons.
| Name | Required | Description | Default |
|---|---|---|---|
| destinationId | Yes | ||
| accommodationTypeId | Yes | From search_stays or get_listing_details. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is covered. The description adds genuinely non-obvious behavior: the return value is a set of product ids that are wired into get_quote's addons field, and prices accompany them. It does not describe pagination or empty-result behavior, hence 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?
Two tight sentences; the core purpose and examples lead, and the hand-off contract with get_quote is front-loaded in the same breath. 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?
There is no output schema, and the description compensates by explaining the return shape (product ids accepted as addons, plus prices). The main gap is the undocumented destinationId, which an agent must guess at.
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 50% — accommodationTypeId carries a provenance hint in the schema, but destinationId is undocumented in both schema and description. The description implies the pairing of a destination with an accommodation type but adds no format, id source, or constraint detail beyond what the schema already says.
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?
Specific verb (List) plus resource (optional extras for a given accommodation type), with concrete examples of what an extra is and a clear statement of what the results are for. It also differentiates itself by naming the sibling that consumes its output (get_quote).
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: call this to enumerate extras for a specific accommodation type, then feed the returned product ids into get_quote as addons. It does not state exclusions or when this should be skipped in favor of another sibling, so it falls just short of explicit 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.
message_ownerSend a message to the ownerAInspect
Send a guest's enquiry to the site owner by email; the owner replies to the guest directly. Suited to sold-out dates, questions the listing details leave open, and request-to-book sites. Requires the guest's name, email address and message.
| Name | Required | Description | Default |
|---|---|---|---|
| phone | No | Optional phone number, only if the guest offered it. | |
| message | Yes | The enquiry in the guest’s words — dates, party, and the specific question. | |
| guestName | Yes | The guest's name, as they gave it. | |
| numAdults | No | ||
| guestEmail | Yes | The guest's email, so the owner can reply. Must be a real address the guest gave you. | |
| checkinDate | No | Optional YYYY-MM-DD the enquiry is about. | |
| numChildren | No | ||
| checkoutDate | No | Optional YYYY-MM-DD. | |
| destinationId | Yes | The site the enquiry is about. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare the mutation profile (readOnly=false, destructive=false, openWorld=true, idempotent=false), and the description adds what those hints cannot: the message is delivered by email to a third party and the owner replies to the guest directly, so the agent understands the reply does not come back through this tool. It does not mention failure modes or delivery confirmation.
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, purpose front-loaded, then usage conditions and required inputs. No filler, no restatement of the title.
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 9-parameter mutation with no output schema, the description covers purpose, usage conditions, and required inputs adequately. The two uncovered parameters (numAdults, numChildren) are partially implied by 'dates, party' in the message field, but are not addressed directly.
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 78%, so the schema already documents most fields with useful guidance. The description only restates the required trio (name, email, message), adding no format or constraint detail beyond what the schema provides; numAdults/numChildren remain undocumented in both.
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, and channel: send a guest's enquiry to the site owner by email. No sibling tool in the list (check_availability, get_quote, begin_checkout, etc.) performs messaging, and the description makes the routing role explicit.
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 when-to-use conditions: sold-out dates, questions the listing details leave open, and request-to-book sites. The phrase 'questions the listing details leave open' implicitly routes away from get_listing_details, but no explicit exclusion or alternative is named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_staysSearch HolidayFox staysARead-onlyIdempotentInspect
Search HolidayFox for UK holiday accommodation — farm stays, glamping, shepherd huts, caravan and camping pitches, and self-catering cottages. Filter by area and by amenity/audience tags. When checkinDate and checkoutDate are supplied, each result carries the live total price for that exact stay and only genuinely bookable options are counted. Returns destination ids used by the other tools.
| Name | Required | Description | Default |
|---|---|---|---|
| area | No | Region key, lowercase and hyphenated, e.g. "cornwall", "north-devon", "peak-district". | |
| tags | No | Optional facet filters, e.g. [{"key":"hot-tub","category":"AMENITY"}]. | |
| after | No | Pagination cursor from a previous search. | |
| limit | No | 1–25, default 10. | |
| numDogs | No | Dogs in the party. Affects availability at dog-friendly sites; not a separate charge here. | |
| numAdults | No | Default 2. | |
| numInfants | No | ||
| checkinDate | No | YYYY-MM-DD. Supply with checkoutDate for live stay pricing. | |
| numChildren | No | ||
| checkoutDate | No | YYYY-MM-DD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly, idempotent, non-destructive and openWorld, so the bar is lower. The description still adds real value by disclosing that supplying dates yields live total pricing, that only genuinely bookable options are counted, and that numDogs affects availability. It stops short of explaining failures or rate limits.
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?
Front-loaded with the core purpose, then filters, then the date-driven pricing behavior, then the return hint. Four tight sentences, each carrying distinct information with 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?
For a 10-parameter search tool with no output schema, the description covers filters, the date/pricing interaction, and pagination context from the schema. Return values are only briefly characterized ('destination ids'), so the shape of the result list is not fully described, but nothing critical for calling it 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 coverage is 80% with strong per-parameter descriptions, so the baseline is 3. The description adds meaning beyond the schema by tying checkinDate/checkoutDate to live pricing and bookability, and by framing area/tags as the primary filter axes.
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 (Search) plus a concrete resource (HolidayFox UK holiday accommodation) and enumerates the accommodation types it covers. This clearly distinguishes it from siblings like get_listing_details, get_quote, and check_availability without opening any schema.
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 clear context for two modes: area/tag filtering and date-driven live pricing, and hints that returned destination ids feed the other tools. However, it never explicitly states when to prefer this tool over check_availability or get_quote, leaving the workflow chaining to inference.
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.
8 tool updates
- First observed
begin_checkout - First observed
check_availability - First observed
get_listing_details - First observed
get_quote - First observed
get_reviews - First observed
list_addons - First observed
message_owner - First observed
search_stays
Related MCP Connectors
Find, price and book independent campsites with live availability; guests pay the campsite directly.
Search and book verified independent vacation rentals directly from hosts, with no guest fees.
Book vacation rentals direct: search homes, check live availability, get a real total.
Search hotels, get live prices, and check out in chat. Guest search needs no sign-in.
Related MCP Servers
- AlicenseAqualityAmaintenanceVacation rental software. A signed stay offer on the host's own domain. Agents discover a host domain, verify an Ed25519-signed offer (VRP), and send the guest to that domain to book and pay the host. Do not compare hosts or prices. HemmaBo + VRP, 6 runtime tools: 2 HemmaBo tools, 2 host onboarding tools, and 2 VRP verification tools. Not an OTA. Not a marketplace.76340 npm3Apache 2.0
- AlicenseBqualityAmaintenanceOfficial MCP server for MAQAMI, a hotel and flight booking platform with 3M+ hotels. Search live hotel rates and flights, look up places, airports and hotel details, then prebook and book. Remote Streamable HTTP endpoint, no API key required.12898 npm1MIT
- -
- AlicenseAqualityFmaintenanceReal-time last-minute tour and activity booking across 18 suppliers in 15 countries via the OCTO open standard. Search available slots, create Stripe checkout sessions, and check booking status.41MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.