GetMyHotels
Server Details
Search real hotels, get live per-night quotes, and check out — all in chat. Guest search and checkout-link tools need no sign-in; OAuth unlocks saved trips, booking management, and one-click checkout. Renders interactive results, hotel-detail, and checkout widgets.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.1/5 across 18 of 18 tools scored. Lowest: 3.4/5.
Each tool targets a distinct action or resource: searching, fetching details, checkout flows, booking management, trips, and payment methods. Overlaps like search vs search_hotels and get_booking vs get_my_booking are differentiated by input type or purpose, avoiding ambiguity.
Most tools follow a clear verb_noun pattern (e.g., add_trip_item, create_checkout, get_rooms). A few exceptions like `fetch` and `search` lack a verb prefix, but they are still descriptive and fit the overall convention.
With 18 tools, the server covers the full hotel booking lifecycle without overwhelming complexity. Each tool serves a clear purpose, and the count is well-scoped for the domain.
The tool set covers searching, viewing details, booking, checkout, cancellations, modifications, trips, and payment methods. Minor gaps exist (e.g., no delete_trip or update_payment_method), but the core workflows for booking management are complete.
Available Tools
18 toolsadd_trip_itemAdd trip itemAInspect
Add an item (hotel, flight, activity, etc.) to a saved trip on a given day.
| Name | Required | Description | Default |
|---|---|---|---|
| day | Yes | Day number within the trip. | |
| type | Yes | Item type. | |
| title | Yes | Item title (1-255 chars). | |
| sortOrder | No | Order within the day (default 0). | |
| description | No | Optional notes (≤2000 chars). | |
| itineraryPublicId | Yes | The trip's public id (from `list_trips`/`save_trip`). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with annotations (non-read-only, non-destructive write). It adds clarity that the operation is additive, but lacks details on side effects like duplicate handling or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action and resource, with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks information about return values or error conditions, which is notable given no output schema. It is adequate for a simple mutation but incomplete for full behavioral clarity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the parameters are well-documented. The description adds minimal extra meaning (e.g., example types), but does not significantly enhance understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Add', the resource 'item', and the context 'to a saved trip on a given day'. It distinguishes the tool from siblings like save_trip (which saves the trip itself) and list_trips (which lists trips).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (adding items to a trip) but does not explicitly state when to use this tool over alternatives, such as save_trip for creating trips, or any conditions for not using it (e.g., if the trip does not exist).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cancel_bookingCancel bookingADestructiveInspect
Cancel one of the signed-in user's bookings. Requires the 6-digit verificationCode from request_booking_action_code. This may be irreversible and can trigger a refund per policy.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | No | Optional cancellation reason (≤1000 chars). | |
| publicId | Yes | The booking's public id. | |
| verificationCode | Yes | 6-digit code from `request_booking_action_code`. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true. The description adds that the action may be irreversible and can trigger a refund, providing behavioral context beyond the annotation alone. It also mentions the verification code requirement, which is a key behavioral constraint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise at three sentences, covering purpose, prerequisite, and consequence with no unnecessary words. It front-loads the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a relatively simple cancellation tool with annotations and full schema coverage, the description covers the essentials: what it does, what is needed, and the outcome. It could optionally mention how the result is returned or if there is any confirmation, but it is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for all three parameters (100% coverage). The description references the verificationCode and its source, but this is redundant with the schema. It does not add new semantic information beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the verb 'cancel' and the resource 'booking', and specifies it cancels one of the signed-in user's bookings. This clearly distinguishes it from sibling tools like modify_booking or request_booking_action_code.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies a clear prerequisite: the verification code from request_booking_action_code. It also notes that cancellation may be irreversible and can trigger a refund, which guides the agent on implications. However, it does not explicitly state when not to use this tool (e.g., for modifications).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_checkoutCreate checkoutADestructiveInspect
Create a secure checkout for a chosen hotel room and return a getmyhotels.com URL where the guest completes payment. This does NOT charge the card — the guest pays on the hosted page. Confirm the hotel, room, dates, and price with the user before calling. Call get_checkout_quote first to confirm the live price.
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | Hotel `ref` from `search_hotels` (e.g. 'TBO:1402689'). Alternative to supplierCode + supplierHotelId. | |
| price | Yes | Total price to charge (use `grandTotal` from `get_checkout_quote`). | |
| rooms | No | Rooms (default 1). | |
| adults | No | Adults (default 2). | |
| checkIn | Yes | Check-in date, ISO 8601 (YYYY-MM-DD). | |
| checkOut | Yes | Check-out date, ISO 8601 (YYYY-MM-DD). | |
| children | No | Children (default 0). | |
| currency | Yes | ISO 4217 currency of `price`/`totalPrice` (e.g. 'USD'). | |
| roomName | Yes | Room name (from the chosen room). | |
| hotelName | Yes | Hotel name (from `search_hotels`). | |
| childrenAges | No | Age of each child. | |
| supplierCode | No | Supplier code (from `search_hotels`). Required if `ref` is omitted. | |
| supplierRoomId | Yes | Bookable room/rate id from the chosen room in `search_hotels`. | |
| supplierHotelId | No | Supplier hotel id (from `search_hotels`). Required if `ref` is omitted. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate destructiveHint=true and readOnlyHint=false, so the tool modifies state. The description adds that it does not charge the card but creates a checkout that defers payment. However, it does not clarify whether it reserves/holds inventory or expiration behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: first states purpose and output, second clarifies payment, third gives prerequisite steps. Every sentence adds value, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Provides the essential workflow: prerequisite quote, confirmation requirement, output URL. Missing details like expiration of the checkout or whether inventory is temporarily held, but overall adequate for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema describes all 14 parameters fully (100% coverage). The description adds context by linking price to 'get_checkout_quote' and ref to 'search_hotels', but does not add new semantic detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a secure checkout for a hotel room and returns a getmyhotels.com URL for payment. It distinguishes from siblings like 'create_one_click_checkout' by focusing on a hosted payment page.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to confirm hotel/room/dates/price with user before calling, and to call 'get_checkout_quote' first to confirm live price. Also clarifies that the tool does not charge the card, guiding when to use it vs. other payment flows.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_one_click_checkoutCreate one-click checkoutADestructiveInspect
Create a checkout for the signed-in user with a saved card pre-selected, and return a getmyhotels.com URL where they confirm + pay in one click. Does NOT charge the card — the user confirms on the hosted page. Get the savedPaymentMethodPublicId from list_payment_methods. Confirm the hotel, room, dates, and price with the user first.
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | Hotel `ref` from `search_hotels` (e.g. 'TBO:1402689'). | |
| price | Yes | Total price (use `grandTotal` from `get_checkout_quote`). | |
| rooms | No | Rooms (default 1). | |
| adults | No | Adults (default 2). | |
| checkIn | Yes | Check-in date, ISO 8601. | |
| checkOut | Yes | Check-out date, ISO 8601. | |
| children | No | Children (default 0). | |
| currency | Yes | ISO 4217 currency (e.g. 'USD'). | |
| roomName | Yes | Room name. | |
| hotelName | Yes | Hotel name. | |
| supplierCode | No | Supplier code (if `ref` omitted). | |
| supplierRoomId | Yes | Bookable room/rate id from `search_hotels`. | |
| supplierHotelId | No | Supplier hotel id (if `ref` omitted). | |
| savedPaymentMethodPublicId | Yes | Saved card `publicId` from `list_payment_methods`. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true, and the description adds that no charge occurs—the user confirms on the hosted page. This clarifies an important behavioral trait beyond annotations. It doesn't cover idempotency or rate limits, but the key 'no charge' is well-disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences, front-loaded with purpose, then behavioral clarification, then source hint. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 14 parameters and no output schema, the description covers purpose, key behaviors, and preconditions. It lacks error handling or output format, but the essential context for safe invocation is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds sourcing hints (e.g., savedPaymentMethodPublicId from list_payment_methods, grandTotal for price) but doesn't elaborate on each parameter. Extra value is modest.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a one-click checkout for signed-in users with a saved card, returning a confirmation URL. It distinguishes this from a standard checkout by emphasizing the one-click aspect and saved card pre-selection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidance is given: get the savedPaymentMethodPublicId from list_payment_methods, confirm hotel/room/dates/price with the user first. It also clarifies that the tool does not charge the card. However, it doesn't explicitly compare to the sibling create_checkout, so a slight deduction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetchFetchARead-onlyInspect
Fetch the full record for a result id returned by search (a hotel) or for a booking reference (prefixed 'bk_'). Returns a document with id, title, text, url, and metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | An id from `search` results, or a 'bk_'-prefixed booking ref. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint and openWorldHint. Description adds return fields but no additional behavioral traits (e.g., error handling, auth requirements). Adequate but minimal extra value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and input types. No fluff, every word serves a purpose. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-parameter fetch without output schema, the description adequately explains input types and return fields. Missing details on error behavior or potential unexpected results, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and its description already specifies the id types. The tool description repeats the schema description, adding no new semantic meaning for the parameter. Baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it fetches full record for result ids or booking refs. Verb 'fetch' with specific resource types. Lacks explicit differentiation from sibling tools like get_booking or get_hotel_details, but purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tells when to use (with result id or booking ref) but no guidance on when not to use or alternatives among siblings like get_booking or get_hotel_details. Incomplete contextual advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bookingGet bookingARead-onlyInspect
Look up a hotel booking by its management token (sent in the confirmation email). Returns the booking status, hotel, dates, and guest details.
| Name | Required | Description | Default |
|---|---|---|---|
| bookingToken | Yes | The booking management token from the confirmation email/URL. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=true, and description adds that it returns booking status, hotel, dates, and guest details, providing useful behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with key information, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple lookup with one required parameter and no output schema, the description sufficiently covers purpose, input, and output fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description for the parameter. Description repeats the token's source but adds no new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'look up' and resource 'hotel booking', and distinguishes from sibling tools like get_my_booking and cancel_booking by specifying the management token as the identifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use the management token from the confirmation email, but does not mention when not to use or provide alternatives like get_my_booking for user-specific lookups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_checkout_quoteGet checkout quoteARead-onlyInspect
Re-price a specific room live against the supplier before checkout (no booking, no charge). Use the supplierRoomId and price/currency from search_hotels. Returns the authoritative grand total, a rateValidUntil timestamp, and any taxes/fees.
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | Hotel `ref` from `search_hotels` (e.g. 'TBO:1402689'). Alternative to supplierCode + supplierHotelId. | |
| rooms | No | Rooms (default 1). | |
| adults | No | Adults (default 2). | |
| checkIn | Yes | Check-in date, ISO 8601 (YYYY-MM-DD). | |
| checkOut | Yes | Check-out date, ISO 8601 (YYYY-MM-DD). | |
| children | No | Children (default 0). | |
| currency | Yes | ISO 4217 currency of `price`/`totalPrice` (e.g. 'USD'). | |
| promoCode | No | Optional promo code. | |
| totalPrice | Yes | The room's price from `search_hotels` (used to detect price changes). | |
| childrenAges | No | Age of each child. | |
| supplierCode | No | Supplier code (from `search_hotels`). Required if `ref` is omitted. | |
| supplierRoomId | Yes | Bookable room/rate id from the chosen room in `search_hotels`. | |
| supplierHotelId | No | Supplier hotel id (from `search_hotels`). Required if `ref` is omitted. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and openWorldHint. The description adds value by detailing the live re-pricing nature, no charge, and the returned data (grand total, rateValidUntil, taxes/fees). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: first sentence states the core action and constraints, second provides usage guidance and return type. No filler words, front-loaded with purpose, every sentence is informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 13 parameters and no output schema, the description names the returned fields (grand total, rateValidUntil, taxes/fees) and links to search_hotels. It could be more complete by explaining the ref vs supplierCode+supplierHotelId choice or mentioning expiration of the quote, but it adequately covers the core flow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 13 parameters. The description adds meaning beyond schema by explaining the relationship to search_hotels (e.g., using supplierRoomId and price/currency from there) and the purpose of totalPrice for detecting price changes. This enhances parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('re-price') and resource ('room'), clarifies it's live against the supplier before checkout, and explicitly states no booking/charge. It distinguishes from siblings like search_hotels (search) and create_checkout (booking) by positioning itself as a pre-checkout re-pricing step.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells when to use the tool ('before checkout') and references the necessary prior call to search_hotels. It does not explicitly list alternatives or when not to use, but the context of 'no booking, no charge' clearly implies it is for price verification only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_hotel_detailsGet hotel detailsARead-onlyInspect
Get full property details (description, amenities, photos, policies, location) for a hotel, identified by its ref from search_hotels (or its supplierCode + supplierHotelId).
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | The hotel `ref` from search (e.g. 'tbo:1360717'). | |
| supplierCode | No | Alternative to `ref`: supplier code. | |
| supplierHotelId | No | Alternative to `ref`: supplier hotel id. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations (readOnlyHint, openWorldHint) by specifying the exact categories of details returned. It also clarifies the identification mechanisms. No contradictions with annotations. It does not mention latency or rate limits, but the annotation already signals a safe read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the essential action and includes the most important usage note. Every word contributes value; no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of an output schema, the description reasonably covers what the tool returns (description, amenities, photos, policies, location). It explains how to identify the hotel. It may slightly under-specify error conditions or behavior when both identification methods are provided, but overall it is sufficiently complete for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although the input schema already covers the three parameters with descriptions, the description adds the crucial semantic that ref and supplierCode+supplierHotelId are alternative ways to identify the hotel. This relationship is not explicit in the schema alone. The schema coverage is high, but the description enhances parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get full property details') and the resource (hotel details including description, amenities, photos, policies, location). It distinguishes itself from siblings by specifying the identification method (ref from search_hotels or alternative supplierCode+supplierHotelId), making the tool's purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage context: after a search using search_hotels, to retrieve detailed information. It explains alternative identification methods but does not explicitly state when not to use this tool or compare with siblings like get_rooms or search_hotels. However, the context is sufficient for an AI agent to decide when to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_my_bookingGet my bookingARead-onlyInspect
Get full details of one of the signed-in user's bookings by its public id.
| Name | Required | Description | Default |
|---|---|---|---|
| publicId | Yes | The booking's public id. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint=true, so the read-only nature is covered. Description adds authentication scope (signed-in user) but no further behavioral details like rate limits or response structure. Acceptable given annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with purpose, no unnecessary words. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-id operation with annotations present, the description is largely complete. It could optionally mention the return format or fields, but the typical expectation is the full booking details. Minor gap in not explaining the response structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description for the single parameter. Description does not add new information beyond the schema ('by its public id' restates the schema's 'The booking\'s public id.'). Baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action (Get full details), resource (one of the signed-in user's bookings), and identifier (public id). It distinguishes from siblings like 'get_booking' (any booking) and 'list_my_bookings' (all bookings).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage context (signed-in user, by public id) but does not explicitly state when to use this tool vs alternatives like 'get_booking' or 'list_my_bookings'. No when-not or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_roomsGet hotel roomsARead-onlyInspect
List the bookable rooms for ONE hotel and date range. Each room's supplierRoomId is what you pass to get_checkout_quote / create_checkout. Use the hotel ref from search_hotels or search. Call this to see all of a chosen hotel's rooms, or to refresh availability before checkout.
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | The hotel `ref` from search (e.g. 'tbo:1360717'). | |
| rooms | No | Rooms (default 1). | |
| adults | No | Adults (default 2). | |
| checkIn | Yes | Check-in date, ISO 8601 (YYYY-MM-DD). | |
| checkOut | Yes | Check-out date, ISO 8601 (YYYY-MM-DD). | |
| children | No | Children (default 0). | |
| supplierCode | No | Alternative to `ref`: supplier code. | |
| supplierHotelId | No | Alternative to `ref`: supplier hotel id. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint: true and openWorldHint: true. The description adds that it lists 'bookable' rooms (availability-sensitive) and that each room's `supplierRoomId` is used downstream, which is useful context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three well-structured sentences: first states core purpose, second explains output's role in downstream tools, third provides usage scenarios. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and 8 parameters (100% schema docs), the description covers the essential: what the tool returns (rooms with supplierRoomId), how to get the ref, and when to call. It doesn't detail optional parameters but they are schema-described. Satisfactory for a list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds value by explaining how the `ref` parameter relates to search results and the output `supplierRoomId` usage, but does not elaborate on other parameters like checkIn/checkOut format or the meaning of rooms/adults/children beyond what's in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists bookable rooms for a specific hotel and date range, using the verb 'list' and specifying the resource 'rooms for ONE hotel and date range'. It also distinguishes from sibling tools like search_hotels and get_checkout_quote by mentioning the `supplierRoomId` connection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidance: 'Use the hotel `ref` from `search_hotels` or `search`' and 'Call this to see all of a chosen hotel's rooms, or to refresh availability before checkout' provides clear context on when to use. It doesn't explicitly state when not to use, but the scenario is well-defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_my_bookingsList my bookingsARead-onlyInspect
List the signed-in user's hotel bookings.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (default 1). | |
| limit | No | Page size (default 20). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true. The description adds that it lists the signed-in user's bookings, which is consistent but does not disclose pagination behavior beyond schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, no waste, front-loaded with key information. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with two pagination parameters and no output schema, the description is sufficient. No additional behavioral context needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for page and limit. Description does not add beyond schema, so baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description specifies verb 'list', resource 'hotel bookings', and scope 'signed-in user', clearly distinguishing from siblings like 'get_my_booking' (singular) or 'search_hotels' (global search).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives. While self-explanatory, it does not mention that for a single booking, 'get_my_booking' should be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_payment_methodsList saved cardsARead-onlyInspect
List the signed-in user's saved payment cards (brand, last 4, expiry, default). Use the returned publicId with create_one_click_checkout to pre-select a card.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it as read-only. Description adds the output fields but does not disclose any additional behavioral traits like caching, ordering, or limits beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: one sentence for action and one brief usage instruction. No unnecessary words, front-loaded with purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately covers return fields and linkage to another tool. Minor omission: no mention of ordering or potential empty results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so baseline is 4. Description adds value by explaining return fields (brand, last 4, expiry, default) and how to use the publicId, going beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool lists the signed-in user's saved payment cards with specific fields (brand, last 4, expiry, default). Distinguishes from sibling tools that handle bookings or creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a post-usage hint about using the returned publicId with create_one_click_checkout, but lacks explicit guidance on when to use this tool over alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tripsList saved tripsARead-onlyInspect
List the signed-in user's saved trips (itineraries).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows it's a safe read operation. The description adds that it lists the signed-in user's trips but does not disclose any further behavioral traits like pagination or ordering. The added value is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary words. It is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no parameters and no output schema, the description is mostly complete. It explains what is listed and for whom, though it could clarify what constitutes a 'saved trip'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters and schema coverage is 100%. The description clarifies the scope and ownership ('signed-in user's saved trips'), which adds meaning beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'signed-in user's saved trips (itineraries)', which distinguishes it from siblings like 'search' and 'list_my_bookings'. However, it does not explicitly differentiate from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'search' or 'list_my_bookings'. There are no usage conditions or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
modify_bookingModify bookingADestructiveInspect
Change one of the signed-in user's bookings. Requires the 6-digit verificationCode from request_booking_action_code. Special-request edits always apply. A DATE change is pushed to the hotel supplier as a cancel-and-rebook at current availability, so it only works for suppliers that support amendment — for others (and when no room is available for the new dates) it returns an error asking you to cancel and rebook instead. A date change can shift the price and issue a new confirmation; the result's supplierModifyStatus says whether the supplier reservation was actually changed (modified), simulated (simulated), or the edit stayed local (local_only, e.g. special requests only). Never promise a date change went through unless supplierModifyStatus is modified or simulated.
| Name | Required | Description | Default |
|---|---|---|---|
| checkIn | No | New check-in date, ISO 8601 (optional). | |
| checkOut | No | New check-out date, ISO 8601 (optional). | |
| publicId | Yes | The booking's public id. | |
| specialRequests | No | New special requests (≤2000 chars, optional). | |
| verificationCode | Yes | 6-digit code from `request_booking_action_code`. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (destructiveHint=true), description adds critical details: special requests always apply, date changes trigger cancel-and-rebook, price/confirmation may change, and supplierModifyStatus indicates actual outcome. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise yet thorough. Front-loaded with main action, each sentence adds necessary detail. No fluff. Well-structured for the complexity of the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers date change behavior, special requests, verification code, supplierModifyStatus, and error scenarios. No output schema but description compensates by mentioning result fields. Complete for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% but description adds meaning: verificationCode requirement, date change behavior, and special-request applicability. Baseline 3 is raised due to added context beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool modifies a signed-in user's booking, with a specific verb ('Change') and resource ('one of the signed-in user's bookings'). Distinguishes from sibling cancel_booking by focusing on modification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly requires verificationCode from request_booking_action_code. Provides when-to-use and when-not-to (date change on unsupported suppliers returns error). Advises not to promise date change unless supplierModifyStatus is modified or simulated. Offers clear alternatives (cancel and rebook).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_booking_action_codeRequest booking action codeAIdempotentInspect
Email a 6-digit verification code to the booking owner, required before cancelling or modifying a booking. Step 1 of 2 — then call cancel_booking/modify_booking with the code.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Which action the code authorizes. | |
| publicId | Yes | The booking's public id. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false. The description adds behavioral context: it sends an email and is a prerequisite step. It does not contradict annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, concise and front-loaded with the core action. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description lacks information about the response format or error conditions. However, for a tool that is part of a two-step process, the essential context is provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters. The description adds value by linking the 'action' parameter to the subsequent tool calls, but doesn't elaborate on parameter details beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it emails a verification code required before cancelling or modifying a booking. It distinguishes itself from sibling tools by explicitly naming cancel_booking and modify_booking as next steps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: use this tool as step 1 of 2 when you need to cancel or modify a booking, then call cancel_booking or modify_booking with the code. No when-not-to guidance needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_tripSave a tripAInspect
Create a new saved trip (itinerary) for the signed-in user.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Trip title (1-255 chars). | |
| budget | No | Optional total budget. | |
| endDate | Yes | Trip end, ISO 8601 (YYYY-MM-DD). | |
| startDate | Yes | Trip start, ISO 8601 (YYYY-MM-DD). | |
| description | No | Optional notes (≤4000 chars). | |
| budgetCurrency | No | ISO 4217 currency for the budget (e.g. 'USD'). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds the context that trips are associated with the signed-in user (scope). Annotations confirm mutability (readOnlyHint=false). No disclosure of side effects, required permissions, or error behavior. Adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundancy, front-loaded with core purpose. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has 6 parameters (3 required) and no output schema. Description lacks information on return values, success/failure indicators, or constraints beyond user scope. Adequate for a simple create operation but leaves agents guessing on response format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 6 parameters have full schema descriptions (100% coverage), so the description adds no additional meaning beyond what the schema already provides. Baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Create' with resource 'saved trip (itinerary)' and scope 'for the signed-in user'. Clearly distinguishes from sibling tools like list_trips, add_trip_item, and cancel_booking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives like add_trip_item or modify_booking. No prerequisites, exclusions, or context signals provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchSearchBRead-onlyInspect
Search GetMyHotels for hotels matching a query. Returns a list of results with ids that can be passed to fetch for full details. Provide the destination and travel dates in the query.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Natural-language search, e.g. 'hotels in Lisbon 2026-08-10 to 2026-08-14 for 2 adults'. | |
| rooms | No | Rooms (1-6). Default 1. | |
| adults | No | Adults (1-10). Default 2. | |
| checkIn | No | Check-in date, ISO 8601 (YYYY-MM-DD). | |
| checkOut | No | Check-out date, ISO 8601 (YYYY-MM-DD). Must be after check-in. | |
| children | No | Children (0-6). Default 0. | |
| keywords | No | Optional free-text preferences, e.g. 'beachfront pool spa'. | |
| destination | No | City, region, or place to search (e.g. 'Paris', 'Goa', 'Lower Manhattan'). | |
| childrenAges | No | Age of each child at check-in. Length should equal `children`. | |
| guestNationality | No | ISO 3166-1 alpha-2 guest nationality (e.g. 'US', 'GB'). Affects supplier pricing. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint and openWorldHint. Description adds that it returns a list of IDs for fetch, but no further behavioral traits like pagination or rate limits. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two clear sentences plus a brief usage hint. Efficient and front-loaded, though could be more structured with bullet points.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 10 parameters and no output schema, the description covers basic purpose and workflow but lacks details on pagination, error handling, or return format beyond mentioning IDs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds minimal extra meaning beyond schema, mainly clarifying the role of the query parameter for natural-language input.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it searches for hotels and returns IDs for use with fetch. However, it does not differentiate from the similarly named sibling 'search_hotels', so it's not fully distinguishing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Suggests providing destination and travel dates in the query, and mentions the fetch workflow. Lacks explicit when-to-use vs alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_hotelsSearch hotelsARead-onlyInspect
Search live hotel availability for a destination and date range. Returns a price-sorted list of hotels (JSON in the text), each with a ref and its cheapest bookable room's supplierRoomId. To book: pass a room's supplierRoomId + the hotel ref to get_checkout_quote then create_checkout. For a hotel's other rooms (or a hotel not in the list), call get_rooms. Narrow with keywords (a hotel name, area, or amenities).
| Name | Required | Description | Default |
|---|---|---|---|
| rooms | No | Rooms (1-6). Default 1. | |
| adults | No | Adults (1-10). Default 2. | |
| checkIn | Yes | Check-in date, ISO 8601 (YYYY-MM-DD). | |
| checkOut | Yes | Check-out date, ISO 8601 (YYYY-MM-DD). Must be after check-in. | |
| children | No | Children (0-6). Default 0. | |
| keywords | No | Optional free-text preferences, e.g. 'beachfront pool spa'. | |
| destination | Yes | City, region, or place to search (e.g. 'Paris', 'Goa', 'Lower Manhattan'). | |
| childrenAges | No | Age of each child at check-in. Length should equal `children`. | |
| guestNationality | No | ISO 3166-1 alpha-2 guest nationality (e.g. 'US', 'GB'). Affects supplier pricing. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Descriptions states it returns a price-sorted list with ref and supplierRoomId. Annotations declare readOnlyHint and openWorldHint; description adds context about live data and JSON format. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise paragraph front-loaded with core purpose, then explains booking workflow and sibling tools. No redundant sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Explains return value structure and usage flow. Lacks details on pagination or limits, but for a read-only search tool with annotations covering safety, this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 9 parameters with descriptions. The description adds value for keywords (narrowing with hotel name/area/amenities). Other parameters like guestNationality are sufficiently described in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it searches live hotel availability for a destination and date range. Distinguishes from siblings like get_rooms (for other rooms) and get_checkout_quote (for booking).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says when to use (search) and when to use alternatives: get_rooms for other rooms, get_checkout_quote then create_checkout for booking. Also mentions narrowing with keywords.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!