Tool reference book_intro_call
book_intro_call
Book the signed-in person a free 30-minute intro call with Ben, at a time from my_bookings (introCall.openTimes; pass its start exactly as listed, and name the time by its label, never by a weekday you work out). Book it here: do not send the person to a booking page unless this refuses or fails. No diamond, nothing charged; the calendar invite comes from cal.com. The answer's booking has its own label and join link; move it with move_booking, cancel it with cancel_booking. One upcoming free call per person at a time: while one stands, this refuses and names it. Offer the free 30-minute intro call with Ben when the person is interested in the Pirate Forge (the Forge Pass) or in working with Ben one to one – Captain on Deck, which people also call an in-house workshop, consulting or freelance work. Never offer it for the Pirate Pass or for an event ticket.
- Needs sign-in · 1 gold
- Changes something – ask first
Input
| Field | Type | Required | Notes |
|---|---|---|---|
start | string (date-time) | Yes | The start of a free intro-call time exactly as my_bookings lists it under introCall.openTimes, e.g. "2026-09-17T10:00:00.000+02:00". |
timeZone | string | No | The person's time zone, e.g. "Europe/Berlin". Defaults to Berlin. · at most 64 characters |
topic | string | No | What the person is deciding about (the Forge Pass, a Captain on Deck session) or wants to ask, in a sentence or two. · at most 500 characters |
Over HTTP
curl -X POST https://pirateskills.com/api/public/agent/tools/book_intro_call \
-H "Authorization: Bearer $PIRATESKILLS_API_KEY" \
-H "content-type: application/json" \
-d '{ "start": "<start>" }'From the CLI
pirateskills run book_intro_call --json '{ "start": "<start>" }' # asks y/N firstOver MCP
Call book_intro_call on https://pirateskills.com/mcp. The tool is marked as one that changes something, so a well-behaved client asks the person first. Connect over MCP
JSON Schema
{
"type": "object",
"properties": {
"start": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
"description": "The start of a free intro-call time exactly as my_bookings lists it under introCall.openTimes, e.g. \"2026-09-17T10:00:00.000+02:00\"."
},
"timeZone": {
"description": "The person's time zone, e.g. \"Europe/Berlin\". Defaults to Berlin.",
"type": "string",
"maxLength": 64
},
"topic": {
"description": "What the person is deciding about (the Forge Pass, a Captain on Deck session) or wants to ask, in a sentence or two.",
"type": "string",
"maxLength": 500
}
},
"required": [
"start"
]
}