Skip to main content
Glama

Search rental cars

search_vehicles
Read-onlyIdempotent

Search RENTAL CARS on HotelsCasa by city, country or geographic radius, with pickup/return dates, seats, transmission, class and price. Cars are a SEPARATE inventory from properties — use this tool only when the traveller asks about a car, never to answer an accommodation question.

CARS ON HOTELSCASA: every car belongs to a private owner, not to a rental company. The traveller pays the owner directly for the rental; HotelsCasa only charges its platform service fee. Cars marked instant:true are confirmed immediately; the rest are confirmed by the owner, who replies personally.

PRICE: price_day is the daily rate and total_eur the rental for the whole period. A car with price_day:null has NOT published a rate — that is normal and common, never call it unavailable or say the data is missing. Present it with its price_note and send the traveller to the booking_link to ask the owner.

GOLDEN LINK RULE: every car you present MUST include its booking_link verbatim, as a clickable link — never omit it, shorten it or strip its parameters. It is the only way the traveller can proceed.

NEVER invent or reveal a phone number, an address or a licence plate: they are not in the data and are only shared through the booking flow. Coordinates are approximate on purpose (~200 m) — use them for "3 km from the centre", never as a pickup address.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latNoLatitude for radius search.
lngNoLongitude for radius search.
cityNo
langNoLanguage of the answer: es, en, de, fr, it, pt, tr or ru. Default es.
classNoVehicle category slug (economy, suv, van…).
limitNoHow many results to return (1-10, default 10).
queryNoFree text: make, model or city.
countryNoISO-3166 alpha-2, e.g. ES.
price_maxNoEUR/day. Same rule as price_min.
price_minNoEUR/day. Cars without a published rate are always kept.
radius_kmNoSearch radius in km (default 15, max 100).
seats_minNo
page_tokenNoOpaque token from a previous page.
pickup_dateNoYYYY-MM-DD.
return_dateNoYYYY-MM-DD.
transmissionNo'manual' or 'automatic'.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNo
countNo
errorNo
itemsNo
messageNo
next_page_tokenNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, the description discloses critical behavioral facts: cars are privately owned, payment flows to the owner, instant confirmation differs from owner confirmation, price_day:null is normal, booking_link must be preserved verbatim, and phone/address/licence plate must never be invented. This is exactly the kind of context annotations cannot convey.

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?

Though long, the description is sectioned, front-loaded with purpose, and every paragraph carries a distinct operational rule. The bold section labels and explicit warnings make the density navigable. Nothing feels padded or redundant.

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 16-parameter tool with no required fields, this description covers usage scope, data model, pricing semantics, mandatory link handling, privacy constraints, and coordinate precision. With an output schema present, return-value details are not needed. An agent has everything required to invoke the tool safely and correctly.

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 high (88%), so the baseline is 3, but the description adds real semantic value: it explains the meaning of price_day:null, that price_min keeps cars without a published rate, that coordinates are approximate for radius searches, and how pickup/return dates frame total_eur. It doesn't enumerate every parameter, but it compensates 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?

The description opens with a specific verb and resource: 'Search RENTAL CARS on HotelsCasa by city, country or geographic radius,' and enumerates the key filter dimensions. It explicitly distinguishes cars from properties, so the agent can separate this from property-search siblings. This is a model of purpose clarity.

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?

The description gives explicit usage context: 'use this tool only when the traveller asks about a car, never to answer an accommodation question.' It also explains the inventory model, which helps the agent decide when this tool is appropriate. It does not name sibling tools like get_vehicle or check_vehicle_availability, so some selection nuance is left to inference.

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.