Skip to main content
Glama

RooQuiz

reschedule_booking

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.

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

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only carry shallow flags (readOnlyHint=false, destructiveHint=false, openWorldHint=true); the description shoulders the full disclosure burden and does so thoroughly. It reveals the attendee email side effect, the re-armed 24h reminder, the booking.rescheduled integration event, and two concrete rejection modes. There is no contradiction with the annotations.

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?

The description is four efficient sentences ordered logically: action, prerequisite, side effects, and failure conditions. Every sentence delivers new, necessary information and none of them repeat the schema or annotations. The primary purpose is front-loaded in sentence one.

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?

For a mutation tool with a sequential dependency, external side effects, and race-condition failures, the description covers all essential elements: the prerequisite call, the slot selection, the effects of the operation, and the cases where it will be rejected. Since an output schema is present, omitting return-value details is acceptable, leaving no notable gap.

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?

The schema already documents both parameters with 100% coverage, including the requirement that startAt must be a slot from get_booking_availability. The description adds meaningful context beyond this baseline: the booking belongs to the current team, the acting role must be the organiser, and the startAt must be selected from that specific booking's availability call. This helps an agent choose the right values without being redundant.

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 begins with the specific action and resource: 'Move a confirmed booking of the current team to a different time, as the organiser.' It precisely limits scope to the current team and an organiser role, which distinguishes it in a glance from siblings like update_booking_status, review_booking, and get_booking_availability. An agent can tell exactly what resource is being changed 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 Guidelines4/5

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

The description explicitly instructs the agent to call get_booking_availability with the bookingId first and to pick a startAt from the returned slots, which is a mandatory ordering constraint. It also states rejection conditions (slot taken, respondent already has an active booking, booking not scheduled), clarifying when the call will fail. It stops short of a 5 because it does not name alternatives for different intent (e.g., when to use update_booking_status or review_booking), but the context is very clear.

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.

TDQS

A4.1/5.0
Disambiguation4/5

Most tools pair a distinct resource with a distinct verb, and the descriptions do a good job of separating related concepts like leads, records, examinees, and bookings. The only real ambiguity is between list_records (submission records, also called leads) and list_leads (CRM leads), plus a mild overlap between update_form and update_form_settings, but careful reading resolves both.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern, using standard verbs like get_, list_, create_, update_, delete_, add_, insert_, move_, and set_. Minor stylistic variation such as add_question vs. insert_question is still predictable and does not hurt usability.

Tool Count2/5

48 tools is a very heavy surface for an MCP server. While each tool appears purposeful, the server spans forms, questions, translations, analytics, leads, bookings, examinees, media, and team administration, making it feel like a full platform API rather than a focused server. Most agents will only ever need a subset of these tools.

Completeness4/5

The core quiz lifecycle is well covered: form creation/editing/deletion/restore/duplicate/translation, question CRUD/move, delivery settings, statistics/funnels, lead CRM, bookings, examinees, media upload, and tenant basics. The main gaps are minor — no member list/remove/role management beyond invite, no media library listing/deletion, and no bulk export of records — but these do not create dead ends in the primary quiz/lead/booking workflows.

Resources