Skip to main content
Glama
aimharder-mcp
by fvena

prepare_booking_cancellation

Read-only

Prepares cancellation of an exact booked class from the fresh daily schedule, showing credit-loss and cancellation-window details for separate confirmation before execution.

Instructions

Read the fresh daily schedule and prepare cancellation of one exact own booked class in a user-confirmed gym IANA zone. No reservation ID or family selector is accepted. Unsupported or ambiguous targets receive no reference. Show possible credit loss, including any configured cancellation window (AIMHARDER_CANCELLATION_WINDOW_MINUTES). Preparation sends no POST. Always show the exact full preview and obtain separate account-holder confirmation before execution with confirmed: true. Booking and publication preference switches do not affect this action.

Input Schema

NameRequiredDescriptionDefault
dateYes
endTimeYes
classNameYes
startTimeYes

Output Schema

NameRequiredDescriptionDefault
gymYes
actionYes
creditNo
statusYes
targetYes
noticesYes
expiresAtNo
alternativesYes
currentStateNo
actionReferenceNo
writeConfirmationRequiredYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

Annotations declare readOnlyHint=true and the description reinforces this with 'Preparation sends no POST,' then adds real value beyond the annotations: ambiguous targets yield no reference, credit-loss and cancellation-window (AIMHARDER_CANCELLATION_WINDOW_MINUTES) effects are surfaced, and confirmation is required before execution. The reference to 'confirmed: true' is slightly misleading since this tool's schema does not accept that field, but it does not contradict the read-only profile.

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?

Front-loaded with the action and its key constraint, and every sentence carries operational content. The opening sentence is overloaded and reads awkwardly, but no sentence is filler.

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?

With an output schema present, the description need not explain the preview payload, and annotations cover the safety profile, so the remaining burden is target identification and execution flow — both addressed. The unresolved 'confirmed: true' reference and the undocumented relationship between the four identifiers and the stated IANA zone keep it from being complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the four required parameters (date, className, startTime, endTime) receive no explanation at all. The description clarifies what is NOT accepted (no reservation ID, no family selector) but never explains how date/time strings are interpreted, how the 'user-confirmed gym IANA zone' relates to the missing timezone parameter, or how strictly className must match. With zero schema documentation, this leaves the caller guessing.

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 and resource ('prepare cancellation of one exact own booked class') and immediately distinguishes itself from the execute sibling by declaring 'Preparation sends no POST.' An agent can separate prepare_booking_cancellation from execute_booking_cancellation without opening either 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?

Explicitly rules out identifier-based selection ('No reservation ID or family selector is accepted'), restricts scope to the caller's own bookings, requires a user-confirmed IANA zone, and defines the failure path for ambiguous targets. The only gap is that it never names execute_booking_cancellation as the follow-up tool, referencing 'execution with confirmed: true' obliquely instead.

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