Skip to main content
Glama

trmnl_cancel_room_booking

DestructiveIdempotent

Cancels an upcoming TRMNL room booking that has not started yet, leaving in-progress bookings unchanged.

Instructions

Cancel an upcoming booking Only a booking made through TRMNL that has not started yet; endRoomBooking is for one in progress. TRMNL DELETE /api/apps/room_booking/{installation_id}/calendars/{id}/bookings/{booking_id}. Changes remote state or starts work. Run only within the user-authorized scope.

Input Schema

NameRequiredDescriptionDefault
pathYes
profileNoConfigured profile name; defaults to default.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=true, and openWorldHint=true, so the mutation and safety profile are known. The description adds domain restrictions (TRMNL-originated, not-yet-started bookings) and an authorization-scope warning, but does not explain consequences such as whether cancellation is reversible or what happens to related calendar/device state.

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 key information is front-loaded in the first two lines, and the endpoint is useful. However, the generic sentences 'Changes remote state or starts work' and 'Run only within the user-authorized scope' are boilerplate and partly duplicate the annotations.

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 destructive nested-parameter mutation with rich annotations and no output schema, the description supplies the essential eligibility rule, sibling alternative, and API route. The remaining gaps—profile semantics and post-cancel effects—are modest because annotations and schema already cover safety and field definitions.

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 schema documents the nested path fields and the optional profile, but top-level schema description coverage is only 50%. The description contributes the URL template showing where installation_id, calendar id, and booking_id are placed, but it does not explain the profile parameter or add much semantic detail beyond the schema.

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 gives a specific verb and resource: 'Cancel an upcoming booking,' and distinguishes it from the sibling trmnl_end_room_booking by saying that tool handles in-progress bookings. The DELETE endpoint further pins down the exact resource and action.

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 states the selection rule explicitly: only TRMNL bookings that have not started yet, and it names endRoomBooking as the alternative for in-progress bookings. This gives both when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools