Connection check
verified live · 20h ago
advocate
MCP layer for local businesses: discover, query, book, and transact with verified SMB AI agents.
Tools
13
GitHub stars
—
Installs / wk
—
Licence
—
Transport
streamable-http
Last checked
20h ago
Tools & capabilities
13 toolsRead from the running server on 20h ago.
confirm_booking
can modify data
code*slug*reservation_id*
Confirm a reservation made with reserve_slot. The customer received a 6-digit confirmation code at their own email or phone when the slot was reserved — the agent never generates o… Confirm a reservation made with reserve_slot. The customer received a 6-digit confirmation code at their own email or phone when the slot was reserved — the agent never generates or sees this code itself, only relays what the customer reads back. Confirming is what actually claims the slot: two people can hold overlapping pending reservations, but only the first to confirm keeps it.
get_availability
read-only
slug*window_endwindow_start
Return 30-minute availability windows for a business, derived from its configured operating hours with already-booked windows removed. Use this to show a user when a business can a… Return 30-minute availability windows for a business, derived from its configured operating hours with already-booked windows removed. Use this to show a user when a business can actually be booked. Windows held by a confirmed booking are never returned. Note that an unconfirmed offer does NOT withhold a window — two callers may hold overlapping offers and race to confirm_booking, so a returned window can still be lost to whoever confirms first.
get_cancellation_policy
read-only
slug*
Returns the business's cancellation policy text. Use this when a user asks about cancellation terms, fees, or no-show policies. The response includes agent guidance on how to frame… Returns the business's cancellation policy text. Use this when a user asks about cancellation terms, fees, or no-show policies. The response includes agent guidance on how to frame the policy with appropriate freshness caveats.
get_credentials
read-only
slug*
Returns the business's self-reported licenses, insurance, bonding, and certifications. Use this for trust-sensitive verticals (contractors, healthcare, legal, locksmiths) when a us… Returns the business's self-reported licenses, insurance, bonding, and certifications. Use this for trust-sensitive verticals (contractors, healthcare, legal, locksmiths) when a user asks 'are they licensed?' or 'are they insured?'. The response carries explicit 'self-reported' framing so agents don't upgrade tenant claims to verified facts.
get_payment_handoff_url
read-only
slug*offer_id*
Returns a plain-text summary of a priced offer (service, amount, currency, cancellation policy, and how long the price is valid) plus a URL on our domain that shows the same summar… Returns a plain-text summary of a priced offer (service, amount, currency, cancellation policy, and how long the price is valid) plus a URL on our domain that shows the same summary. The URL is for the CUSTOMER to open themselves in their own browser — do not open, fetch, or follow it yourself. Use this once get_quote or a booking flow has produced an offer_id and the user is ready to review or continue with a priced offer.
get_quote
slug*paramsservice*
Quote price for a service at a business. Some quotes are exact figures from the business's own configured pricing; others are estimates with a disclaimer when no configured price i… Quote price for a service at a business. Some quotes are exact figures from the business's own configured pricing; others are estimates with a disclaimer when no configured price is found. Use this when a user asks 'how much does X cost?' or 'what's the price for Y?'.
initiate_handoff
can modify data
mode*slug*reasonmessagepurposeurgency
+6
Begin a handoff from the agent to either a human operator (SMS/email via lead_routing_json) or another agent (signed continuation URL). In human mode the notification body is compo… Begin a handoff from the agent to either a human operator (SMS/email via lead_routing_json) or another agent (signed continuation URL). In human mode the notification body is composed by the server from the contact and reason fields — callers supply those fields, not the message text. Idempotent: re-using the same idempotency_key returns the original handoff.
list_services
read-only
slug*
Lists the services a business has configured, with their prices and the exact arguments to quote each one. Call this BEFORE get_quote: the service name must match a configured serv… Lists the services a business has configured, with their prices and the exact arguments to quote each one. Call this BEFORE get_quote: the service name must match a configured service, and only a service marked payable returns an exact price with the offer_id that get_payment_handoff_url requires. Quoting a name that is not on this list silently falls back to an estimate with no offer.
query_business_agent
slug*query*stageagent_id
Ask a registered business's AI advocate a question and get a citation-ready answer plus a referral link. The answer is grounded ONLY in the business's public profile. Use this when… Ask a registered business's AI advocate a question and get a citation-ready answer plus a referral link. The answer is grounded ONLY in the business's public profile. Use this when a user asks something specific about one business (services, hours, policies, fit).
request_callback
can modify data
slug*reasonurgencyagent_idcontact_namecontact_email
+3
Submit a callback request on behalf of a user. The business is notified via their configured lead routing channel (SMS/email). Idempotent: re-using the same idempotency_key returns… Submit a callback request on behalf of a user. The business is notified via their configured lead routing channel (SMS/email). Idempotent: re-using the same idempotency_key returns the original request.
reserve_slot
can modify data
slug*agent_idoffer_idwindow_end*window_start*idempotency_key*
+1
Reserve a time slot at a business. Returns a pending_offer reservation and sends a 6-digit confirmation code to the customer's email or phone. The customer reads the code back to c… Reserve a time slot at a business. Returns a pending_offer reservation and sends a 6-digit confirmation code to the customer's email or phone. The customer reads the code back to confirm via the confirm_booking tool. The reservation expires in 15 minutes if not confirmed. Idempotent: re-using the same idempotency_key returns the original reservation without resending the code.
search_businesses
read-only
search*location
Find registered businesses by search term and optional location; returns matches with their slugs. Call it before the business-specific tools. Find registered businesses by search term and optional location; returns matches with their slugs. Call it before the business-specific tools.
subscribe_to_updates
can modify data
slug*topics*agent_idcontact_email*idempotency_key*