Skip to main content
Glama

Search Tripadvisor hotels

tripadvisor_search

Search Tripadvisor for hotels at a destination, optionally for dates, guests, filters, a price range and a sort, and return the hotels listed with rating, ranking, price and amenities. Use tripadvisor_hotel with a hotel url for one hotel in detail. Spends credits per page of results read. If status is "queued" or "running", call crawl_poll with the job_id to collect it.

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": {
      "destination": "<destination>"
    },
    "name": "tripadvisor_search"
  }
}

Input Schema

NameRequiredDescriptionDefault
cityNoThe city inside that country to appear to browse from, as the pool spells it: letters, digits, hyphens or underscores, e.g. berlin or new_york. Requires country. Doubles the price of the crawl.
sortNoHow to order the list: best_value, traveler_ranked, price (low to high) or distance (to the city center).
roomsNoHow many rooms. Left as the page has it when absent.
adultsNoHow many adults. Left as the page has it when absent.
checkinNoThe first night, as YYYY-MM-DD, today or later. Requires checkout. Without dates the prices are for no stay in particular.
countryNoThe country to appear to browse from, as a two-letter ISO 3166-1 code such as es, us or de. Free. Required to use city.
filtersNoFilters named the way the page prints them, e.g. "Pets Allowed", "3 Star", "Budget", or by their checkbox value, e.g. "amenity:9167". One the page does not offer is skipped.
premiumNoFetch through the premium proxy pool instead of the standard one. Costs more; use it for targets that refuse ordinary requests.
checkoutNoThe day you leave, as YYYY-MM-DD, after checkin. Requires checkin.
childrenNoHow many children. Their ages are not set.
max_pagesNoHow many pages of results to read. Each page costs 30 credits.
price_maxNoThe highest nightly price, in the currency the page shows. At least price_min.
price_minNoThe lowest nightly price, in the currency the page shows.
destinationYesWhere to stay, as you would type it into Tripadvisor's search: a city or a region.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (which only declare openWorldHint and non-destructiveness), the description discloses the credit cost per page of results and the asynchronous job lifecycle, including the exact field (`job_id`) and tool needed to collect a pending job. These are exactly the operational facts an agent cannot infer from the schema.

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?

Three sentences: capability and return shape first, sibling disambiguation second, cost and async handoff last. No filler, and the most decision-relevant information is front-loaded.

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?

For a 14-parameter tool with no output schema, the description supplies the returned field set, the cost model, and the polling path for async results. Nothing an agent needs in order to invoke and complete the call correctly 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 description coverage is 100%, so parameter meaning is already carried by the schema. The description only enumerates the optional dimensions (dates, guests, filters, price range, sort) without adding format or constraint detail, which is the baseline for a fully documented 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?

The description opens with a specific verb and resource ("Search Tripadvisor for hotels at a destination") and states what comes back ("hotels listed with rating, ranking, price and amenities"). It explicitly contrasts with the sibling `tripadvisor_hotel`, so an agent can choose between them without opening either schema.

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 names two alternatives with the condition that selects each: `tripadvisor_hotel` with a hotel url when only one hotel's detail is needed, and `crawl_poll` with the `job_id` when `status` is "queued" or "running". That is explicit routing guidance rather than implied usage.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources