Skip to main content
Glama

Reschedule booking

reschedule_booking
Destructive

Move a confirmed booking of the current team to a different time, as the organiser. The new start time must be one of the available slots — call get_booking_availability with this bookingId first and pick a startAt from its slots. The attendee is emailed about the new time, the 24h reminder is re-armed, and the booking.rescheduled integration event fires. Only works on a scheduled booking; it is rejected if the slot got taken in the meantime or if that respondent already has another active booking. Not safe to retry blindly after a timeout: the first call may have succeeded, and retrying can repeat notifications or other side effects — read the current state first.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
startAtYesThe new start time, ISO datetime — must be one of the slots from get_booking_availability
bookingIdYesThe booking id (the bookingId returned by list_bookings)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
endAtNoNew end, ISO datetime
statusNoBooking status after the move
startAtNoNew start, ISO datetime
timezoneNoTimezone of the new slot
bookingIdNoThe booking that was moved
slotDurationMinutesNoLength of the slot

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already indicate non-read-only and destructive behavior, but the description adds meaningfully: the attendee is emailed, the reminder is re-armed, the booking.rescheduled event fires, and retries can repeat side effects. This is beyond what annotations and schema convey and it does not contradict them.

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

Conciseness4/5

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

The description is front-loaded with the core action and each major behavioral note earns its place. It is slightly long and a few parameter constraints are restated from the schema, but the extra detail is valuable rather than filler.

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

Completeness5/5

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

Given the tool is destructive, mutating, and externally observable via annotations, the description covers prerequisites, side effects, failure conditions, and retry safety. Since there is an output schema, not explaining the return value is acceptable; the agent has everything needed to call and verify this tool safely.

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

Parameters3/5

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

The input schema documents both parameters and even includes the availability constraint, with 100% schema coverage. The description mostly repeats that startAt must come from get_booking_availability and adds little new parameter-level meaning beyond 'current team' and 'organiser' context.

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?

The description clearly states a specific action (move a confirmed booking to a different time), the scope (current team, as organiser), and the main constraints. This distinguishes it from status-changing or reviewing tools like update_booking_status and review_booking.

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?

It explicitly tells the agent to call get_booking_availability first and choose a startAt from the returned slots. It also gives explicit failure conditions (slot taken, another active booking) and explains not to retry blindly after a timeout, covering both when-to-use and cautious when-not-to-retry behavior.

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