Skip to main content
Glama

Get hotel booking links

get_booking_link
Read-onlyIdempotent

Return the approved booking links for a hotel (the same links shown to people on staylist.world) plus the Staylist hotel page. Property links open the exact hotel on Trip.com or Klook, where the traveler picks dates and room; preserve these URLs unchanged. Dated offer links, when present, are sorted by total price. The traveler completes checkout on the booking site; this tool cannot book or charge anyone. Staylist may earn a commission when someone books through these links, at no extra cost to the traveler; it never changes scores or order.

Input Schema

NameRequiredDescriptionDefault
adultsNo
checkinNoCalendar date in YYYY-MM-DD format; provide both dates or neither
checkoutNoCalendar date in YYYY-MM-DD format; provide both dates or neither
hotel_idYesExact hotel id returned by search_hotels
children_agesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/openWorld, so the safety profile is covered; the description still adds real value beyond that: it cannot book or charge, checkout happens on the third party site, dated offers are price-sorted, URLs must be preserved unchanged, and a commission may apply without affecting scores or ordering. It stops short of covering rate limits, auth, or freshness of links.

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

Conciseness4/5

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

Front-loaded with the return content, then constraints and disclosures, with no filler sentences. Slightly long at four sentences, but each one carries distinct information an agent needs (URL handling, sorting, no booking, commission).

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

Completeness5/5

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

No output schema exists, so the description carries the return-value burden and does so well: it enumerates the link types returned (property links to Trip.com/Klook, dated offer links sorted by total price, Staylist page). Combined with the annotations covering safety, nothing essential for correct invocation is missing.

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

Parameters3/5

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

Schema coverage is 60%, and the description only indirectly maps parameters to behavior via 'Dated offer links, when present,' hinting that checkin/checkout select dated offers. It adds nothing about adults or children_ages semantics, so it neither compensates for the uncovered parameters nor goes meaningfully beyond the schema.

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

Purpose5/5

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

States a specific verb and resource ('Return the approved booking links for a hotel') and clarifies the exact scope by equating it with what is shown publicly on staylist.world plus the Staylist hotel page. This distinguishes it cleanly from get_hotel (hotel details), search_hotels, and list_destinations without the agent opening any schema.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: the agent can infer you call this when a traveler wants to book, and the description draws a useful boundary ('this tool cannot book or charge anyone'). However, it never names an alternative sibling or explains when to prefer get_booking_link over get_hotel, and no prerequisite sequence (e.g. after search_hotels) is stated.

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.