Skip to main content
Glama

Cancel a confirmed booking

owner_cancel_booking
DestructiveIdempotent

Only for business owners signed in to Awning. Cancels a booking on behalf of the business and notifies the client. Always ask the owner to confirm first. Use it for a booking that was already confirmed; a request that waits for an answer is declined with owner_decide_booking. A customer cancelling their own booking uses cancel_booking.

Input Schema

NameRequiredDescriptionDefault
reasonYesWhy: the client sees it in the message they get
booking_idYesThe booking: booking_id from owner_list_bookings

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / booking_id / description
      Added value: +"The booking: booking_id from owner_list_bookings"
    • addedInput schema / properties / reason / description
      Added value: +"Why: the client sees it in the message they get"
  2. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=true and openWorldHint=true, and the description adds real context beyond them: the client is notified and the reason text is delivered to the client. It does not spell out reversibility or what happens if the booking is already cancelled, which is the remaining behavioral gap.

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?

Four short sentences, each carrying a distinct decision-relevant fact, with the audience constraint front-loaded. No filler or restatement 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?

For a two-parameter destructive mutation with rich annotations, the description covers who can call it, which booking state it applies to, notification side effects, and the confirmation etiquette. Only edge-case behavior (booking already cancelled, unknown booking_id) is left implicit.

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%, with both required parameters documented in-schema (booking_id sourced from owner_list_bookings, reason shown to the client). The description adds no parameter-level detail of its own, so the baseline 3 applies.

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 (a booking) with the acting party pinned down: 'on behalf of the business.' It explicitly distinguishes itself from both cancel_booking (customer self-cancel) and owner_decide_booking (pending requests), so an agent can route without opening a 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 audience precondition (business owners signed in to Awning), a positive trigger (a booking already confirmed), the state-based exclusion (pending requests go to owner_decide_booking), and the sibling alternative (customer cancel uses cancel_booking). It also prescribes an interaction step: ask the owner to confirm first.

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