Skip to main content
Glama

Search hotels for a destination

wanderlog_search_hotels

Search hotel offers across Airbnb, Expedia, Google, and Kayak for a destination and date range; compare vendor deals and filter results by price, rating, amenities, and lodging type.

Instructions

Search Wanderlog's hotel aggregator (airbnb, expedia, google, kayak) for a destination and date range. Returns ranked offers with per-vendor deal comparison and an available_filters facet block the LLM can use to narrow.

Specify exactly one of destination or geo_id. For free-text destinations the highest-popularity match is picked; up to 2 candidates appear in alternative_geos as a soft hint — re-call with one of those geo_ids if the wrong city was chosen.

Use response_format='detailed' to include amenities, hotel class, and property type on each offer. The default 'concise' format omits those fields to keep token usage low.

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum number of offers in the response.
geo_idNoExplicit Wanderlog geo id (usually obtained from a prior search's 'geo' or 'alternative_geos').
sort_byNoResult ordering.ratings
sourcesNoOverride the default vendor set ['airbnb','expedia','google','kayak'].
check_inYesCheck-in date, YYYY-MM-DD.
currencyNoISO 4217 currency code for prices (e.g. 'INR', 'USD', 'ARS'). Optional. When provided, the shared session's currency preference is updated before searching so all returned prices are in this currency. When omitted, prices are returned in the session's existing currency and no global preference is changed.
amenitiesNoRequired amenities; values come from 'available_filters.amenities' in a prior response.
check_outYesCheck-out date, YYYY-MM-DD. Must be after check_in.
room_countNoNumber of rooms.
adult_countNoNumber of adults.
destinationNoFree-text destination (e.g. 'Pattaya', 'Tokyo Shinjuku'). The highest-popularity matching geo is picked; up to 2 alternatives are returned in 'alternative_geos' for the LLM to re-call with geo_id if needed.
price_rangeNo[min, max] nightly price band in the response currency.
children_agesNoAges of children. Wanderlog prices children by age, not count — pass each child's age (e.g. [4, 9]).
hotel_classesNoStar ratings to keep, e.g. [4, 5].
lodging_typesNoLodging-type filter; values come from 'available_filters.lodging_types' in a prior response.
property_nameNoSubstring match against the property name.
response_formatNoOutput verbosity. 'concise' returns essential fields (name, price, rating, deals, location). 'detailed' also includes amenities, hotel_class, lodging_type, accommodation_type, and thumbnail.concise
min_beds_in_roomNoMinimum beds per room.
min_guest_ratingNoMinimum guest review score (Wanderlog's 0-10 scale).
accommodation_typesNoAccommodation-type filter; values come from 'available_filters.accommodation_types' in a prior response.
hotel_or_vacation_rentalNoRestrict to hotels, vacation rentals, or both.
vacation_rental_amenitiesNoVacation-rental-specific amenities; values come from 'available_filters' in a prior response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.2

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does reasonably well: it discloses the return shape (ranked offers, per-vendor deal comparison, available_filters facet block, alternative_geos), the popularity-based geo resolution behavior, and the token tradeoff between concise and detailed formats. It omits auth requirements, rate limits, and whether the search hits live vendor APIs or cache, which keeps it from 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?

Three short paragraphs, each front-loaded with the decision that matters most: what the tool returns, how to disambiguate the destination, then the verbosity knob. No filler sentences and no restatement of the name or title.

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

Completeness4/5

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

For a 22-parameter tool with no output schema and no annotations, the description does the essential work of describing return values, the geo fallback loop, and the verbosity tradeoff. What remains thin is guidance on the large filter surface and any note about pagination or result-count behavior beyond the limit parameter.

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 baseline is 3; the description adds genuine value beyond it by spelling out the mutual-exclusivity constraint between destination and geo_id, the semantics of alternative_geos as a soft re-call hint, and the field-level difference between concise and detailed output. It leaves the filter parameters (amenities, lodging_types, price_range, etc.) to the schema, which is acceptable given full coverage.

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 — searching an aggregated hotel inventory across airbnb/expedia/google/kayak for a destination and date range — and distinguishes itself from siblings like wanderlog_search_places and wanderlog_add_hotel by naming the aggregator and vendor set. An agent can tell immediately this is the discovery tool for lodging offers, not trip mutation or generic place search.

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

Usage Guidelines4/5

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

Gives explicit operational guidance: 'Specify exactly one of destination or geo_id', the fallback workflow of re-calling with a geo_id from alternative_geos when the wrong city is picked, and when to prefer response_format='detailed'. It does not name sibling alternatives (e.g. why not wanderlog_search_places or wanderlog_add_hotel), so it stops short of full when/when-not routing.

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