Skip to main content
Glama

Check car availability

check_vehicle_availability
Read-onlyIdempotent

Check availability and total price of up to 10 cars for given pickup/return dates. Returns available (true/false), days, price_day and total_eur. Cars without a published rate return total_eur:null with a price_note — that is normal, not a failure.

CARS ON HOTELSCASA: cars from local rental companies (offered_by:"rental_company") and from private owners. Cars marked instant:true are confirmed immediately; the rest are confirmed after booking by the rental company or by the owner, who replies personally. A rental-company car with similar_model:true guarantees the class, not the exact model.

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.

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
pickup_dateYesYYYY-MM-DD.
return_dateYesYYYY-MM-DD.
vehicle_idsYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNo
itemsNo
messageNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior5/5

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

Far exceeds the readOnly/idempotent annotations: it explains that null price_day/total_eur is normal and must not be reported as unavailable, distinguishes instant vs. owner-confirmed bookings, clarifies similar_model class guarantees, mandates verbatim booking_link, and forbids inventing phone/address/plate. This is unusually rich behavioral guidance.

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 purpose sentence followed by clearly labelled PRICE and GOLDEN LINK RULE blocks, which is easy to scan. Minor redundancy: the 'null price is normal, not a failure' point is made twice, once in the intro and again in PRICE.

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?

Despite an output schema existing, the description explains the semantics of each returned field (available, days, price_day, total_eur, price_note, booking_link) plus booking-confirmation and privacy constraints. Nothing needed to call or interpret this tool 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 67% and already documents the YYYY-MM-DD formats and maxItems 10. The description restates the 'up to 10 cars' cap and date framing but adds no new meaning about what vehicle_ids are or where to obtain them. Baseline 3 for a mostly self-documenting schema.

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

Purpose4/5

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

States a specific verb+resource ('check availability and total price of up to 10 cars') with explicit scope (pickup/return dates) and enumerates the returned fields. It is clearly distinct from generic siblings like check_availability, though it never names a sibling to route against.

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?

Implies the tool is used to price/verify a set of vehicle_ids before booking, and the GOLDEN LINK rule hints at the booking flow that follows, but there is no explicit 'use this when / not when' or named alternative (e.g. search_vehicles first). Usage context is inferable rather than 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.