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.
Certificate changed, valid to 2026-12-31
Changed the definition of "cancel_booking"
⟨17 unchanged words⟩ or before the business's refund window, thepaymentfull refund isrefundedrequested;inreportfull;it as full only after the payment ledger confirms it. After that window the deposit is forfeited under the booking'spolicypolicy.(theAresultpendingsaysrefundwhich).means cancellation is complete while refund verification or retry continues. Only the agent that paid holds the token. Cancelling twice answers already_cancelled.
⟨6 unchanged words⟩ {"currency":{"type":"string"},"pending_cents":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"refund":{"description":"full:refunded tothe paymentmethod;ledgernone:confirms the refund; none: deposit wasforfeitedforfeited;underpending:thecancellationpolicyis complete and refund verification or retry is pending","enum":["full","none","pending"],"type":"string"},"refunded_cents":{ ⟨15 unchanged words⟩ :["status","reservation_id","refund","refunded_cents","pending_cents","currency"],"type":"object"}
Added "get_booking_destination"; changed the definition of "get_availability" (17 tools before, 18 now)
⟨34 unchanged words⟩ confirmation, including when the calendar provider is unavailable. If this business uses an unsupported calendar or booking provider, call get_booking_destination to find its published public booking route.
Get Booking Destination — Returns the public booking route for a business. Use this before helping a user book an appointment: it distinguishes an external provider page from an active configured calendar that uses the Advocate booking flow, and from businesses with no supported booking destination. External pages are links only; Advocate does not sync their availability or make bookings there.
Added "cancel_booking" and "create_booking_payment_link"; changed the definition of "confirm_booking", "get_payment_handoff_url" and "reserve_slot" (15 tools before, 17 now)
⟨68 unchanged words⟩ but it never retries a provider write automatically. A paid booking (reserve_slot returned payment.required = true) has no code: this answers payment_required — pay it with create_booking_payment_link — or payment_in_flight while its payment is settling.
⟨70 unchanged words⟩ to review or continue with a priced offer. If the booking's deposit was already paid through create_booking_payment_link, this answers deposit_taken: do not send the person to pay again; the balance is due at the visit.
Changed the definition of "get_availability", "get_cancellation_policy", "get_credentials" and 2 more
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":falsetrue}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":falsetrue}
Certificate recorded, valid to 2026-11-02
Authorization not required
First tool surface recorded: 15 tools (server version 0.6.1)
Showing the latest 8 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨39 unchanged words⟩ returns the original reservation without resending the code. At a business that takes a deposit for agent bookings, pass the offer_id from get_quote (without it the answer is quote_required); no code is sent and the result's payment block carries the amount to pay instead.
⟨101 unchanged words⟩ :"boolean"},"method":{"description":"Always'otp':todaya 6-digit code was sent to the customer. 'payment': no code — this booking is confirmed by paying the deposit in `payment`","type":"string"}},"required": ⟨6 unchanged words⟩ description":"ISO-8601. When this hold lapses ifthe codeit is not confirmed (by code, or by payment when payment.required)","type":"string"},"idempotent_replay":{ ⟨12 unchanged words⟩ new code was sent","type":"boolean"},"payment":{"additionalProperties":false,"description":"Always present. required:false — confirm with the code (confirmation.method 'otp'). required:true — the customer pays amount_cents (currency) to confirm; balance_due_cents is paid at the visit.","properties":{"amount_cents":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"balance_due_cents":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"currency":{"type":"string"},"kind":{"enum":["deposit","full"],"type":"string"},"required":{"type":"boolean"}},"required":["required"],"type":"object"},"reservation_id":{"format":"uuid", ⟨48 unchanged words⟩
Cancel Paid Booking — Cancels a paid, confirmed booking using the cancel_token from its payment receipt. Within 60 minutes of paying, or before the business's refund window, the payment is refunded in full; after that the deposit is forfeited under the booking's policy (the result says which). Only the agent that paid holds the token. Cancelling twice answers already_cancelled.
Create Booking Payment Link — For a reservation that reserve_slot returned with payment.required = true: returns the MPP payment link, the amount charged now, and the balance due at the visit. The agent pays it itself (HTTP 402 challenge, then the person's wallet credential); no code is sent to the customer for a paid booking. A free booking answers not_payable — confirm it with confirm_booking and the customer's code instead.
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":falsetrue}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":falsetrue}
{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":falsetrue}