Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Authorization not required, issuer https://www.hemmabo.com
Certificate changed, valid to 2027-01-18
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Changed the definition of "hemmabo_check_availability", "hemmabo_check_host_readiness", "hemmabo_get_host_onboarding_link" and 3 more
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Check Availability"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Host Readiness Check"}
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Changed the definition of "hemmabo_search_properties"
⟨16 unchanged words⟩ find or browse places to stay. Discovery only,—and price-free: call vrp_get_verified_stay_offer with the host domain and same ⟨7 unchanged words⟩ client can render the verified stay offer widget;never quotetheapricefinalandpricetheorsigned booking link come only fromsearch
Changed the definition of "hemmabo_search_properties"
⟨120 unchanged words⟩ for user-facing copy: direct host-source total, inminorwhole units of the property's currencyunits.(not minor units).","type":"integer"},"domain":{ ⟨16 unchanged words⟩ (the same value as directBookingTotal), inminorwhole units of the property's currencyunits.(not minor units). Use directBookingTotal in user-facing copy.","type":" ⟨9 unchanged words⟩ host-source total for the date range, inminorwhole units of the property's
Authorization not required, issuer https://www.hemmabo.com
Added "hemmabo_check_availability", "hemmabo_check_host_readiness", "hemmabo_get_host_onboarding_link" and 2 more; removed "get_verified_stay_offer", "hemmabo_host_onboarding_link", "hemmabo_host_readiness_check" and 2 more; changed the definition of "hemmabo_search_properties"
⟨18 unchanged words⟩ browse places to stay. Discovery only — callget_verified_stay_offervrp_get_verified_stay_offer with the host domain and same dates before ⟨128 unchanged words⟩
⟨224 unchanged words⟩ ":"Stable UUID. Pass to subsequent tools (availabilityhemmabo_check_availability).","format":"uuid","type": ⟨154 unchanged words⟩
Changed the definition of "get_verified_stay_offer", "hemmabo_host_onboarding_link", "hemmabo_host_readiness_check" and 3 more
⟨49 unchanged words⟩ must not lock a quote, create a booking,or collect guestdetails, or start checkout.details. Route booking only to the signed direct_booking_url. The ⟨83 unchanged words⟩ the host's own domain, at the signeddirect_booking_url; thisdirect_booking_url.serverThehasagentnoneverbookingbooks,checkout
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Changed the definition of "hemmabo_host_onboarding_link" and "hemmabo_host_readiness_check"
⟨85 unchanged words⟩ a booking site. It returns the URL,whatthe category sentence, thehosthost'sgetsprice atom, the agent's role, and what the host should prepare. All ⟨60 unchanged words⟩
{"additionalProperties":true,"properties":{"capabilitiesagent_role":{"description":"Host-facingWhat
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Changed the definition of "hemmabo_host_onboarding_link" and "hemmabo_host_readiness_check"
⟨47 unchanged words⟩ "additionalProperties":true,"description":"HemmaBo product,pricingthe host's subscription price (the host pays HemmaBo $39/month; a guest never pays it), onboarding URL, and live proof URLs.", ⟨24 unchanged words⟩
⟨82 unchanged words⟩ ":true,"description":"HemmaBo product summary,pricingthe host's subscription price, onboarding URL, and live proof URLs.", ⟨70 unchanged words⟩
Changed the definition of "get_verified_stay_offer", "hemmabo_host_onboarding_link", "hemmabo_host_readiness_check" and 3 more
⟨140 unchanged words⟩ affects the signed price or availability, only formatting. Booking and payment happen only on the host's own domain, at the signed direct_booking_url; this server has no booking, checkout, or payment step.
⟨132 unchanged words⟩ simply left out, and nothing is stored server-side. Booking and payment happen only on the host's own domain, at the signed direct_booking_url; this server has no booking, checkout, or payment step.
Authorization not required, issuer https://www.hemmabo.com
Authorization not required, issuer https://www.hemmabo.com
Removed "hemmabo_booking_cancel", "hemmabo_booking_checkout", "hemmabo_booking_create" and 4 more; changed the definition of "get_verified_stay_offer" and "hemmabo_search_properties" (13 tools before, 6 now)
⟨61 unchanged words⟩ start checkout. Route booking only to the signeddirect_booking_url; fall back to hemmabo_booking_negotiate/hemmabo_booking_checkout only when this call returns no signed offer, for a configured non-VRP deployment, after explicit user confirmation.direct_booking_url. The parameters work as a set: pass ⟨71 unchanged words⟩
⟨63 unchanged words⟩ filtered out.","type":"boolean"},"booking_url":{"description":"The host's own booking URL: https:// plus the host-owned domain. Null when the property has no domain.","format":"uri","type":["string","null"]},"
Changed the definition of "get_verified_stay_offer", "hemmabo_booking_cancel", "hemmabo_booking_checkout" and 10 more
before
—after
Get Verified Stay Offerbefore
—after
Cancel BookingChanged the definition of "hemmabo_booking_cancel", "hemmabo_booking_checkout" and "hemmabo_booking_reschedule"
Cancel a confirmed or pending booking on the host node: sets the booking status to cancelled andprocessreleases theStripedatesrefundbackpertohostthecancellationhostpolicy.calendar. Use when the guest explicitly requests cancellation — ⟨7 unchanged words⟩ of ending the stay, use hemmabo_booking_reschedule instead.
Verified owner set by github_owner proof on hemmabo-se
Changed the definition of "hemmabo_search_availability"
⟨59 unchanged words⟩ reserves dates. Returns available=true/false with conflict details and,same-monthwhenalternativeunavailable,datethewindowshostwhennode'sunavailable;own next available window (alternativeDates, at most one entry — the same window the node's /api/availability reports, never a platform-invented date); a stale inbound calendar sync blocks an available ⟨68 unchanged words⟩
Certificate recorded, valid to 2026-11-17
Authorization not required
First tool surface recorded: 13 tools (server version 4.0.9)
Showing the latest 38 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Host Onboarding Link"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true,"title":"Search Properties"}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":true,"title":" ⟨4 unchanged words⟩
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":true,"title":" ⟨4 unchanged words⟩
⟨37 unchanged words⟩ "description":"Available properties matching the search criteria,:witheachlivehosthost-sourcedomainpricing.and its own booking URL, without a price.","items":{"additionalProperties":true,"properties" ⟨49 unchanged words⟩ ":"Country.","type":"string"},"currency":{"description":"ISO 4217 currency code (e.g. 'SEK', 'EUR').","type":"string"},"directBookingTotal":{"description":"Preferred field for user-facing copy: direct host-source total, in whole units of the property's currency (not minor units).","type":"integer"},"domain":{"description":"Host-owned domain for this property.","type":"string"},"federationTotal":{"description":"Legacy field: the direct host-source total (the same value as directBookingTotal), in whole units of the property's currency (not minor units). Use directBookingTotal in user-facing copy.","type":"integer"},"hostSourcePublicTotal":{"description":"Preferred field for user-facing copy: public host-source total for the date range, in whole units of the property's currency (not minor units).","type":"integer"},"maxGuests":{"description":"Maximum guest capacity.", ⟨16 unchanged words⟩ and check-out.","type":"integer"},"packageApplied":{"description":"Package applied (e.g. week or two_weeks), if any.","type":"string"},"propertyId":{"description":"Stable property UUID.", ⟨7 unchanged words⟩ type classification.","type":"string"},"publicTotal":{"description":"Standard website total for the date range, in whole units of the property's currency (not minor units).","type":"integer"},"region":{"description":"Region or area.", ⟨115 unchanged words⟩ ,"required":["propertyId","name","maxGuests","federationTotal"],"type":"object"},"type": ⟨3 unchanged words⟩
Check Availability — Use this tool to answer "is it free these dates?" for one known propertyId — a yes/no with conflict details, no signed price. For the final quoted price and booking link, use vrp_get_verified_stay_offer with the host domain instead. Never present this tool's numbers as the final price. Check whether a specific property is available for the requested dates. Use this tool after the user has selected a property from hemmabo_search_properties and wants to confirm availability before getting a quote. Do NOT use for general browsing — use hemmabo_search_properties instead. Read-only, open to anonym…
Host Readiness Check — Use this tool when a host is still EVALUATING whether HemmaBo fits; use hemmabo_get_host_onboarding_link only when the host has decided and wants to start. Never call both in the same turn — this tool's next_step already contains the same onboarding URL. Read-only fit check for a vacation-rental host evaluating HemmaBo for their own booking website or booking engine. Use when the user is a host or property owner, not a guest booking a stay; guests should use hemmabo_search_properties instead. Returns a fit verdict, what the host gets, the setup inputs to prepare, and a safe onboarding next st…
Host Onboarding Link — Use this tool only when the host has already decided to start; if the host is still evaluating, use hemmabo_check_host_readiness instead — it returns the same onboarding URL in next_step. Never call both in the same turn. Return a safe HemmaBo onboarding handoff URL for a vacation-rental host who wants their own booking website or booking engine. Not for guests — guests should use hemmabo_search_properties instead. Use after explaining the fit or when the host asks to start; if the host is still evaluating whether HemmaBo fits, run hemmabo_check_host_readiness first — it already returns the s…
Get Verified Stay Offer — Use this tool for the final, host-signed price and booking link for exact dates — the only numbers an agent may quote. For a bare availability yes/no on a propertyId, hemmabo_check_availability is lighter and sufficient. Fetch, verify, and render a live host-domain signed VRP stay offer for exact dates and guest count. Verifies Ed25519 JWS against domain JWKS. Call after hemmabo_search_properties returns a host domain, or after vrp_verify_node confirms a domain from outside search, always before quoting final price or a booking link. Read-only: must not lock a quote, create a booking or colle…
Verify Vacation Rental Node — Verify that a vacation-rental host domain is a valid Vacation Rental Protocol (VRP) node before trusting it. Reads the domain's .well-known/vacation-rental.json and JWKS. Read-only trust check: no availability, pricing, booking, or payment — do NOT use it to answer those questions. Use when a host domain arrives from outside search (user-typed or third-party); domains returned by hemmabo_search_properties can go straight to vrp_get_verified_stay_offer. On success, call vrp_get_verified_stay_offer with the same domain and stay dates. The single input is the host domain as a bare hostname (no s…
Get Verified Stay Offer — Fetch, verify, and render a live host-domain signed VRP stay offer for exact dates and guest count. Verifies Ed25519 JWS against domain JWKS. Call after hemmabo_search_properties returns a host domain, or after verify_vacation_rental_node confirms a domain from outside search, always before quoting final price or a booking link. Read-only: must not lock a quote, create a booking or collect guest details. Route booking only to the signed direct_booking_url. The parameters work as a set: pass the same domain, checkIn, checkOut and guests the guest used at search; checkIn must be strictly before…
Host Onboarding Link — Return a safe HemmaBo onboarding handoff URL for a vacation-rental host who wants their own booking website or booking engine. Not for guests — guests should use hemmabo_search_properties instead. Use after explaining the fit or when the host asks to start; if the host is still evaluating whether HemmaBo fits, run hemmabo_host_readiness_check first — it already returns the same prefilled URL in its next_step. This tool is read-only and does not create a HemmaBo account, buy a domain, configure Stripe, write to Supabase, or provision a booking site. It returns the URL, the category sentence, t…
Host Readiness Check — Read-only fit check for a vacation-rental host evaluating HemmaBo for their own booking website or booking engine. Use when the user is a host or property owner, not a guest booking a stay; guests should use hemmabo_search_properties instead. Returns a fit verdict, what the host gets, the setup inputs to prepare, and a safe onboarding next step. Does not create an account, buy a domain, configure Stripe, store host data, or provision a website. When the host is ready to start, follow up with hemmabo_host_onboarding_link. Only five inputs sharpen the fit verdict: a domain (hasOwnDomain or doma…
Check Availability — Check whether a specific property is available for the requested dates. Use this tool after the user has selected a property from hemmabo_search_properties and wants to confirm availability before getting a quote. Do NOT use for general browsing — use hemmabo_search_properties instead. Read-only, open to anonymous callers (no Bearer token), and rate-limited: checking availability never places a hold or reserves dates. Returns available=true/false with conflict details and, when unavailable, the host node's own next available window (alternativeDates, at most one entry — the same window the no…
Verify Vacation Rental Node — Verify that a vacation-rental host domain is a valid Vacation Rental Protocol (VRP) node before trusting it. Reads the domain's .well-known/vacation-rental.json and JWKS. Read-only trust check: no availability, pricing, booking, or payment — do NOT use it to answer those questions. Use when a host domain arrives from outside search (user-typed or third-party); domains returned by hemmabo_search_properties can go straight to get_verified_stay_offer. On success, call get_verified_stay_offer with the same domain and stay dates. The single input is the host domain as a bare hostname (no scheme or…
⟨96 unchanged words⟩ signed-offer summary for agents to quote without inventing a price,availability,adiscountslower price, savings, availability, comparisons, or booking details.","type": ⟨73 unchanged words⟩
⟨152 unchanged words⟩ the host's own domain, at the signeddirect_booking_url; thisdirect_booking_url.serverThehasagentnoneverbookingbooks,checkoutpays, cancels orpaymentchangesstep.a booking.
⟨140 unchanged words⟩ the host's own domain, at the signeddirect_booking_url; thisdirect_booking_url.serverThehasagentnoneverbookingbooks,checkoutpays, cancels orpaymentchangesstep.a booking.
⟨176 unchanged words⟩ the host's own domain, at the signeddirect_booking_url; thisdirect_booking_url.serverThehasagentnoneverbookingbooks,checkoutpays, cancels orpaymentchangesstep.a booking.
⟨49 unchanged words⟩ ,"currency":{"type":"string"},"federationDiscountPercent":{"type":"number"},"federationTotal":{"type":"number"},"publicTotal" ⟨131 unchanged words⟩
⟨145 unchanged words⟩ the host's own domain, at the signeddirect_booking_url; thisdirect_booking_url.serverThehasagentnoneverbookingbooks,checkoutpays, cancels orpaymentchangesstep.a booking.
⟨112 unchanged words⟩ 'EUR').","type":"string"},"directBookingDiscountPercent":{"description":"Legacy internal field. Do not present this as a guest-facing discount, savings, or comparison.","type":"integer"},"directBookingTotal":{"description":"Preferred field for user-facing ⟨15 unchanged words⟩ this property.","type":"string"},"federationDiscountPercent":{"description":"Legacy internal field. Do not present this as a guest-facing discount, savings, or comparison.","type":"integer"},"federationTotal":{"description":"Legacy field: the direct host-source total,in minor currency units. Do not(thelabelsamethisvalue asa HemmaBo platform, federation, OTAdirectBookingTotal),marketplace,incomparison,minordiscount,currencyorunits.savingsUsepricedirectBookingTotal in user-facing copy.","type":"integer"} ⟨224 unchanged words⟩
⟨155 unchanged words⟩ the host's own domain, at the signeddirect_booking_url; thisdirect_booking_url.serverThehasagentnoneverbookingbooks,checkoutpays, cancels orpaymentchangesstep.a booking.
⟨12 unchanged words⟩ without overclaiming.","type":"string"},"capabilitiesagent_role":{"description":"Host-facingWhatcapabilitiesaincludedcompatibleinagentHemmaBo.","items":{"type"does:"stringdiscover the host domain, verify the signed stay offer, send the guest to that domain to book. The agent does not book."},"type":"arraystring"},"next_step":{"additionalProperties":true,"description ⟨48 unchanged words⟩ product":{"additionalProperties":true,"description":"HemmaBo:productthesummarycategory sentence, the host's subscription price,onboarding URLatom, andlivetheproofonboardingURLs.URL.","properties":{"category":{"description":"ProductThe category,e.g. 'host-owned booking engine for vacation rentals'.","type":"string"},"live_proof_url":{"description"sentence:"LiveAI-agent booking proof page'Vacationonrentalhemmabo.com.","format":"uri","type":"string"},"live_reference_domain":{"description":"Livesoftware.referenceAhost-nodesigneddomainstaytooffershowon themodelhost'sinownaction.","format":"uridomain.'","type":"string"},"name":{ ⟨65 unchanged words⟩ 'USD').","type":"string"},"first_month_free":{"description":"True when the first month is free.","type":"boolean"},"hemmabo_booking_commission_percent":{"description":"HemmaBo booking commission percent. ⟨34 unchanged words⟩ },"summary":{"description":"The priceas one sentenceatom:'The'$39/month'. The host paysHemmaBoit;$39/month.'a guest never does.","type":"string"}},"type": ⟨59 unchanged words⟩ :"array"},"product_category":{"description":"Plain-languageTheproductcategorycategory.sentence.","type":"string"},"recommended_when":{ ⟨30 unchanged words⟩ ":["ok","product","readiness","capabilitiesagent_role","setup_items","next_step","agent_instruction"],"type":"object"}
⟨126 unchanged words⟩ and with no inputs the summary is generic. Booking and payment happen only on the host's own domain, at the signed direct_booking_url; this server has no booking, checkout, or payment step.
⟨162 unchanged words⟩ always matches the host node's own availability API. Booking and payment happen only on the host's own domain, at the signed direct_booking_url; this server has no booking, checkout, or payment step.
⟨131 unchanged words⟩ in unavailableMatches with up to three alternative windows. Booking and payment happen only on the host's own domain, at the signed direct_booking_url; this server has no booking, checkout, or payment step.
⟨98 unchanged words⟩ e.g. 'Sweden', 'Italy', 'Morocco'). Partial case-insensitivematch. Provide atmatchleastagainstonetheofcountryregionfield.orOptionalcountry;— omitwhenboth regionalreadyandnarrowscountry and thedestination.search spans every published property.","type":"string"},"guests":{ ⟨47 unchanged words⟩ , 'Kävlinge', 'Toscana', 'Bavaria'). Partial case-insensitivematch. Providematchatagainstleastregion,onecity,ofandregioncountry.orOptionalcountry;— omitonlybothwhenregion and countryaloneandisthesufficient.search spans every published property.","type":"string"}},"required": ⟨5 unchanged words⟩
⟨141 unchanged words⟩ as trustworthy as the exact domain you pass. Booking and payment happen only on the host's own domain, at the signed direct_booking_url; this server has no booking, checkout, or payment step.
Cancel Booking — Cancel a confirmed or pending booking on the host node: sets the booking status to cancelled and releases the dates back to the host calendar. Use when the guest explicitly requests cancellation — if the guest wants new dates instead of ending the stay, use hemmabo_booking_reschedule instead. This tool moves no money: anything owed back to the guest under the host's cancellation policy is settled by the host on the host's own terms, outside this tool; to read the applicable policy first, read cancellationPolicy from hemmabo_booking_status. Requires Authorization: Bearer token (MCP_API_KEY or …
Checkout — Create a fallback non-VRP booking and return the host-configured Stripe Checkout URL for the guest to open in their own browser. Use only after explicit user confirmation when no signed VRP direct_booking_url is available; when get_verified_stay_offer returns one, route the guest there instead. Use hemmabo_booking_create to record a pending booking without a Stripe Checkout URL. Behavior: existing bookings are never modified — availability is checked and dates briefly locked first; conflicts fail before anything is created. Success creates exactly one pending booking and one Stripe Checkout …
Create Booking — Create a pending direct booking without online payment for configured non-VRP fallback deployments. Use only after explicit user confirmation, with a propertyId from search, and only when no signed VRP direct_booking_url is available. For signed VRP offers, route to the signed host-domain URL instead. Requires Authorization: Bearer token (MCP_API_KEY or OAuth); rate-limited per token. Writes exactly one pending booking awaiting the host's decision; availability is checked first — conflicts or a stale calendar fail the call before anything is written. Not idempotent — check hemmabo_booking_sta…
Lock Price Quote — PRICE LOCK, not negotiation: the host's price is fixed — this tool never bargains, discounts, or alters it; it only freezes the current host-source price for 15 minutes so it cannot change during checkout. It refuses to lock dates the property's calendar cannot deliver and returns alternative bookable windows instead. Use it only in the non-VRP fallback checkout flow, when no signed direct_booking_url is available and the user explicitly asks to lock a price. Never use this for search, availability, VRP offers, rendering a stay-offer widget, or verified-offer display — use get_verified_stay_o…
Get Pricing Quote — Get a detailed pricing quote for a specific property, dates, and guest count. Use this tool after confirming availability to show the user exact pricing before booking. Do NOT use before checking availability — the quote may be invalid if dates are unavailable. Returns the final host-source total for the booking flow, per-night breakdown, and package pricing context. All prices are integers in the property's local currency (e.g. SEK). The quote is the propertyId priced for the exact checkIn/checkOut range and guests; the night count and party size together select the price tier, so changing a…
Reschedule Booking — Reschedule a confirmed or pending booking to new dates with automatic repricing. Use when the guest wants to change dates on an existing booking — if the guest wants to end the stay entirely rather than move it, use hemmabo_booking_cancel instead. Do not use if cancelled or if a protocol compatibility client reports completed — check hemmabo_booking_status first. Requires Authorization: Bearer token (MCP_API_KEY or OAuth). Destructive write: the original dates are released back to the host calendar and the original price no longer applies — the booking keeps the same reservationId (updated in…
Get Booking Status — Retrieve current status and full details of an existing booking by reservationId. Use to confirm checkout/create succeeded or before cancel/reschedule. Do NOT use for property discovery, availability, or pricing — use hemmabo_search_properties, hemmabo_search_availability, or hemmabo_booking_quote for those. Requires Authorization: Bearer token (MCP_API_KEY or OAuth); rate-limited per token. Read-only against the database — never writes, so it is safe to poll after a checkout timeout — but returns guest PII (name, email). reservationId is the booking UUID returned by hemmabo_booking_checkout …
before
—after
Checkoutbefore
—after
Create Bookingbefore
—after
Lock Price Quotebefore
—after
Get Pricing Quotebefore
—after
Reschedule Bookingbefore
—after
Get Booking Statusbefore
—after
Host Onboarding Linkbefore
—after
Host Readiness Checkbefore
—after
Check Availabilitybefore
—after
Search Propertiesbefore
—after
Verify Vacation Rental Node{"additionalProperties":true,"properties":{"errorcheckIn":{"description":"PresentArrivalonlydatewhenofisError=true.the cancelled stay (YYYY-MM-DD).","type":"string"},"refundcheckOut":{"additionalProperties":true,"description":"RefundDeparturepayloaddatereturnedofbythecancel-bookingcancellededgestayfunction(YYYY-MM-DD).","type":"string"},"error":{"description":"Present only whenpresent.isError=true.","type":"objectstring"},"reservationId":{"format":"uuid", ⟨18 unchanged words⟩
Create a fallback non-VRP booking and returnathe host-configured StripecheckoutCheckoutURL.URL for the guest to open in their own browser. Use only after explicit user confirmation when no ⟨14 unchanged words⟩ Use hemmabo_booking_create to record a pending booking withoutcollectingapaymentStripeyet.Checkout URL. Behavior: existing bookings are never modified — ⟨5 unchanged words⟩ briefly locked first; conflicts fail before anything iscreated or charged.created. Success creates exactly one pending booking and one ⟨12 unchanged words⟩ a one-time guestToken (required for status/cancel/reschedule).OnlyThis tool moves no money: the guest completes the booking on the host's Stripe Checkout page, and only the Stripe webhook confirms the booking;unpaidpending bookings that are never completed expire automatically. Not idempotent — check hemmabo_booking_status before ⟨18 unchanged words⟩ price fresh. channel selects which locked total isused; paymentMode changes only the handoff form, never the price.used. Requires Authorization: Bearer token (MCP_API_KEY or OAuth); rate-limited per token.
⟨212 unchanged words⟩ "minimum":1,"type":"integer"},"paymentMode":{"description":"Stripe payment flow. 'checkout_session' (default): returns a browser redirect URL. 'payment_intent': returns client_secret for embedded/agentic payment integrations. Omit to use checkout_session.","enum":["checkout_session","payment_intent"],"type":"string"},"propertyId":{"description":"Stable property UUID from ⟨67 unchanged words⟩
⟨70 unchanged words⟩ ,"guests":{"type":"integer"},"mpp":{"additionalProperties":true,"description":"Present when paymentMode='payment_intent'.","type":"object"},"nights":{"type":"integer"},"paymentUrl":{"description":"Host-configured Stripe CheckoutredirectURLURL.for the guest to open in their own browser.","format":"uri","type":"string"},"payment_modes":{"description":"Supported payment modes.","items":{"type":"string"},"type":"array"},"propertyId":{"format":"uuid","type": ⟨15 unchanged words⟩ "description":"Booking status (typically 'pending' untilpaymentthesucceedsStripe webhook confirms the booking).","type":"string"},"totalPrice":{"description":"FinalTotaltotalforchargedthe(orstaytoinbe
Reschedule a confirmed or pending booking to new dates with automaticrepricing and Stripe charge/refund.repricing. Use when the guest wants to change dates ⟨70 unchanged words⟩ same reservationId (updated in place, never recreated). This tool moves no money: the response states the previous price, the new price and thepricedifference as amounts, and any difference ischargedsettledorbetweenrefundedtheviaguestStripe.and the host on the host's own terms, outside this tool. Rate-limited per token. Identify the existing booking by ⟨25 unchanged words⟩
⟨48 unchanged words⟩ "},"previousPrice":{"type":"integer"},"stripeAction":{"additionalProperties":true,"type":"object"}},"type":"object"},"reason":{ ⟨20 unchanged words⟩
{"additionalProperties":true,"properties":{"alternativeDates":{"description":"NearbyThesame-monthhostdatenode'swindowsown next available window (at most one) to offer when the requested dates areunavailable.unavailable — identical to the node's /api/availability nextAvailable. Empty when the node offers none.","items":{"additionalProperties":true,"properties" ⟨150 unchanged words⟩