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).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesthe booking id from create_booking, or its manageUrl
tokenYesthe token from create_booking, or the manageUrl
reasonNowhy the invitee cancels, sent to the host
followingNofor a series: also cancel every later meeting

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changed
    • changedInput schema / properties / id / description
      Previous value: -"a string at least 1 character(s) long"New value: +"the booking id from create_booking, or its manageUrl"
    • removedInput schema / properties / id / minLength
      Removed value: -1
    • removedInput schema / properties / id / title
      Removed value: -"minLength(1)"
    • changedInput schema / properties / reason / description
      Previous value: -"a string at most 500 character(s) long"New value: +"why the invitee cancels, sent to the host"
    • changedInput schema / properties / token / description
      Previous value: -"a string at least 10 character(s) long"New value: +"the token from create_booking, or the manageUrl"
    • removedInput schema / properties / token / minLength
      Removed value: -10
    • removedInput schema / properties / token / title
      Removed value: -"minLength(10)"
  2. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, but the description adds substantial context beyond them: the event is removed from the host's calendar, refund rules keyed to refundableUntil, and the specific 409 error codes (change_too_late, cancel_not_allowed). This is rich behavioral disclosure that goes well past the structured hints.

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?

Core action and identity are front-loaded in the first sentence, then refund rules and gating conditions follow logically. Four dense sentences with no 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 destructive mutation with no output schema, the description covers side effects (calendar removal), refund outcomes, and the error conditions an agent must anticipate. Nothing needed to call it correctly is missing.

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?

Schema description coverage is 100%, so the schema already documents id, token, reason, and following. The description restates the id/token identification but adds no syntax or format detail for reason or following. Baseline 3 is appropriate when the schema carries the parameter burden.

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 (cancels) and resource (booking) scoped to the invitee role, which cleanly distinguishes it from reschedule_booking_as_invitee and get_booking. An agent can identify the operation without opening the 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?

Explicitly names the conditions that block cancellation ('no cancelling when canCancel is false') and routes to the alternative ('reschedule instead'). It also tells the agent to consult get_booking for the event-type rules, giving both the when-not and the alternative.

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