Skip to main content
Glama

LockTrip Hotels

Check Cancellation Policy

check_cancellation_policy
Read-only

Returns detailed cancellation terms for one or more room packages before booking. Required: searchKey, hotelId, and packageIds[] — pass the package UUID WITHOUT the _hotelId suffix, i.e. quoteId.split('_')[0]. Passing the full quoteId here fails with a misleading SESSION_EXPIRED even on a live session, because the policy lookup matches the bare UUID. Returns policies[], each with packageId, isRefundable, freeCancellationUntil, and fees[] (fromDate, amount, currency). currency is the supplier's own denomination for that penalty and is OMITTED, never guessed, when the supplier does not state one — so read the amount as unpriced if it is absent rather than assuming your search currency. No authentication required. Informational only — use it to confirm the refund/penalty terms with the user, then continue with prepare_booking.

Input Schema

NameRequiredDescriptionDefault
hotelIdYesHotel ID
searchKeyYesSearch key
packageIdsYesPackage IDs to check

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Adds substantial behavior beyond the readOnly/destructive annotations: it warns that a wrong argument shape produces a misleading SESSION_EXPIRED even on a live session, states no authentication is required, and explains the currency-omission semantics of the response. This is exactly the invisible failure mode an agent needs.

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?

Front-loads purpose, then the argument trap, then return shape, then the currency caveat, then auth and usage. Each sentence carries non-redundant information despite the density.

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?

No output schema exists, yet the description enumerates the returned policies[] fields and how to interpret an absent currency. An agent has everything needed to call it and read the result correctly.

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

Parameters5/5

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

Despite 100% schema coverage, the schema only says 'Package IDs to check'; the description adds the critical transform — pass the bare UUID from quoteId.split('_')[0], not the full quoteId — which changes whether the call succeeds at all.

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 ('Returns detailed cancellation terms for one or more room packages') plus a temporal scope ('before booking'). This is clearly distinguishable from siblings like prepare_booking or get_booking_details.

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?

Gives clear context ('before booking') and an explicit next step ('continue with prepare_booking'), and labels the tool 'Informational only'. It does not name a competing tool to avoid, but no sibling performs policy lookup, so the guidance is sufficient.

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