Skip to main content
Glama

Ask to move a booking to another time

reschedule_booking
Idempotent

Ask to move a booking the customer already confirmed (booked with the business) to another open slot of the same service and location (slot_id from get_availability). Nothing moves right away: Canopy emails the customer a link to approve the new time, and the business calendar changes only after they approve. A hold the customer has not confirmed yet cannot be moved. Calling again with the same slot_id reports whether it was approved. Needs the manage_token that came back with the booking_id.

Input Schema

NameRequiredDescriptionDefault
reasonNoShort reason for the move, if the customer gave one.
slot_idYesThe new open slot (from get_availability, same service and location). The customer must approve the move by email.
booking_idYesbooking_id of the confirmed booking to move (from request_booking or get_request_status).
manage_tokenYesmanage_token returned with that booking_id (by request_booking when the booking was created, or as booking_manage_token by get_request_status).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only say readOnlyHint=false, destructiveHint=false, idempotentHint=true; the description explains the actual mechanism behind that: nothing moves immediately, an email approval link is sent, and the calendar changes only after customer approval. It also explains why idempotent re-calls are useful, which the annotation alone cannot convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the action and its precondition, then the behavioral consequence, then the exclusion, then the credential requirement. Five short sentences, each carrying a distinct decision-relevant fact with no repetition of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, and the description only partially covers the response: it says a re-call with the same slot_id reports approval, but not what the first call returns (e.g., pending state or confirmation reference). Everything needed to call the tool correctly is otherwise present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so provenance for booking_id, slot_id, and manage_token is already documented in the schema; the description largely mirrors it. It does add the operational nuance that slot_id must belong to the same service and location and that the same slot_id can be re-submitted to poll approval status, which goes beyond the field text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('move a booking the customer already confirmed') plus tight scope constraints: same service and location, slot_id sourced from get_availability. An agent can distinguish this from propose_times, request_booking, and cancel_booking without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit precondition (only confirmed bookings; 'A hold the customer has not confirmed yet cannot be moved'), names the prerequisite tool for the slot_id, and describes the follow-up pattern ('Calling again with the same slot_id reports whether it was approved'). The when-not case and the alternative retrieval path are both spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources