CarJet MCP Server

Connect an AI assistant to CarJet so it can answer customer questions and link to the right pages, without scraping the site.

CarJet publishes a Model Context Protocol (MCP) server. Any MCP-capable assistant — Claude, an agent you build yourself, or any client that speaks the protocol — can use it to search our help centre, turn a destination name into the right landing page, and look up the cheapest car available for a set of dates in Europe and beyond.

Bookings are not made through this server. It is read-only: nothing it exposes reserves a car, takes a payment or changes anything. To complete a rental, send the customer to www.carjet.com, which is where the price and the terms are final.

Connect

Endpointhttps://www.carjet.com/dot/mcp
TransportStreamable HTTP (stateless). No SSE session is kept open.
AuthenticationNone. No API key, no account, no sign-up.

In Claude Code:

claude mcp add --transport http carjet https://www.carjet.com/dot/mcp

In Claude (web or desktop): Settings → Connectors → Add custom connector, and paste https://www.carjet.com/dot/mcp.

In any other client, configure a remote MCP server with that URL and the streamable HTTP transport. You can also point the MCP Inspector at it to browse the tools before writing any code.

Tools

Four tools, all read-only. Everything you get from this endpoint is CarJet: the brand is fixed by the domain you called, so there is nothing to configure and no way to get another site's prices or pages by accident.

faq_search

Searches our public help centre and returns the most relevant fragments, each with its title and source URL. Use it before answering anything about policies, required documents, insurance, payment, deposits or how the rental process works.

ParameterRequiredNotes
questionyesThe customer's question in their own words, 1–500 characters.
languagenoISO 639-1 two-letter code. Defaults to en.
max_resultsno1–3. Defaults to 3.

destination_url

Turns a destination written in free text (“Alicante Airport”, “Rome Fiumicino”) into the official landing page for that destination. If you also pass pickup and return dates, it returns a search URL with those dates already filled in. When the text matches several places, it returns the candidates instead of guessing.

ParameterRequiredNotes
destinationyesAs the customer wrote it, 2–100 characters.
languagenoISO 639-1 code. Defaults to en.
pickup_date, return_datenoYYYY-MM-DD. Pass both or neither.
pickup_time, return_timenoHH:MM.

cheapest_car

Runs a real availability search across the rental companies we work with and returns the cheapest car for those dates, with its group, transmission, seats, fuel policy, mileage, cancellation terms and deposit, plus links to the full list and to that car's detail page.

ParameterRequiredNotes
pickup_date, return_dateyesYYYY-MM-DD.
destination or destination_idyesFree text, or an id previously returned by destination_url. One or the other, not both.
languagenoISO 639-1 code. Defaults to en.
pickup_time, return_timenoHH:MM. Default 10:00.
agenoDriver age. Defaults to 35. Ask the customer if they may be under 25 — the price changes.
filtersnoFlat JSON object. Only include a key the customer actually asked for: transmission, min_seats, zero_excess, max_deposit, unlimited_km, extra_driver, at_airport.

A real search takes a few seconds, because it queries the rental companies live. The response carries a price_date and the URLs expire after 20 minutes.

car_detail

Regenerates the list and detail links for a car from a search you already ran. Cheap and instant: it does not query the rental companies again.

Example prompts

Once the server is connected, these are the kinds of questions that will use it. Each one exercises a different tool.

AskUses
“Do I need a credit card in my own name to pick up a hire car in Lisbon?”faq_search
“Give me the CarJet page for car hire at Faro Airport.”destination_url
“What's the cheapest car at Faro Airport from 10 to 13 November, automatic, with unlimited mileage?”destination_url then cheapest_car
“What's the cancellation policy on that one, and send me the link to book it?”faq_search and car_detail

Rate limits

The server is open, so it is metered rather than gated. Limits apply per calling IP address and reset at midnight UTC.

LimitValue
Requests per minute, per IP10
Requests per day, per IP200
Requests per day, across all anonymous callers1,000

Over the limit you get an error telling you which one you hit, not a silent failure. If you are building something that needs more than this, get in touch through the link below and we will talk about a key with its own allowance.

Terms of use

What we log

One line per call: which tool, how long it took, whether it succeeded, and a truncated one-way hash of the calling IP address. We do not store the text of your questions, the fragments returned, or the IP address itself. The counters exist to enforce the limits above and to spot abuse.

Support

Questions, problems, or a use case that needs higher limits: contact our support team. General customer questions are answered in our Help Center.