GetMyHotels
Server Details
Search hotels, get live prices, and check out in chat. Guest search needs no sign-in.
- 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.2/5 across 18 of 18 tools scored. Lowest: 3.5/5.
Each tool targets a distinct action or resource, e.g., search vs search_hotels, get_booking vs get_my_booking. No overlapping functionality; descriptions clarify subtle differences.
Most tools follow verb_noun pattern (add_trip_item, cancel_booking) or get_/list_ prefixes. One outlier ('fetch') breaks the pattern slightly, but overall naming is predictable.
18 tools cover the hotel booking domain comprehensively without being excessive. Each tool has a clear role in the workflow from search to booking to modification.
Covers all key lifecycle stages: search, details, rooms, pricing, checkout (standard and one-click), booking management (list, get, cancel, modify), payment methods, and trip saving. No obvious gaps.
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?
Annotations already indicate non-readonly (readOnlyHint=false) and non-destructive (destructiveHint=false). The description adds no further behavioral detail (e.g., whether items can be duplicated, if day range is validated, or if overwriting occurs). It is minimal but consistent.
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?
A single, well-structured sentence that immediately conveys the action, target, and key constraint (day). No extraneous words or redundant information—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?
Given the tool's simplicity (6 parameters, no output schema), the description adequately covers the core functionality. However, it omits details about the return value (e.g., confirmation or created item identifier), which could affect usability in chained operations.
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 has 100% coverage with descriptions for all parameters, so the baseline is 3. The description adds 'on a given day' and parenthetical types, but these are already implicit in the schema's field requirements and enum. No additional semantic depth is provided.
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 ('Add') and resource ('item to a saved trip on a given day'), clearly distinguishing it from siblings like 'save_trip' (create trip) or 'list_trips' (list saved trips). It enumerates example item types (hotel, flight, activity), further clarifying scope.
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 like 'save_trip' or prerequisites (e.g., needing a trip's public ID from 'list_trips'). The description implies the tool adds to an existing trip but doesn't state when not to use it or provide selection criteria.
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?
Description adds value beyond annotations by explaining that cancellation may be irreversible and can trigger a refund. Annotations already mark destructiveHint=true, but description elaborates on consequences.
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 requirement, no extraneous information. Concise 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?
Given the lack of output schema, the description covers the action, prerequisites, and consequences adequately. Could specify return format, but not critical for a cancel operation.
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 has 100% description coverage for all three parameters. Description reiterates verificationCode source and optional reason, but does not add substantial 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 verb 'cancel' and resource 'bookings', specifying scope as 'signed-in user's bookings'. Distinguishes from sibling tools like modify_booking and get_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 states prerequisite (requires verificationCode from request_booking_action_code) and provides caution about irreversibility and possible refund. Could mention when to avoid (e.g., if modification is desired) but does well.
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?
The description clarifies that the tool does not charge the card, matching annotations (readOnlyHint=false, destructiveHint=true). It could mention checkout expiration or consequence of non-payment, but with annotations providing the safety profile, this is sufficient.
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?
Four sentences, each serving a distinct purpose: purpose, behavior, precondition, and recommended preceding action. Front-loaded and 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?
The description covers the workflow: creation, redirection, and preconditions. However, it does not describe error cases or what happens if checkout expires, but given no output schema, this is reasonably complete.
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 schema already documents all parameters. The description adds usage context (e.g., use price from get_checkout_quote) but does not add new semantic meaning beyond the 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?
The description clearly states the tool creates a secure checkout for a hotel room and returns a URL for payment. It distinguishes from siblings like get_checkout_quote (price confirmation) and create_one_click_checkout (direct payment) by explicitly noting that it does not charge the card.
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 preconditions: confirm hotel, room, dates, and price with the user, and call get_checkout_quote first. This gives clear steps and context for using the tool correctly.
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 indicate destructiveHint=true and readOnlyHint=false. The description adds that no charge occurs and a URL is returned, but does not fully disclose side effects like whether a pending booking is created or what happens on user non-confirmation.
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 three sentences, front-loaded with the core purpose, and every sentence provides essential information. 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?
Given 14 parameters and no output schema, the description covers the tool's action, non-action (no charge), prerequisites, and flows. It lacks details on the exact URL format or response structure, but is generally complete for an 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?
Schema coverage is 100% with clear descriptions. The description adds value by explaining the source for savedPaymentMethodPublicId (from list_payment_methods) and emphasizing the need to confirm price and dates, aiding correct parameter usage.
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 a signed-in user with a saved card, returning a hosted URL. It distinguishes from siblings like create_checkout by emphasizing the one-click aspect and pre-selected card.
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 advises confirming hotel details and price with the user first, and specifies that the tool does not charge (user confirms on hosted page). It also directs to get savedPaymentMethodPublicId from list_payment_methods. It lacks explicit when-not-to-use or alternatives, but provides clear context.
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 already readOnlyHint=true. Description adds return field details but no additional behavioral traits 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, no wasted 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 fetch tool with one well-described parameter and annotations, the description covers purpose, input, and output sufficiently.
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 already describes the 'id' parameter with the same info as description. Description adds no new semantics 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?
Clearly states it fetches full records for search result IDs or booking references (prefixed 'bk_'), and lists return fields. Distinguishes from siblings by specifying the input types.
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?
Implicitly tells when to use: after search or when having a booking reference. Does not explicitly state when not to use, but context is clear.
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 provide readOnlyHint=true, and the description adds return value details (status, hotel, dates, guest details). No contradictions or missing behavioral info beyond what's expected for a lookup.
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, efficient sentence with no filler. Every part contributes to understanding the tool's purpose and output.
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 tool's simplicity (one parameter, no output schema), the description completely covers what the tool does and its return values. No gaps identified.
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 covers the single parameter with a description, achieving 100% coverage. The tool description merely references the token without adding new info, so baseline 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?
The description clearly states the tool looks up a hotel booking using a management token, specifying the source and what it returns. It distinguishes from sibling tools like get_my_booking (which uses authentication) and cancel_booking/modify_booking (different actions).
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 explains when to use the tool (when you have the management token from a confirmation email). It does not explicitly state when not to use it or list alternatives, but the context of sibling tools implies other lookup methods exist.
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 declare readOnlyHint=true and openWorldHint=true. Description adds that it returns authoritative grand total, rateValidUntil timestamp, and taxes/fees, which is useful behavioral context beyond the 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 concise sentences. First sentence states action and effect, second specifies inputs and outputs. No unnecessary words; every sentence serves a 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 13 parameters, 5 required, and no output schema, the description provides key input-output mapping (supplierRoomId, price/currency, grand total, rateValidUntil, taxes/fees). It could mention the alternative ref vs supplierCode+supplierHotelId grouping, but schema covers it. Overall sufficient for an 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?
Schema coverage is 100%, so description doesn't need to explain each parameter. However, it adds meaning by mentioning key inputs (supplierRoomId, price/currency) and outputs, helping the agent understand which parameters are critical and what results to expect.
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 tool re-prices a room live before checkout without booking or charge. It distinguishes from siblings like create_checkout and search_hotels by specifying 'before checkout' and 'no booking, no charge'.
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 supplierRoomId and price/currency from search_hotels, indicating context after search and before checkout. No explicit exclusions, but the purpose is clear enough for an agent to infer appropriate usage.
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?
Annotations already declare readOnlyHint=true, so the agent knows it's a safe read operation. The description adds value by listing the types of data returned (description, amenities, photos, policies, location), which goes beyond the annotations. No hidden behaviors or side effects are mentioned, but the description is consistent and informative.
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 clear sentence with no wasted words. It front-loads the purpose and includes critical details about identification. All information is essential and well-organized.
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 read-only detail retrieval tool with no output schema, the description sufficiently explains what the tool returns (full property details with categories). It is complete enough given the tool's simplicity and the annotations that indicate safety and open-world behavior.
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 each parameter described (ref, supplierCode, supplierHotelId). The description adds semantic value by explaining the relationship: 'identified by its `ref` from search_hotels (or its supplierCode + supplierHotelId)' – clarifying that these are alternative identifiers. This helps the agent understand when to use each parameter.
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 retrieves 'full property details' for a hotel, specifying the types of details (description, amenities, photos, policies, location). It distinguishes itself from sibling tools like search_hotels (which searches) and get_rooms (which likely gets room details) by focusing on a single hotel's comprehensive details.
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 explicitly states the hotel is identified by its `ref` from `search_hotels` or by supplierCode + supplierHotelId, providing clear context for when to use this tool: after a search to get details for a specific result. It does not mention when not to use it or alternatives for related tools, but the context is clear enough.
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 already declare readOnlyHint=true, so the description's statement of 'get full details' aligns but adds minimal new behavioral context beyond what annotations provide.
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, efficient sentence with no waste. Key information is front-loaded and every word is necessary.
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?
Adequate for a simple retrieval tool with one parameter and annotations. Minor gap: 'full details' is unspecified, but acceptable given the tool's simplicity.
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 describes the publicId parameter. The description merely mentions 'by its public id' without adding new meaning or usage details 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 'Get', resource 'booking', scope 'signed-in user's bookings', and identifier 'public id'. It effectively distinguishes from siblings like 'list_my_bookings' and 'get_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?
The description implies usage when you have a public id, but does not explicitly state when to use this vs. alternatives like 'get_booking' or provide any exclusions.
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 provide readOnlyHint and openWorldHint. Description adds that rooms are 'bookable' and that supplierRoomId is used downstream. No contradiction, adds useful behavioral context.
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, front-loaded with purpose. No redundant words. Each sentence adds distinct value (purpose, downstream usage, when to call).
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 8 parameters and no output schema, description covers key usage: how to get ref, what output is used for, when to call. Schema handles parameter details, so overall complete.
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 schema describes parameters. Description adds specific context for the 'ref' parameter (source from search) and the output usage of supplierRoomId. Provides value 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 the verb 'list' and the resource 'bookable rooms for ONE hotel and date range'. It distinguishes from sibling tools like search_hotels and get_checkout_quote by specifying the scope and downstream use of supplierRoomId.
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 when to use: after choosing a hotel (using ref from search_hotels or search) and before checkout. Mentions alternatives (get_checkout_quote, create_checkout). Lacks explicit when-not-to-use but sufficient.
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 declare readOnlyHint=true, so the description's main contribution is clarifying the scope (signed-in user). No additional behavioral details like pagination behavior, rate limits, or data freshness are provided beyond what annotations convey.
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 that is concise and front-loaded with key action and scope. No unnecessary words or 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 the tool's simplicity (only pagination parameters, no output schema, no nested objects), the description is largely complete. It could mention return format or default ordering, but the context signals suggest low complexity makes this acceptable.
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 each parameter (page, limit) already has clear descriptions. The tool description adds no further semantic meaning beyond what the schema provides, so baseline score 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 explicitly states 'List the signed-in user's hotel bookings', clearly specifying verb (List), resource (bookings), and scope (signed-in user). This distinguishes it from siblings like get_my_booking (singular) and search_hotels (broader 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 like get_my_booking or search_hotels. The description implies usage for listing all bookings of the signed-in user, but does not provide exclusions or when-not-to-use scenarios.
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 declare readOnlyHint=true, so the tool is safe. Description adds behavioral context: it lists cards specific to the signed-in user and indicates the output includes identifiers for subsequent operations.
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 clear purpose, then actionable usage guidance. 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?
For a zero-parameter, read-only list tool, the description fully covers purpose, output content, and next-step usage. No missing information.
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 has zero parameters and 100% coverage. Description adds meaning by explaining the return fields (brand, last 4, expiry, default) and how to use the 'publicId' result, which is not defined in any output 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 uses a specific verb 'List' and resource 'signed-in user's saved payment cards', detailing what fields are included (brand, last 4, expiry, default). It also distinguishes from siblings by explicitly mentioning the use with 'create_one_click_checkout'.
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?
Clearly states when to use: to get saved cards for the signed-in user. Provides explicit follow-up action: use the returned 'publicId' with 'create_one_click_checkout'. No alternative usage implied but strong guidance.
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 mark the tool as readOnlyHint=true, so the safety profile is clear. The description adds the behavioral context of scoping to 'signed-in user', but does not disclose any other traits (e.g., pagination, ordering, or response format).
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, focused sentence that front-loads the verb and resource. Every word earns its place with 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?
For a tool with no parameters and a readOnly hint, the description is sufficiently complete. It identifies the user scope and the resource type, and no output schema is needed for a list operation.
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 zero parameters and schema coverage is 100%, so there is no parameter information needed. The description correctly adds no redundant details, achieving the baseline.
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', with the parenthetical '(itineraries)' adding specificity. It distinguishes from sibling tools like 'save_trip' (creation) and 'add_trip_item' (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?
The description implies usage is to retrieve saved trips for the signed-in user, but lacks explicit guidance on when to use this over siblings like 'list_my_bookings' or 'search'. No when-not or alternative suggestions are provided.
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 marking destructiveHint=true, the description discloses critical behaviors: verification code requirement, special request application, date change mechanics (cancel-and-rebook), and the supplierModifyStatus field, warning against false promises.
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 paragraph with front-loaded purpose and efficient sentences. It is slightly longer but every sentence adds value, making it appropriate for the complexity.
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 covers the result's supplierModifyStatus and date change behavior, providing sufficient context for a mutation tool with 5 parameters. Minor gap: no mention of other error cases, but acceptable.
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% (baseline 3), but the description adds meaning by linking verificationCode to request_booking_action_code, explaining date change behavior for checkIn/checkOut, and clarifying specialRequests always apply.
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 modifies a signed-in user's booking, using a specific verb and resource. It distinguishes from siblings like cancel_booking by defining its scope.
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 when-to-use guidance, including when to cancel and rebook instead (for date changes on unsupported suppliers), and notes that special requests always apply, giving clear context for choosing this tool.
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?
The description adds behavioral context beyond annotations: it sends an email with a 6-digit code, and it's a prerequisite step. No contradiction with idempotentHint=true.
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 concise sentences, front-loaded with purpose, 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 is clear about purpose and next steps, but lacks explicit detail about the tool's return value (no output schema). However, the step-by-step guidance compensates.
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 does not add extra meaning beyond what the schema provides for the two parameters.
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, using specific verbs and distinguishing from siblings by positioning it as step 1 of a 2-step process.
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 states when to use (before cancelling/modifying) and provides exact next steps, naming the sibling tools to call with the code.
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?
Annotations already indicate it is a write operation (readOnlyHint=false) and not destructive (destructiveHint=false). The description adds that it operates on behalf of the signed-in user, but lacks details on authentication requirements, side effects, or error conditions.
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 directly states the tool's purpose without unnecessary words or repetition.
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 covers the basic purpose but does not explain the return value (no output schema), validation rules (e.g., date order), or required permissions. Given the complexity of 6 parameters, more context would be helpful.
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 the input schema already documents all parameters with descriptions. The description does not add any additional parameter-level information beyond what is 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 action ('Create'), the resource ('new saved trip (itinerary)'), and the target ('signed-in user'), distinguishing it from sibling tools like list_trips and add_trip_item.
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 versus alternatives such as add_trip_item or create_checkout. The description omits context about prerequisites 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.
searchSearchARead-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 declare readOnlyHint=true and openWorldHint=true. The description adds useful behavioral context: results include ids that can be fed into the 'fetch' tool for full details. This goes beyond what annotations provide.
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 three sentences, each serving a distinct purpose: stating the action, describing the output, and giving usage advice. It is front-loaded and efficient, with 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 the tool's complexity (10 parameters, no output schema), the description is relatively sparse. It mentions the output is a list of results with ids but does not explain result limits, ordering, or pagination. With 100% schema coverage and annotations, it is minimally adequate but leaves gaps.
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 each parameter has a description. The description's suggestion to put destination and dates in the query adds guidance but also creates ambiguity since separate parameters exist for those fields. Overall, minimal value added over 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 states the verb (search), resource (GetMyHotels), and output (list of results with ids). It differentiates from the sibling 'fetch' by noting ids can be used with that tool. However, it does not distinguish itself from sibling 'search_hotels', which may cause confusion.
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 advises providing destination and travel dates in the query, which gives basic usage guidance. However, it does not explicitly state when to prefer this tool over alternatives or when not to use it, leaving the agent to infer from context.
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?
Annotations declare readOnlyHint and openWorldHint. The description adds behavioral context: returns live availability, price-sorted list, and JSON structure. It does not contradict annotations and explains the result format well.
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 well-structured sentences. The first states the purpose and output, the second explains narrowing and booking flow. 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?
Handles 9 parameters adequately. No output schema, but description specifies what is returned (list with ref and supplierRoomId). Links appropriately to sibling tools for further actions.
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 baseline is 3. The description adds context for 'keywords' and mentions destination/date range, but does not elaborate on each parameter 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?
The description clearly states the tool's purpose: 'Search live hotel availability for a destination and date range.' It specifies the return format (price-sorted list with ref and supplierRoomId) and distinguishes from siblings like get_rooms and get_checkout_quote.
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 explicit when-to-use guidance (narrow with keywords) and when-not-to-use alternatives (for other rooms or hotels not in list, use get_rooms). Also outlines the booking workflow involving get_checkout_quote and create_checkout.
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!