Skip to main content
Glama

Cancel a booking (invitee)

cancel_booking_as_invitee
Destructive

Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before refundableUntil are refunded in full. Later cancellations get no refund. The event type sets the rules, which get_booking shows: no changes after changeableUntil (409 change_too_late), no cancelling when canCancel is false (409 cancel_not_allowed, reschedule instead), and a reason when cancelReasonRequired is true (422 reason_required).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesa string at least 1 character(s) long
tokenYesa string at least 10 character(s) long
reasonNoa string at most 500 character(s) long
followingNofor a series: also cancel every later meeting

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the destructiveHint annotation, the description discloses concrete behavioral effects: the event is removed from the host's calendar, paid bookings are refunded only before refundableUntil, and specific error codes (409, 422) with their triggering conditions are listed. This far exceeds what annotations alone provide.

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 information-dense but every sentence earns its place: purpose, primary side effect, refund policy, and cancellation rules with alternatives. It is front-loaded with the core action and then adds necessary behavioral detail without repetition or 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?

For a cancellation tool with destructive effects, the description covers the essential context: required identifiers, side effects, refund consequences, error scenarios, and how to discover the rules via get_booking. The 4 parameters are either explained in the schema or enriched in the description, so an agent has enough to invoke the tool correctly.

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 the baseline is 3. The description adds meaning beyond the schema by explaining that id and token identify the booking, that reason is required only when cancelReasonRequired is true, and that changeability constraints come from the event type. This elevates it above baseline, though the description doesn't elaborate on the 'following' parameter because the schema already documents it clearly.

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 opens with a specific verb and resource: 'Cancels a booking by its id and token.' It clearly distinguishes this from the sibling reschedule_booking_as_invitee by mentioning the cancellation action and the alternative to reschedule. The scope is unmistakable.

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?

The description gives explicit conditions for when cancellation is not allowed ('no changes after changeableUntil', 'no cancelling when canCancel is false') and points to the alternative ('reschedule instead'). It also differentiates the refund behavior before and after refundableUntil, giving the agent decision-relevant context.

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