Search live car-hire deals from 200+ countries inside Claude and ChatGPT, with interactive carousels and detail views rendered directly in the chat — localised into 17 languages and the user's regional currency.
Overview
The EconomyBookings MCP exposes a single tool that lets an AI assistant find live car-hire deals on behalf of the user:
Car hire — short-term rental cars at airports and city locations worldwide, aggregated from rental companies including Avis, Hertz, Europcar, SIXT, GoldCar, Keddy by Europcar, ClickRent, NizaCars, Centauro, Drivalia and many more via EconomyBookings' BCRM Affiliates API. Returns vehicle specs, prices in the user's local currency, pickup/dropoff station details, insurance inclusions, free-cancellation status, and a deep link to book on the EconomyBookings site with the deal pre-applied.
Results render as an interactive carousel in the chat with a fullscreen detail view per vehicle. The user reviews options inline and clicks through to economybookings.com to complete the booking — this MCP never takes payment or holds reservations.
Click Add connector and choose EconomyBookings from the directory (or paste this server's URL if connecting manually).
Approve the requested permissions. The search-car-hire tool will appear in the tool picker.
In any chat, ask a car-hire question — Claude calls the tool automatically and renders the carousel inline.
ChatGPT (Apps SDK)
Open chatgpt.com/apps and find EconomyBookings in the directory.
Enable the app for your account.
Start a new chat and ask a car-hire question — ChatGPT will request the app and render results inline.
Both hosts run the widget in a sandboxed iframe. Search inputs (location, dates, driver age) are sent to EconomyBookings' BCRM Affiliates API to fetch live results; results are rendered locally in the iframe.
Tool
search-car-hire
Returns live car-hire deals at an airport or city location for the requested dates.
Parameter
Type
Notes
pickupLocation
string
Required. City name or 3-letter IATA airport code (e.g. "Malaga", "AGP", "Venice", "VCE"). Do not append "Airport".
dropoffLocation
string
Optional. Defaults to pickupLocation. Specify only for one-way rentals.
pickupDate / dropoffDate
YYYY-MM-DD
Both required. Must be today or later. Bare month/day with no year is interpreted as the next future occurrence.
pickupTime / dropoffTime
HH:MM
Optional. Defaults to 10:00.
driverAge
number
Optional. Defaults to 35 (no-surcharge mid-band). Pass only when the user volunteered their age — the model is instructed never to ask.
category
string
Optional. Comma-separated category terms (e.g. "SUV", "Van", "Compact", "Luxury", "Convertible", "Electric"). Mapped via EB's docs §6.3 group codes; aliases like "4x4", "Wagon", "Cabrio", "EV" also supported.
transmission
string
Optional. "Automatic" or "Manual".
supplier
string
Optional. Substring of supplier name (e.g. "Hertz", "GoldCar", "ClickRent"). If no exact match, the search falls back and surfaces closest alternatives.
vehicleModel
string
Optional. Substring of vehicle name (e.g. "Toyota Corolla", "Fiat 500"). Same closest-match fallback as supplier.
currency
ISO 4217
Optional. Overrides the country-derived currency. Pass only when the user explicitly asks for a different currency.
country
ISO 3166-1 α-2
Optional. User's CURRENT location (drives currency + COR). Inferred from ChatGPT's openai/userLocation meta when present; otherwise from conversation context.
locale
BCP 47
Optional. e.g. "en-GB", "es-ES", "fr-FR", "ko-KR". Drives the UI language and the locale segment of the booking link.
maxPrice
number
Optional. Maximum total price in the response currency.
limit
number
Optional. 1–20, default 10.
Returns per car: vehicle name, category, transmission, seats, doors, baggage, A/C, fuel policy, mileage limit, total + per-day price, deposit/remainder split, supplier name + rating + logo, pickup-station details (address, opening hours, pickup type), included insurance (CDW, Third Party Liability, Theft Protection, Roadside Assistance, etc.), free-cancellation deadline, online-check-in availability, discount/savings, and a deep link to book.
When filters narrow the result to zero, the server progressively relaxes them in priority order (vehicleModel → maxPrice → transmission → supplier → category) and surfaces the closest available matches, telling the assistant exactly which constraint it dropped. So the conversation never dead-ends with "no results".
Example queries
"Find me a car at Malaga airport from 6 to 13 June, driver age 35"
"Cheapest automatic at AGP for a week in July"
"One-way car hire from Venice airport to Verona airport, 5 days from 4 August"
"I want an SUV by Hertz in Madrid for the first week of August"
"Family-size car at Tenerife South for 10 days starting 20 July"
"Necesito un coche en Madrid del 15 al 20 de junio"
"I want to book a Fiat 500 in Rome for 7 days from 12 July"
"Car in Berlin for July 1–5… show me that price in USD instead"
Localisation
Results adapt to the user's location and chat language:
17 supported UI languages per the BCRM Affiliates API: English, Russian, Portuguese, French, Spanish, Italian, German, Chinese, Polish, Dutch, Swedish, Lithuanian, Latvian, Turkish, Estonian, Finnish, Korean.
Country-derived currency across ~80 markets — EUR for the Eurozone, GBP, USD, KRW, JPY, BRL, AUD, INR, MXN, CHF, NOK, SEK, DKK, PLN, CZK, HUF, RON, BGN, TRY, RUB, etc. Currencies not in EB's supported set fall back to the nearest one (e.g. ISK → EUR).
Dates render in the chat language; currency formatting stays in the user's regional locale so the symbol matches what they're used to.
Booking links carry the same locale through, so the EconomyBookings landing page matches the conversation.
Data & privacy
The MCP only reads from the EconomyBookings BCRM Affiliates API. No data is written, no accounts are required, and no payment is taken in this MCP — bookings happen on economybookings.com after the user clicks through.
Search inputs (location, dates, driver age, filters) are sent to EconomyBookings' API to fetch results. They are not stored by the MCP.
Vehicle and supplier images are streamed through a signed image proxy on this server so the widget's iframe only needs to allow our own origin under img-src. The proxy fetches the upstream image and forwards bytes through — it never logs the URL nor caches the content.
Anonymised, hashed session and user identifiers (when the host provides them) are sent to a private telemetry endpoint owned by Listo Labs to monitor reliability and product usage. No chat content, free text, names, or contact details are collected.
Prices are quoted in the user's resolved currency and are subject to live availability — they may change at any time, and some bookings carry additional at-desk fees (e.g. young-driver surcharge, one-way fee) which are shown transparently in the price breakdown.
Troubleshooting
"No cars found"
The server already falls back to a broader set when filters return zero, but if the underlying location/date combination has no inventory at all, no fallback will help. Try different dates, an IATA airport code instead of a city name (or vice versa), or a neighbouring city.
If you asked for a very specific vehicle model and got a fallback list, the message will tell you what was dropped (e.g. "I couldn't find a Toyota Corolla in Rome for those dates — here are Compact alternatives"). Ask the assistant to relax the model or supplier.
Past-date prompt
If a year resolves to a past date (e.g. "Athens, January 5–11 2025" in 2026), the server refuses and asks the user to confirm the intended year. The assistant suggests the next future occurrence of the same month/day — that's usually what the user meant.
The widget shows but doesn't expand to fullscreen
This is almost always a one-off connection race in the host. Clicking another card or refreshing the chat and asking again resolves it. The widget retries fullscreen automatically for ~1 second on Claude.
The widget renders but Claude's reply is just "[This tool call rendered an interactive widget…]"
This message is generated by Claude's host, not the MCP. It tells the model not to repeat data the user can already see in the widget. Ask a follow-up — the underlying vehicle data is in the model's context and will be used to answer.
Booking link doesn't open
Make sure pop-ups aren't blocked for the host (claude.ai or chatgpt.com). The MCP uses the host's openExternal capability to launch economybookings.com in a new tab.
Support
For issues with this MCP server (tool errors, missing results, widget rendering bugs):
When reporting a bug, please include: the host (Claude / ChatGPT), the prompt that triggered the issue, and any console output if you have access to dev tools.
For booking, refunds, modification or trip-related queries: contact EconomyBookings support or the rental supplier (Avis, Hertz, Europcar, etc.) you booked with directly — the MCP does not hold reservations or take payment.