Developers
The curl playground.
Every block below is a real JSON-RPC 2.0 POST against the live endpoint. The first three run as-is with your workspace slug and no auth. The three booking tools take a bearer token; one line in settings mints it. Paste, run, read the response.
Try it live.
These hit production. The read calls are safe to run against any workspace, the same way anyone can load a booking page. The write calls make real bookings on your own workspace, so use a test event type, and mint the token at Settings → MCP access where YOUR_TOKEN_HERE appears below.
See the tools the server serves
no authNot one of the five, but the right first paste: tools/list returns every tool definition with its input schema, straight from the server.
curl -s https://buildoutschedule.com/api/mcp -H 'Content-Type: application/json' -d '{
"jsonrpc": "2.0", "id": 0, "method": "tools/list"
}'list_public_event_types
no authEvery bookable event type on a workspace. Swap in your own slug: it is the first path segment of your booking link.
curl -s https://buildoutschedule.com/api/mcp -H 'Content-Type: application/json' -d '{
"jsonrpc": "2.0", "id": 1, "method": "tools/call",
"params": { "name": "list_public_event_types",
"arguments": { "workspace": "your-workspace" } }
}'get_availability
no authLive open slots for one event type over the next 7 days. Same engine the booking page uses, so what comes back is what a visitor could book.
curl -s https://buildoutschedule.com/api/mcp -H 'Content-Type: application/json' -d '{
"jsonrpc": "2.0", "id": 2, "method": "tools/call",
"params": { "name": "get_availability",
"arguments": { "workspace": "your-workspace",
"event_type": "intro-call",
"days": 7 } }
}'create_booking
bearer tokenBooks for real: calendar invite, confirmation email, reminders. slot_start must be a slot get_availability just returned; the server re-checks it at write time.
curl -s https://buildoutschedule.com/api/mcp \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_TOKEN_HERE' -d '{
"jsonrpc": "2.0", "id": 3, "method": "tools/call",
"params": { "name": "create_booking", "arguments": {
"event_type": "intro-call",
"slot_start": "2026-09-01T15:00:00Z",
"attendee_name": "Jordan Wells",
"attendee_email": "jordan@example.com",
"attendee_time_zone": "America/Chicago" } }
}'reschedule_booking
bearer tokenMoves an existing booking to a new open slot. Both sides get the update email; the booking_id came back from create_booking.
curl -s https://buildoutschedule.com/api/mcp \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_TOKEN_HERE' -d '{
"jsonrpc": "2.0", "id": 4, "method": "tools/call",
"params": { "name": "reschedule_booking", "arguments": {
"booking_id": "BOOKING_UUID",
"slot_start": "2026-09-02T16:00:00Z" } }
}'cancel_booking
bearer tokenCancels as the host. Paid bookings refund in full; attendee and host get the email.
curl -s https://buildoutschedule.com/api/mcp \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_TOKEN_HERE' -d '{
"jsonrpc": "2.0", "id": 5, "method": "tools/call",
"params": { "name": "cancel_booking",
"arguments": { "booking_id": "BOOKING_UUID" } }
}'