This page shows you how to build a booking MCP app withDocumentation Index
Fetch the complete documentation index at: https://docs.waniwani.ai/llms.txt
Use this file to discover all available pages before exploring further.
@waniwani/sdk. The user picks a service, the funnel checks availability, the user picks a slot, the funnel confirms. Runs as one MCP tool inside ChatGPT, Claude, or any MCP client.
What you’ll build
A booking flow that:- Asks what service they want (haircut, consultation, demo, etc.)
- Calls your availability API (action node)
- Asks the user to pick a slot
- Confirms the booking with your backend
- Returns a booking reference
Flow graph
Code
Register
Patterns this uses
- Action nodes for API calls.
fetch_availabilityandconfirm_bookingrun without user interaction. See Flows → Nodes. - Suggestions passed at runtime.
ask_slotuses suggestions computed fromstate.availableSlots. See Flows → Interrupts. - Conditional re-asking. Add a
validatecallback onslotto re-ask if the slot was taken between fetch and confirm.
Variants
- Recurring availability cache. Skip the
fetch_availabilitynode by pre-loading slots and rotating them daily. - Multi-service with conditional branching. Branch on
serviceto ask different follow-up questions (e.g. “Bringing a guest?” only for consultations). See Flows → Edges. - Add a confirmation widget. Use
showWidgetto display the booking card visually. See the Pet Insurance Quote example for the widget handoff pattern.
Add funnel analytics
SetWANIWANI_API_KEY and you’ll see step-by-step drop-off using the node labels: Pick a service → Pick a slot → Capture contact → Confirm booking. fetch_availability is hidden from the funnel (hideFromFunnel: true) because it’s plumbing, not a user-facing step. Helps you spot whether users abandon at slot selection or contact info. See Tracking → Overview.