Skip to main content
Glama

Check a Tell & Go booking

get_booking
Read-onlyIdempotent

Look up a booking's status, dates, room, totals and cancellation terms. With a connected Tell & Go account this works for any of the traveller's own bookings; call list_my_bookings to find their ids. Without one it works only for a booking created in this same MCP session. Read the terms as given: a paid booking keeps a processing fee when cancelled in its refundable period, so never describe a cancellation as free.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "booking_id": "<booking_id>"
    },
    "name": "get_booking"
  }
}

Input Schema

NameRequiredDescriptionDefault
booking_idYesbooking_id returned by start_booking (its booking_reference is also accepted)
journey_idNoContinuity handle returned as journey_id in previous Tell & Go tool results. Always pass the most recent journey_id you have received in this conversation.

Output Schema

NameRequiredDescriptionDefault
datesNocheck_in, check_out and nights.
statusYespending_payment, processing, confirmed, cancelled, completed or failed.
paymentNoPayment status, amount, currency and paid_at.
propertyNoProperty id, name and address.
referenceNoBooking reference.
booking_idYesThe booking id.
journey_idYesContinuity handle. Pass it back as journey_id on the next Tell & Go tool call. Treat it as confidential: it also unlocks get_booking for bookings made under it.
confirmation_numberNoThe supplier's own reference, for Tell & Go support only. It is not a number from the hotel; give the guest `reference`.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / required
      Previous value: -[
      -  "booking_id",
      -  "status",
      -  "reference",
      -  "confirmation_number",
      -  "property",
      -  "dates",
      -  "payment",
      -  "journey_id"
      -]New value: +[
      +  "booking_id",
      +  "status",
      +  "journey_id"
      +]
  2. Changed1 schema field changed
    • changedOutput schema / properties / journey_id / description
      Previous value: -"Continuity handle. Pass it back as journey_id on the next Tell & Go tool call."New value: +"Continuity handle. Pass it back as journey_id on the next Tell & Go tool call. Treat it as confidential: it also unlocks get_booking for bookings made under it."
  3. Changed1 schema field changed
    • changedOutput schema / properties / confirmation_number / description
      Previous value: -"Hotel confirmation number, once issued."New value: +"The supplier's own reference, for Tell & Go support only. It is not a number from the hotel; give the guest `reference`."
  4. Changed1 schema field changed
    • changedInput schema / properties / booking_id / description
      Previous value: -"booking_id returned by start_booking"New value: +"booking_id returned by start_booking (its booking_reference is also accepted)"
  5. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "description": "Status of a booking created in this connection.",
      +  "properties": {
      +    "booking_id": {
      +      "description": "The booking id.",
      +      "type": "string"
      +    },
      +    "confirmation_number": {
      +      "description": "Hotel confirmation number, once issued.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "dates": {
      +      "description": "check_in, check_out and nights.",
      +      "type": [
      +        "object",
      +        "null"
      +      ]
      +    },
      +    "journey_id": {
      +      "description": "Continuity handle. Pass it back as journey_id on the next Tell & Go tool call.",
      +      "type": "string"
      +    },
      +    "payment": {
      +      "description": "Payment status, amount, currency and paid_at.",
      +      "type": [
      +        "object",
      +        "null"
      +      ]
      +    },
      +    "property": {
      +      "description": "Property id, name and address.",
      +      "type": [
      +        "object",
      +        "null"
      +      ]
      +    },
      +    "reference": {
      +      "description": "Booking reference.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "status": {
      +      "description": "pending_payment, processing, confirmed, cancelled, completed or failed.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "required": [
      +    "booking_id",
      +    "status",
      +    "reference",
      +    "confirmation_number",
      +    "property",
      +    "dates",
      +    "payment",
      +    "journey_id"
      +  ],
      +  "type": "object"
      +}
  6. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety is covered; the description adds non-obvious behavior instead, namely the account-vs-session access boundary and the instruction to report cancellation terms as given rather than as free because a processing fee is retained. It does not cover failure behavior, such as what happens with an unknown or expired booking_id, which keeps it short of a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, each carrying distinct information: return fields, access modes, id discovery, and the cancellation-fee caveat. The most decision-relevant content is front-loaded and there is no redundant restatement of the schema or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be specified in prose beyond the summary already given. Combined with the access-mode rules and the interpretation caveat, the definition tells an agent everything needed to call this read-only lookup correctly and to report its results accurately.

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

Parameters4/5

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

Schema coverage is 100%, so both parameters are already documented, giving a baseline of 3. The description adds genuine meaning on top by explaining which booking_id values are even valid in each access mode, complementing the schema's note that it comes from start_booking and that list_my_bookings can supply it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a concrete verb and resource, 'Look up a booking', and enumerates exactly what is returned: status, dates, room, totals and cancellation terms. This makes it clearly distinct from siblings such as list_my_bookings, which it explicitly names as the discovery tool for booking ids.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the two operating modes with their conditions: with a connected Tell & Go account any of the traveller's own bookings can be read, without one only a booking created in this same MCP session. It also routes the agent to list_my_bookings to obtain ids, so the when-to-use and the alternative are both explicit.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.