_ registry / mcp streamable-http · checked 3h ago

luxury-lodging

https://stay.luxurylodgingpm.com

Registry code: 0fae4a467c493938

api record

EscapeStays is the direct booking site of Luxury Lodging, a professional property manager. The prices are the manager's own rates. Tools. search_properties returns homes for a place, dates, group size and filters. With dates it returns available homes, each with a stay_total; without dates no search or comparison row carries a price. list_markets returns each city with homes, its state or region and country, how many homes it has and the largest group a home sleeps there. compare_properties returns side-by-side facts and policies for 2 to 5 homes, with a stay_total for each when dates are…

endpoint
https://stay.luxurylodgingpm.com/mcp
protocol
streamable-http ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is luxury-lodging live?
Yes — it answered the hub's last check (checked 3h ago). It answered 100% of checks over the last 30 days.
Is luxury-lodging free to use?
Yes — the hub reached it with no key and no payment.
What tools does luxury-lodging have?
7 tools: get_availability, compare_properties, get_property_details, get_live_quote, get_booking_link, list_markets, search_properties.
Is luxury-lodging safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
100%

90 days 98.6%· all time 98.6%

latency
500ms

last good check

priced tools
0

of 7 tools

_ answered our checks, 90 days 295 checks · signed record
  • degraded → live
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • live → degraded· timeout after 20000ms
_ what it is for
used for
  • search vacation rentals by destination
  • check rental availability
  • get a live stay quote
  • compare rental homes
  • get a booking link
takes → gives
text → data
tools
7 reads
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 7 tools
2 open 5 never probed 2 of 7 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • list_markets reads open 25h ago

    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. Counts are given for the city alone and for the wider area a search covers, split into whole homes and rooms. It shows whether a destination is covered, including when a guest has not named a place.

    mcp-tool

    {
      "type": "object",
      "properties": {},
      "additionalProperties": false
    }
    arguments 5 lines
  • search_properties reads open 25h ago

    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, and `unpriced_property_ids` lists the property_id of up to 30 of them, each of which can be priced individually with a live quote. 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. Without dates no price is returned. Each result carries `accommodation_type` and `bathroom_sharing`: a private room or shared room is not an entire home. Optional filters cover accommodation type, exact bedrooms, required amenities and a budget; results can be paged with `cursor`, and `completeness` is partial when a matching home was left unpriced or unchecked. A query that names a known landmark or area ("near McCormick Place") returns homes within `radius_miles` of it, nearest first, each with `distance_miles` and `distance_type` straight_line: a direct distance, not a driving or walking route.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "page": {
          "type": "integer",
          "minimum": 1,
          "description": "Page number, starting at 1, counted in units of page_size. Cannot be sent together with cursor."
        },
        "pets": {
          "type": [
            "integer",
            "boolean"
          ],
          "maximum": 4,
          "minimum": 0,
          "description": "How many pets the guest is bringing, 0 to 4; 0 or leave out for none. true means one pet and false none. Results are limited to pet-friendly homes, dated totals include the pet fee for that many pets, and booking links keep the number of pets."
        },
        "sort": {
          "enum": [
            "total_price_asc",
            "total_price_desc",
            "from_price_asc",
            "sleeps_desc"
          ],
          "type": "string",
          "description": "total_price_* needs dates and orders by the stay total; from_price_asc orders by a starting rate that is not returned, and with dates by the stay total; sleeps_desc puts the largest homes first."
        },
        "limit": {
          "type": "integer",
          "maximum": 20,
          "minimum": 1,
          "description": "How many properties to return (default 8)."
        },
        "query": {
          "type": "string",
          "description": "Free text place, e.g. 'Tampa', a neighbourhood, or a landmark such as 'near McCormick Place, Chicago'. A known Chicago landmark or area (McCormick Place, Navy Pier, Wrigley Field, O'Hare Airport, the South Loop and others) returns homes within radius_miles, nearest first, with a straight-line distance. Text that names no city, state, neighbourhood or landmark is refused with INVALID_INPUT; it is not answered as an empty, complete result."
        },
        "budget": {
          "type": "object",
          "required": [
            "amount",
            "currency",
            "scope"
          ],
          "properties": {
            "scope": {
              "enum": [
                "total",
                "nightly"
              ],
              "type": "string",
              "description": "total: the whole stay, with dates. nightly: the starting nightly rate, excluding fees and taxes."
            },
            "amount": {
              "type": "number",
              "maximum": 1000000,
              "description": "The limit, in the stated currency.",
              "exclusiveMinimum": 0
            },
            "currency": {
              "enum": [
                "USD"
              ],
              "type": "string",
              "description": "Only USD is supported."
            }
          },
          "description": "A spending limit. scope total compares amount with each home's stay total including cleaning, fees and taxes, and needs check_in and check_out. scope nightly compares it with each home's starting nightly rate, which excludes cleaning, fees and taxes. amount, currency and scope are all required.",
          "additionalProperties": false
        },
        "cursor": {
          "type": "string",
          "description": "The next_cursor value of the previous response, valid only with the same other inputs. Returns the page after it."
        },
        "guests": {
          "type": "integer",
          "maximum": 50,
          "minimum": 1,
          "description": "Everyone staying, including children and infants."
        },
        "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."
        },
        "amenities": {
          "type": "array",
          "items": {
            "enum": [
              "pool",
              "hot_tub",
              "parking",
              "wifi",
              "kitchen",
              "washer",
              "pets"
            ],
            "type": "string"
          },
          "description": "Amenities every returned home has, as recorded by the property manager. The same hard filter as amenities_required, except a home with no amenity data is left out without being counted."
        },
        "check_out": {
          "type": "string",
          "description": "Check-out date, YYYY-MM-DD."
        },
        "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."
        },
        "page_size": {
          "type": "integer",
          "maximum": 20,
          "minimum": 1,
          "description": "Results per page, up to 20. Takes the place of limit when both are sent."
        },
        "bedrooms_min": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Fewest bedrooms acceptable."
        },
        "radius_miles": {
          "type": "integer",
          "maximum": 25,
          "minimum": 1,
          "description": "How far from a named landmark or area to search, in whole miles, 1 to 25. Homes are included by the distance they state, to the nearest half mile. Defaults to 5 for a landmark and 3 for an area. Ignored for any other place."
        },
        "bathrooms_min": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Fewest bathrooms acceptable."
        },
        "bedrooms_exact": {
          "type": "integer",
          "maximum": 100,
          "minimum": 0,
          "description": "Exactly this many bedrooms; 0 is a studio. Cannot be sent together with bedrooms_min."
        },
        "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."
        },
        "accommodation_type": {
          "enum": [
            "entire_home",
            "private_room",
            "shared_room"
          ],
          "type": "string",
          "description": "What the guest rents. Homes whose type is not recorded are left out and counted in accommodation_type_unknown."
        },
        "amenities_required": {
          "type": "array",
          "items": {
            "enum": [
              "pool",
              "hot_tub",
              "parking",
              "wifi",
              "kitchen",
              "washer",
              "pets"
            ],
            "type": "string"
          },
          "description": "Amenities every returned home has. A home whose amenity data is unavailable fails the filter and is counted in amenities_unknown."
        },
        "amenities_preferred": {
          "type": "array",
          "items": {
            "enum": [
              "pool",
              "hot_tub",
              "parking",
              "wifi",
              "kitchen",
              "washer",
              "pets"
            ],
            "type": "string"
          },
          "description": "Amenities that order homes when the requested sort ties, and appear in match_reasons. Homes lacking them stay in the results."
        }
      },
      "additionalProperties": false
    }
    arguments 191 lines
  • get_availability reads unknown 25h ago

    Open and blocked nights for one property over a date range of up to 93 days. `minimum_nights` is the smallest positive `min_stay` value among calendar dates returned in that range. It is a hint; individual arrival dates may require more. This result shows which alternative dates are open but does not price or confirm a stay. An exact quote determines eligibility and price for a specific stay.

    mcp-tool

    {
      "type": "object",
      "required": [
        "property_id",
        "start_date",
        "end_date"
      ],
      "properties": {
        "end_date": {
          "type": "string",
          "description": "Last date to check, YYYY-MM-DD. At most 93 days after start_date."
        },
        "start_date": {
          "type": "string",
          "description": "First date to check, YYYY-MM-DD."
        },
        "property_id": {
          "type": "string",
          "description": "Property id or slug."
        }
      },
      "additionalProperties": false
    }
    arguments 23 lines
  • compare_properties reads unknown 18h ago

    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. Each home carries `accommodation_type` and `bathroom_sharing`: a private room or shared room is not an entire home. Without dates no price is returned.

    mcp-tool

    {
      "type": "object",
      "required": [
        "property_ids"
      ],
      "properties": {
        "pets": {
          "type": [
            "integer",
            "boolean"
          ],
          "maximum": 4,
          "minimum": 0,
          "description": "How many pets the guest is bringing, 0 to 4; 0 or leave out for none. true means one pet and false none. Totals include the pet fee for that many pets."
        },
        "guests": {
          "type": "integer",
          "maximum": 50,
          "minimum": 1,
          "description": "Everyone staying, including children and infants."
        },
        "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."
        },
        "property_ids": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "maxItems": 5,
          "minItems": 2,
          "description": "Property ids or slugs from search results or booking links."
        }
      },
      "additionalProperties": false
    }
    arguments 41 lines
  • get_property_details reads unknown 18h ago

    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. `policies.minimum_nights` is the general policy baseline; calendar restrictions can require more on particular dates. Dated availability reports calendar rules, and an exact quote checks whether a specific stay meets them. 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. `accommodation_type` and `bathroom_sharing` say whether the guest rents an entire home or a room: a private room or shared room is not an entire home.

    mcp-tool

    {
      "type": "object",
      "required": [
        "property_id"
      ],
      "properties": {
        "property_id": {
          "type": "string",
          "description": "Property id or the slug from a booking link."
        }
      },
      "additionalProperties": false
    }
    arguments 13 lines
  • get_live_quote reads unknown 18h ago

    Live price for one property and one stay. stay_total includes cleaning, fees and taxes; nightly rates exclude them. If a stay is too short, it returns the coded MIN_STAY_NOT_MET error and the applicable threshold in error.details.minimum_nights. 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 (a cancellation by then refunds everything paid except the 3.5% card processing fee). 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. An optional coupon_code is applied to the rent before the rates are priced, as on the website, so when the code applies every total includes it; when it does not, the totals are the price without it and the coupon field says why. The booking_url carries the code only when it applied, and the code is checked again at booking. Amounts ending in _minor are integer cents in `currency`.

    mcp-tool

    {
      "type": "object",
      "required": [
        "property_id",
        "check_in",
        "check_out"
      ],
      "properties": {
        "pets": {
          "type": [
            "integer",
            "boolean"
          ],
          "maximum": 4,
          "minimum": 0,
          "description": "How many pets the guest is bringing, 0 to 4; 0 or leave out for none. true means one pet and false none. This changes the price: some homes charge per pet or per pet per night."
        },
        "guests": {
          "type": "integer",
          "maximum": 50,
          "minimum": 1,
          "description": "Everyone staying, including children and infants."
        },
        "check_in": {
          "type": "string",
          "description": "Check-in date, YYYY-MM-DD."
        },
        "check_out": {
          "type": "string",
          "description": "Check-out date, YYYY-MM-DD."
        },
        "coupon_code": {
          "type": "string",
          "maxLength": 40,
          "description": "A coupon code the guest was given. Optional. When it applies, the totals and every rate's total include it, and the discount appears in price_breakdown and as a negative row in quote.charges. A code that does not apply, or that nobody issued, leaves the price unchanged and is reported in coupon with its reason. A code tied to one guest's email is reported as not found. A quote does not reserve a use of a code, and the code is checked again when the guest books, so it may no longer apply then."
        },
        "property_id": {
          "type": "string",
          "description": "Property id or slug."
        }
      },
      "additionalProperties": false
    }
    arguments 43 lines
  • get_booking_link reads unknown never probed

    A link to Luxury Lodging's own site that opens checkout for one home, dates, party size and rate, for the same stay, rate and attribution as a live quote's booking_url, carrying a freshly signed quote token. It checks the stay the way a live quote does: valid dates, the home's guest limit and its pet policy, and it re-prices the stay to sign the link without returning the total. An optional coupon_code is priced into the signed total the same way a live quote prices it, and the link carries the code only when it applied. Opening the link does not reserve the home, hold dates or take payment; the guest completes checkout on EscapeStays. The price of the stay is the all-in total, which includes cleaning, fees and taxes; a nightly rate excludes them and is not the price of a stay. Neither the link nor this result carries a street address; the exact address is sent to the guest with check-in instructions before arrival.

    mcp-tool

    {
      "type": "object",
      "required": [
        "property_id",
        "check_in",
        "check_out",
        "guests"
      ],
      "properties": {
        "pets": {
          "type": [
            "integer",
            "boolean"
          ],
          "maximum": 4,
          "minimum": 0,
          "description": "How many pets the guest is bringing, 0 to 4; 0 or leave out for none. true means one pet and false none. The link keeps the number of pets, and the stay is refused when the home does not allow them."
        },
        "rate": {
          "enum": [
            "refundable",
            "non_refundable"
          ],
          "type": "string",
          "description": "Which rate the link opens on. Defaults to non_refundable, the rate a live quote's booking_url opens on. refundable is offered only while check-in is more than 30 days away."
        },
        "guests": {
          "type": "integer",
          "maximum": 50,
          "minimum": 1,
          "description": "Everyone staying, including children and infants. The link opens on this party size."
        },
        "check_in": {
          "type": "string",
          "description": "Check-in date, YYYY-MM-DD."
        },
        "quote_id": {
          "type": "string",
          "maxLength": 64,
          "description": "The quote.quote_id from a live quote for this stay, echoed back unchanged. It is not checked against current pricing."
        },
        "check_out": {
          "type": "string",
          "description": "Check-out date, YYYY-MM-DD."
        },
        "coupon_code": {
          "type": "string",
          "maxLength": 40,
          "description": "A coupon code the guest was given. Optional. When it applies, the link's signed total includes it and the link carries the code, so the website prices the stay the same way. A code that does not apply, or that nobody issued, leaves the price unchanged and is reported in coupon with its reason. A code tied to one guest's email is reported as not found. A quote does not reserve a use of a code, and the code is checked again when the guest books, so it may no longer apply then."
        },
        "property_id": {
          "type": "string",
          "description": "Property id or slug."
        }
      },
      "additionalProperties": false
    }
    arguments 57 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 0fae4a467c493938.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/0fae4a467c493938/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/0fae4a467c493938/badge.svg)](https://brick.blue/agent/0fae4a467c493938?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.