get_booking_progress
Read status and nextStep using holdToken before verification or accessToken afterward. A hold token never returns a payment URL or personal details. Use this while waiting for verification, payment or business approval.
Scope & access
Follow the credential fields below. Public discovery does not require a login; private booking operations require the indicated token.
This tool advertises idempotent behavior. If an idempotencyKey is specified, reuse it with identical arguments only when retrying that same intended action.
Parameters
These are the directory endpoint parameters. Business endpoints scope public discovery to the published business; owner calls still require businessId. Inspect tools/list on your endpoint for the exact schema.
bookingIdRequiredParent booking ID from create_hold (holdId), confirm_booking, or list_bookings. Never pass a child allocation ID.
accessTokenOptionalSecret accessToken returned after verification/confirmation or access recovery. Never invent or expose it publicly.
holdTokenOptionalSecret holdToken returned by create_hold, used before customer verification.
Example call
Pass this object to the MCP client's callTool method. Replace placeholders with returned IDs, saved credentials and the customer's details; use future dates appropriate to their request.
{
"name": "get_booking_progress",
"arguments": {
"bookingId": "<bookingId>",
"holdToken": "<saved-hold-token>"
}
}JSON schemas
Nested fields, formats, enums and constraints are included in the complete schemas. Successful data is returned in structuredContent. SDK input validation and domain errors use different error shapes.
Input schemaJSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"bookingId": {
"type": "string",
"minLength": 1,
"description": "Parent booking ID from create_hold (holdId), confirm_booking, or list_bookings. Never pass a child allocation ID."
},
"accessToken": {
"type": "string",
"minLength": 10,
"description": "Secret accessToken returned after verification/confirmation or access recovery. Never invent or expose it publicly."
},
"holdToken": {
"type": "string",
"minLength": 10,
"description": "Secret holdToken returned by create_hold, used before customer verification."
}
},
"required": [
"bookingId"
]
}Output schemaJSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"bookingId": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"held",
"pending_verification",
"pending_payment",
"pending_approval",
"confirmed",
"cancelled",
"expired",
"no_show",
"completed"
]
},
"nextStep": {
"type": "string"
},
"expiresAt": {
"type": [
"string",
"null"
]
},
"paymentUrl": {
"type": [
"string",
"null"
]
}
},
"required": [
"bookingId",
"status",
"nextStep",
"expiresAt",
"paymentUrl"
],
"additionalProperties": false
}Behavior annotationsMCP
{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": false
}Errors & next steps
Check isError before reading a success response. Follow nextStep where supplied, and never treat a pending booking as confirmed. See Errors and retries and the booking lifecycle for recovery paths.
Back to all tools