EscapeStays by Luxury Lodging
Book vacation rentals direct: search homes, check live availability, get a real total.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"luxury-lodging": {
"url": "https://stay.luxurylodgingpm.com/mcp"
}
}
}遠端端點
https://stay.luxurylodgingpm.com/mcpstreamable-http它能做什麼
工具清單
工具(6)
🟢search_properties(query, market, check_in, check_out, guests, ...)
Searches Luxury Lodging's directly bookable vacation rentals by destination, dates, group size, bedrooms and amenities. With dates, only homes confirmed available are returned, each with a stay total that includes cleaning, fees and taxes; nightly rates exclude them. Interchangeable units of the same type are returned once, with every unit's id listed in `similar_units` so any of them can still be quoted and booked; `limit` counts those results, while `total_matching` counts the individual homes confirmed available. A busy market can hold more homes than one request can price, so `unpriced_in_time` counts matching homes whose availability was not established: they are unknown, not unavailable. Pet-friendly searches also report `pet_policy_unknown`: otherwise matching homes with unverified pet policies, with or without dates. While either count is above zero, the results are not the whole market; `price_all_matches`, a higher `limit`, or a narrower place covers more of it.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Free text place, e.g. 'Tampa', 'near Chicago downtown', a neighbourhood or a landmark."
},
"market": {
"type": "string",
"description": "Market or city name, when the guest named one exactly."
},
"check_in": {
"type": "string",
"description": "Check-in date, YYYY-MM-DD. Availability is checked only when both dates are given."
},
"check_out": {
"type": "string",
"description": "Check-out date, YYYY-MM-DD."
},
"guests": {
"type": "integer",
"minimum": 1,
"maximum": 40,
"description": "Number of guests, including children."
},
"bedrooms_min": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Fewest bedrooms acceptable."
},
"bathrooms_min": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Fewest bathrooms acceptable."
},
"pets": {
"type": "boolean",
"description": "The guest is bringing a pet. Results are limited to pet-friendly homes, dated totals include the pet fee, and booking links keep the pet selection."
},
"amenities": {
"type": "array",
"items": {
"type": "string",
"enum": [
"pool",
"hot_tub",
"parking",
"wifi",
"kitchen",
"washer",
"pets"
]
},
"description": "Amenities every returned home has, as recorded by the property manager."
},
"max_total": {
"type": "integer",
"minimum": 1,
"description": "Budget for the whole stay in dollars, including cleaning, fees and taxes. Applies only when dates are given."
},
"sort": {
"type": "string",
"enum": [
"total_price_asc",
"total_price_desc",
"from_price_asc",
"sleeps_desc"
],
"description": "total_price_* needs dates and orders by the stay total; from_price_asc orders by starting nightly rate; sleeps_desc puts the largest homes first."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "How many properties to return (default 8)."
},
"price_all_matches": {
"type": "boolean",
"description": "Prices every matching home rather than a fast sample, so total_matching is the real count and the cheapest result is genuinely the cheapest. Slower, and still bounded: unpriced_in_time counts any homes it did not reach."
}
},
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"matches": {
"type": "integer",
"description": "How many results this response carries."
},
"total_matching": {
"type": "integer",
"description": "How many individual homes matched, counting every interchangeable unit."
},
"total_matching_groups": {
"type": "integer",
"description": "How many distinct unit types matched."
},
"unpriced_in_time": {
"type": "integer",
"description": "Matching homes whose availability was not established for these dates, because their pet policy could not be verified, a quote failed, the request ran out of budget, or it did not reach them. They are unknown, not unavailable. `price_all_matches`, a higher `limit`, or a narrower place establishes more of them."
},
"pet_policy_unknown": {
"type": "integer",
"description": "Otherwise matching homes omitted from a pet-friendly search because their pet policy is unknown, not confirmed to prohibit pets. Applies with or without dates; included in unpriced_in_time when dated. A positive count means the pet-friendly inventory is incomplete."
},
"searched_location": {
"type": [
"string",
"null"
]
},
"dates_checked": {
"type": "boolean",
"description": "False means availability is unknown and every price is a starting nightly rate."
},
"availability_note": {
"type": "string"
},
"properties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"property_id": {
"type": "integer"
},
"name": {
"type": "string"
},
"neighbourhood": {
"type": [
"string",
"null"
],
"description": "Neighbourhood-level location only; the exact address is shared after booking."
},
"city": {
"type": "string"
},
"state": {
"type": [
"string",
"null"
]
},
"property_type": {
"type": [
"string",
"null"
]
},
"bedrooms": {
"type": [
"number",
"null"
]
},
"bathrooms": {
"type": [
"number",
"null"
]
},
"sleeps": {
"type": [
"integer",
"null"
]
},
"from_price_per_night": {
"type": [
"number",
"null"
],
"description": "Starting nightly rate, not a stay total. Without dates, this is all that is known. Null means no starting rate is published for this home, not that it is free or cheap; from_price_note says why."
},
"from_price_note": {
"type": "string",
"description": "Only present when from_price_per_night is null: what is and is not visible about this home's calendar. A null starting rate means neither that the home is booked out nor that it is ready to book."
},
"stay_total": {
"type": "number",
"description": "Total for the requested dates including cleaning, fees and taxes. Only present when dates were given and the home was priced."
},
"stay_total_display": {
"type": "string"
},
"nights": {
"type": "integer"
},
"avg_per_night": {
"type": "number",
"description": "stay_total divided by nights. A derived figure, not a rate the home charges; stay_total is the price of the stay."
},
"avg_per_night_display": {
"type": "string"
},
"top_amenities": {
"type": "array",
"items": {
"type": "string"
}
},
"review_count": {
"type": "integer",
"description": "How many 4- and 5-star reviews this home has. It is a count, not a rating; no average rating exists for any home."
},
"review_sources": {
"type": "array",
"items": {
"type": "string"
},
"description": "Which platforms those reviews came from."
},
"highlights": {
"type": "array",
"items": {
"type": "string"
},
"description": "Up to three short phrases describing what sets the home apart."
},
"photo": {
"type": [
"string",
"null"
]
},
"booking_url": {
"type": "string",
"description": "Where the guest completes the booking on Luxury Lodging's own site."
},
"similar_units": {
"type": "object",
"description": "Only present when interchangeable units of this type exist; any of these ids can be quoted and booked.",
"properties": {
"count": {
"type": "integer"
},
"note": {
"type": "string"
},
"property_ids": {
"type": "array",
"items": {
"type": "integer"
}
}
},
"required": [
"count",
"note",
"property_ids"
]
}
},
"required": [
"property_id",
"name",
"city",
"top_amenities",
"review_count",
"review_sources",
"highlights",
"booking_url"
]
}
}
},
"required": [
"matches",
"total_matching",
"total_matching_groups",
"unpriced_in_time",
"dates_checked",
"availability_note",
"properties"
]
}🟢list_markets
Every city where Luxury Lodging has directly bookable homes, with the state or region, the country, how many homes and the largest group each can sleep. It shows whether a destination is covered, including when a guest has not named a place.
輸入結構描述
{
"type": "object",
"properties": {},
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"markets_count": {
"type": "integer"
},
"homes_count": {
"type": "integer"
},
"markets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"city": {
"type": "string"
},
"state": {
"type": [
"string",
"null"
],
"description": "State, province or region as the provider files it."
},
"country": {
"type": [
"string",
"null"
],
"description": "Not every destination is in the United States; two cities can share a name across countries."
},
"homes": {
"type": "integer"
},
"sleeps_max": {
"type": "integer",
"description": "The largest group any single home in this market sleeps."
},
"collection_url": {
"type": "string",
"description": "The public page for this market, when it has enough homes to have one. It lists the homes and their neighbourhoods."
}
},
"required": [
"city",
"homes",
"sleeps_max"
]
}
},
"note": {
"type": "string"
}
},
"required": [
"markets_count",
"homes_count",
"markets",
"note"
]
}🟢get_property_details(property_id)
Full detail for one property: bedrooms, capacity, amenities recorded by the property manager, photos, house rules and the real check-in, check-out, deposit and pet policies for that specific home. Location is given at neighbourhood level; the exact address is shared after booking. Guest reviews are a selection of 4- and 5-star reviews, each with its source; no average rating exists.
輸入結構描述
{
"type": "object",
"properties": {
"property_id": {
"type": "string",
"description": "Property id or the slug from a booking link."
}
},
"required": [
"property_id"
],
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"property_id": {
"type": "integer"
},
"name": {
"type": "string"
},
"alias": {
"type": [
"string",
"null"
]
},
"property_type": {
"type": [
"string",
"null"
]
},
"location": {
"type": "object",
"properties": {
"neighbourhood": {
"type": [
"string",
"null"
],
"description": "Neighbourhood-level location only; the exact address is shared after booking."
},
"city": {
"type": "string"
},
"state": {
"type": [
"string",
"null"
]
},
"country": {
"type": [
"string",
"null"
],
"description": "Null when the provider gave none; the country is then unknown."
}
},
"required": [
"city",
"country"
]
},
"bedrooms": {
"type": [
"number",
"null"
]
},
"bathrooms": {
"type": [
"number",
"null"
]
},
"beds": {
"type": [
"number",
"null"
]
},
"sleeps": {
"type": [
"integer",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"amenities": {
"type": "array",
"items": {
"type": "string"
}
},
"amenities_source": {
"type": "string",
"enum": [
"provider",
"unavailable"
]
},
"photos": {
"type": "array",
"items": {
"type": "string"
}
},
"policies": {
"type": "object",
"description": "This home's own policies, not portfolio defaults, when policies_source is \"provider\".",
"properties": {
"check_in_from": {
"type": "string"
},
"check_in_until": {
"type": [
"string",
"null"
]
},
"check_out_by": {
"type": "string"
},
"cancellation": {
"type": "string"
},
"security_deposit_hold": {
"type": "number",
"description": "A refundable hold, not part of the total charged at booking."
},
"pets_allowed": {
"type": "boolean",
"description": "Omitted when pet policy could not be verified."
},
"pet_policy_note": {
"type": "string"
},
"pet_fee": {
"type": [
"number",
"null"
],
"description": "For a stay with one pet, from the fee table the quote charges from. Null when the home charges none; omitted when it could not be verified, and pet_fee_note says why."
},
"pet_fee_basis": {
"type": "string",
"enum": [
"per stay",
"per pet",
"per pet per night"
],
"description": "How pet_fee applies. A per-pet-per-night fee multiplies by the nights."
},
"pet_fee_note": {
"type": "string"
},
"quiet_hours": {
"type": [
"object",
"null"
],
"properties": {
"from": {
"type": "string"
},
"to": {
"type": "string"
}
},
"required": [
"from",
"to"
]
},
"minimum_nights": {
"type": [
"number",
"null"
]
},
"policies_source": {
"type": "string",
"enum": [
"provider",
"portfolio-default"
]
}
},
"required": [
"check_in_from",
"check_out_by",
"cancellation",
"security_deposit_hold",
"policies_source"
]
},
"house_rules": {
"type": "array",
"items": {
"type": "string"
}
},
"guest_reviews": {
"type": "object",
"description": "A selection of 4- and 5-star reviews, not a summary of every review. No overall or average rating is implied or available.",
"properties": {
"selection": {
"type": "string"
},
"reviews": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source": {
"type": "string",
"description": "The platform the review was left on."
},
"stars": {
"type": [
"number",
"null"
]
},
"text": {
"type": [
"string",
"null"
]
},
"published": {
"type": [
"string",
"null"
]
}
},
"required": [
"source"
]
}
}
},
"required": [
"selection",
"reviews"
]
},
"common_questions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"question": {
"type": "string"
},
"answer": {
"type": "string"
}
},
"required": [
"question",
"answer"
]
}
},
"booking_url": {
"type": "string"
},
"support_email": {
"type": "string"
}
},
"required": [
"property_id",
"name",
"location",
"amenities",
"amenities_source",
"photos",
"policies",
"house_rules",
"guest_reviews",
"booking_url",
"support_email"
]
}🟢get_availability(property_id, start_date, end_date)
Open and blocked nights for one property over a date range of up to 93 days, with its minimum stay. It shows which alternative dates are open; it does not price or confirm a stay.
輸入結構描述
{
"type": "object",
"properties": {
"property_id": {
"type": "string",
"description": "Property id or slug."
},
"start_date": {
"type": "string",
"description": "First date to check, YYYY-MM-DD."
},
"end_date": {
"type": "string",
"description": "Last date to check, YYYY-MM-DD. At most 93 days after start_date."
}
},
"required": [
"property_id",
"start_date",
"end_date"
],
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"property_id": {
"type": "integer"
},
"start_date": {
"type": "string"
},
"end_date": {
"type": "string"
},
"nights_open": {
"type": "integer"
},
"nights_blocked": {
"type": "integer"
},
"open_dates": {
"type": "array",
"items": {
"type": "string"
},
"description": "YYYY-MM-DD nights that are open. They still have to satisfy minimum stay and arrival rules."
},
"blocked_dates": {
"type": "array",
"items": {
"type": "string"
}
},
"minimum_nights": {
"type": [
"number",
"null"
]
},
"note": {
"type": "string"
}
},
"required": [
"property_id",
"start_date",
"end_date",
"nights_open",
"nights_blocked",
"open_dates",
"blocked_dates",
"note"
]
}🟢get_live_quote(property_id, check_in, check_out, guests, pets)
Live price for one property and one stay. stay_total includes cleaning, fees and taxes; nightly rates exclude them. Also returns the refundable deposit hold, which is separate from the total, the payment schedule, and that home's own cancellation and check-in terms. The top-level totals and cancellation are the non-refundable rate; rate_options lists every rate on offer with its own terms, total and booking_url, including a refundable rate with its free-cancellation deadline when check-in is more than 30 days away. Returns a booking_url the guest opens to complete the booking and accept the rental terms on Luxury Lodging's own site; this tool does not book or take payment.
輸入結構描述
{
"type": "object",
"properties": {
"property_id": {
"type": "string",
"description": "Property id or slug."
},
"check_in": {
"type": "string",
"description": "Check-in date, YYYY-MM-DD."
},
"check_out": {
"type": "string",
"description": "Check-out date, YYYY-MM-DD."
},
"guests": {
"type": "integer",
"minimum": 1,
"maximum": 40,
"description": "Number of guests."
},
"pets": {
"type": "boolean",
"description": "Whether the guest is bringing a pet; this changes the price."
}
},
"required": [
"property_id",
"check_in",
"check_out"
],
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"property_id": {
"type": "integer"
},
"name": {
"type": "string"
},
"available": {
"type": "boolean"
},
"reason": {
"type": "string",
"description": "Why the stay cannot be booked. Only present when available is false."
},
"check_in": {
"type": "string"
},
"check_out": {
"type": "string"
},
"nights": {
"type": [
"integer",
"null"
]
},
"guests": {
"type": "integer"
},
"pets": {
"type": "boolean"
},
"currency": {
"type": "string"
},
"stay_total": {
"type": [
"number",
"null"
],
"description": "The price of the stay, including cleaning, fees and taxes. Nightly rates exclude them."
},
"total_due_now": {
"type": [
"number",
"null"
],
"description": "What the guest pays at booking: the whole stay_total, or 50% of it when check-in is more than 60 days away; payment_schedule says which."
},
"total_display": {
"type": "string",
"description": "stay_total, formatted."
},
"payment_schedule": {
"type": "object",
"description": "When the guest pays. plan 'deposit': due_at_booking now and the balance charged automatically to the same card on balance_charged_on (60 days before check-in). plan 'full': everything at booking.",
"properties": {
"plan": {
"type": "string",
"enum": [
"full",
"deposit"
]
},
"due_at_booking": {
"type": "number"
},
"balance": {
"type": "number"
},
"balance_charged_on": {
"type": "string"
}
}
},
"price_breakdown": {
"type": [
"object",
"null"
],
"properties": {
"nightly_subtotal": {
"type": [
"number",
"null"
]
},
"cleaning_fee": {
"type": [
"number",
"null"
]
},
"pet_fee": {
"type": [
"number",
"null"
]
},
"extra_guest_fee": {
"type": [
"number",
"null"
]
},
"other_fees": {
"type": [
"number",
"null"
]
},
"refundable_rate_premium": {
"type": [
"number",
"null"
],
"description": "The 8% of the nightly subtotal the refundable rate adds; 0 on the non-refundable rate."
},
"taxes": {
"type": [
"number",
"null"
],
"description": "Lodging tax. It is collected on every stay and included in the total."
},
"card_processing_fee": {
"type": [
"number",
"null"
]
},
"discount": {
"type": [
"number",
"null"
]
},
"total": {
"type": [
"number",
"null"
]
}
}
},
"security_deposit_hold": {
"type": [
"number",
"null"
],
"description": "A refundable hold, not part of stay_total."
},
"check_in_from": {
"type": "string"
},
"check_out_by": {
"type": "string"
},
"cancellation": {
"type": "string",
"description": "This home's own cancellation terms for the non-refundable rate, which stay_total prices. Each entry in rate_options carries its own terms, and those are the only refund terms that apply to that rate."
},
"rate_options": {
"type": "array",
"description": "Every rate on offer for this stay. The first is the non-refundable rate (the same totals as the top level). When check-in is more than 30 days away a refundable rate follows: 8% more on the nightly subtotal, taxed as rent, cancellable for a full refund of everything paid until free_cancel_until. Each rate has its own booking_url.",
"items": {
"type": "object",
"properties": {
"plan": {
"type": "string",
"enum": [
"non_refundable",
"refundable"
]
},
"free_cancel_until": {
"type": "string",
"description": "Refundable rate only. The last instant, in UTC, the stay can be cancelled for a full refund."
},
"stay_total": {
"type": "number"
},
"total_due_now": {
"type": "number"
},
"payment_schedule": {
"type": "object"
},
"price_breakdown": {
"type": "object"
},
"cancellation": {
"type": "string",
"description": "This rate's terms."
},
"booking_url": {
"type": "string"
}
},
"required": [
"plan",
"stay_total",
"total_due_now",
"cancellation",
"booking_url"
]
}
},
"minimum_nights": {
"type": [
"number",
"null"
]
},
"maximum_nights": {
"type": [
"number",
"null"
]
},
"quoted_at": {
"type": "string"
},
"quote_expires_at": {
"type": "string",
"description": "When this quote lapses. After it, the price of the stay can differ from stay_total until it is quoted again."
},
"booking_url": {
"type": "string"
},
"note": {
"type": "string"
}
},
"required": [
"property_id",
"available",
"booking_url"
],
"description": "A live total for one stay. When available is false only property_id, available, reason and booking_url are present."
}🟢compare_properties(property_ids, check_in, check_out, guests, pets)
Compares 2 to 5 homes in one call: size, the amenities guests choose by, review counts, each home's own check-in time, deposit and pet policy, and with dates, availability and the stay total for each, for a guest deciding between specific homes.
輸入結構描述
{
"type": "object",
"properties": {
"property_ids": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 2,
"maxItems": 5,
"description": "Property ids or slugs from search results or booking links."
},
"check_in": {
"type": "string",
"description": "Check-in date, YYYY-MM-DD. Totals are returned only when both dates are given."
},
"check_out": {
"type": "string",
"description": "Check-out date, YYYY-MM-DD."
},
"guests": {
"type": "integer",
"minimum": 1,
"maximum": 40,
"description": "Number of guests."
},
"pets": {
"type": "boolean",
"description": "Whether the guest is bringing a pet."
}
},
"required": [
"property_ids"
],
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"compared": {
"type": "integer"
},
"dates_checked": {
"type": "boolean"
},
"homes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"property_id": {
"type": "integer"
},
"name": {
"type": "string"
},
"neighbourhood": {
"type": [
"string",
"null"
],
"description": "Neighbourhood-level location only; the exact address is shared after booking."
},
"city": {
"type": "string"
},
"state": {
"type": [
"string",
"null"
]
},
"sleeps": {
"type": [
"integer",
"null"
]
},
"bedrooms": {
"type": [
"number",
"null"
]
},
"bathrooms": {
"type": [
"number",
"null"
]
},
"top_amenities": {
"type": "array",
"items": {
"type": "string"
}
},
"review_count": {
"type": "integer",
"description": "How many 4- and 5-star reviews this home has. It is a count, not a rating; no average rating exists for any home."
},
"review_sources": {
"type": "array",
"items": {
"type": "string"
},
"description": "Which platforms those reviews came from."
},
"highlights": {
"type": "array",
"items": {
"type": "string"
},
"description": "Up to three short phrases describing what sets the home apart."
},
"check_in_from": {
"type": "string"
},
"check_out_by": {
"type": "string"
},
"security_deposit_hold": {
"type": [
"number",
"null"
]
},
"pets_allowed": {
"type": "boolean",
"description": "Omitted when pet policy could not be verified."
},
"pet_policy_note": {
"type": "string"
},
"pet_fee": {
"type": [
"number",
"null"
],
"description": "For a stay with one pet, from the fee table the quote charges from. Null when the home charges none; omitted when it could not be verified, and pet_fee_note says why."
},
"pet_fee_basis": {
"type": "string",
"enum": [
"per stay",
"per pet",
"per pet per night"
]
},
"pet_fee_note": {
"type": "string"
},
"from_price_per_night": {
"type": [
"number",
"null"
],
"description": "Starting nightly rate. Null means no starting rate is published for this home, not that it is free; from_price_note says why."
},
"from_price_note": {
"type": "string",
"description": "Only present when from_price_per_night is null: what is and is not visible about this home's calendar. A null starting rate means neither that the home is booked out nor that it is ready to book."
},
"available": {
"type": "boolean",
"description": "Only present when dates were given. A reason of not_checked means this home's availability could not be read, not that it is booked."
},
"reason": {
"type": "string"
},
"stay_total": {
"type": "number"
},
"stay_total_display": {
"type": "string"
},
"nights": {
"type": [
"integer",
"null"
]
},
"avg_per_night": {
"type": "number"
},
"details_available": {
"type": "boolean",
"description": "Only present, and only false, when this home's record could not be loaded. Such a row carries no name, place, amenity or review fields at all; detail_note says why."
},
"detail_note": {
"type": "string"
},
"booking_url": {
"type": "string"
}
},
"required": [
"property_id",
"booking_url"
]
}
},
"note": {
"type": "string"
}
},
"required": [
"compared",
"dates_checked",
"homes",
"note"
]
}社群
證據