AgentBookable
Find local services, check live availability, and book real appointments with consent.
| Endpoint | https://agentbookable.com/mcp (streamable-http) |
|---|---|
| Registry version | 3.0.0 |
| Now | 9 tools · grade B (83) · pin ts_bd16415623046e751f749cf2ba85f79a · protocol 2025-06-18 |
| First / last listed | 2026-10-26 06:59 UTC / 2026-10-26 06:59 UTC |
| Grade over time | 2026-10-26: B (83), 9 tools |
Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.
Tools: find_businesses get_business list_services get_availability create_booking prepare_booking create_mandate_for_draft get_booking create_mandate
find_businesses | Search the AgentBookable registry for businesses that accept AI bookings. Search by free text, category, city, service name or geo radius. ALWAYS start here — the results include capability flags and _links telling you the exact next endpoints. params: query, category, city, service, latitude, longitude, radiusKm |
get_business | Get one business's record by id (ab_bus_*) or slug. Includes capabilities (availability/booking/reschedule/cancellation/payment) — NEVER promise an action whose flag is false — plus _links to the service list, availability endpoint and booking flow, and per-service bookingRequirements (e.g. whether customer phone is required). params: businessId* |
list_services | List the services a business has opened to AI booking. Each service has a durationMinutes and bookingRequirements telling you what customer details to collect (name/email/phone) BEFORE booking. params: businessId* |
get_availability | Find LIVE availability for a service. Always call this immediately before create_booking — slots are temporary (~60s) and revalidated at booking. Pass an ISO-8601 window; use a slot id from the result when booking. params: businessId*, serviceId*, from*, to* |
create_booking | Create a REAL appointment. CONSEQUENCEFUL: only after the user has explicitly chosen a slot and authorized the booking in their own words. Flow: (1) check the service's bookingRequirements and collect any required customer details (e.g. phone); (2) create a mandate via the create_mandate tool with the user's exact instruction; (3) call this tool with the mandateRef. The mandate is single-use and e params: businessId*, serviceId*, slotId, slot, customer*, mandateRef*, draftId, idempotencyKey |
prepare_booking | Prepare a booking draft: the concrete proposal (business, service, time, customer) to show the user. Validates live availability and customer requirements — if requirements are missing you get MISSING_CUSTOMER_REQUIREMENT: ask the user for those details first, then call again. Show the returned draft to the user as the final proposal (business, service, duration, date/time), then obtain explicit a params: businessId*, serviceId*, slotId, slot, customer*, actorRef* |
create_mandate_for_draft | After the user explicitly agrees to the exact proposal in the draft (an affirmative reply such as 'yes, book it' — the user having already seen business, service, date and time), assert consent here to get a single-use mandate bound to that draft. consentObtained must be true; this assertion is audited. If anything consequential changes (different time, service or business), prepare a NEW draft an params: actorRef*, draftId*, consent* |
get_booking | Retrieve a booking by its AgentBookable id (bb_bkg_*). Requires the mandateRef issued for that booking (from create_booking / create_mandate). Provider identity is never returned. params: bookingId*, mandateRef* |
create_mandate | Legacy: record the user's authorization WITHOUT a booking draft. Prefer the draft flow: prepare_booking → show proposal → user agrees → create_mandate_for_draft → create_booking with draftId. The draft flow binds consent to the exact appointment the user saw. params: actorRef*, action*, businessId*, serviceId, instruction* |
Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.