AutoIsto
Server Details
Used cars for sale in Slovakia: plain-language search, price verdicts and typical asking prices.
- Status
- Healthy
- Uptime
- 99.9% over 29 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 3 tools
Each tool targets a clearly distinct purpose: search_cars finds listings, get_car_details returns full data for one specific car, and get_model_price reports market-level asking prices for a model. The descriptions explicitly separate specific-car valuation from model-level price guidance, so an agent can select correctly.
All names use consistent snake_case and a verb_noun pattern: get_car_details, get_model_price, search_cars. The switch from get_ to search_ reflects the different action and remains predictable.
Three tools are well-scoped for a focused car-search assistant: one search entry point, one detail lookup, and one market-price statistic. Each tool has a clear, non-redundant role and no unnecessary operations.
The core search, car-detail, and model-price workflows are covered, including workarounds via listing URLs. Minor gaps remain around seller contact, VIN/licence plate, and pagination beyond the returned top 10 results, but these are either intentionally out of scope or handled by the linked URL.
Available Tools
3 toolsget_car_detailsGet car detailsARead-onlyIdempotentInspect
Use this when the user asks for more about one specific car returned by search_cars (engine power, body, colour, price history, how long it has been listed). Requires the car id from search_cars; do not guess ids. Returns technical data and the AutoIsto price verdict; it does not return the seller's name, phone, description, VIN or licence plate — for contact the user opens the car's url. If the car is no longer in the offer, found is false.
| Name | Required | Description | Default |
|---|---|---|---|
| carId | Yes | The id of a car from search_cars results. |
Output Schema
| Name | Required | Description |
|---|---|---|
| car | Yes | |
| note | Yes | |
| found | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/idempotent/non-destructive, but the description goes further by disclosing negative scope ('does not return the seller's name, phone, description, VIN or licence plate') and a success sentinel for stale data ('If the car is no longer in the offer, found is false'). This is the kind of behavioral detail the schema and annotations do not carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the trigger condition and dependency, followed by returned/not-returned field lists and the not-found case. Every sentence earns its place, though the parenthetical field enumeration and the concatenated negation clause make it slightly denser than necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, yet the description still summarizes them and flags the not-found shape. Combined with the id requirement and the explicit exclusion of contact fields, nothing an agent needs to call this correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single carId param is documented there, so the baseline is 3. The description adds a genuine constraint beyond the schema by forbidding fabricated ids ('do not guess ids') and reiterating the provenance requirement, which reduces hallucinated-id calls.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource ('get car details for one specific car') and immediately anchors it to the sibling that produces the input ('returned by search_cars'). It also enumerates the concrete payload (engine power, body, colour, price history, listing age), so an agent can distinguish it from get_model_price and search_cars without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit about when to use it ('user asks for more about one specific car'), what it depends on ('Requires the car id from search_cars'), and what not to do ('do not guess ids'). It further routes the agent elsewhere for contact info ('for contact the user opens the car's url'), which is exactly the when-not guidance needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_model_priceGet typical asking priceARead-onlyIdempotentInspect
Use this when the user asks how much a car model costs in Slovakia, or whether a price for a model is reasonable. Returns the median ASKING price of the brand/model (optionally one model year) in AutoIsto's current offer, the sample size, the price range and the date. The median is omitted below 20 cars with a plain price. These are prices sellers ask, not sale prices; mileage and equipment move the price, so present it as a guide. Do not use it for valuing a specific car's condition, for new-car prices or for markets outside Slovakia.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Model year, only together with model. | |
| brand | Yes | Car brand, e.g. Škoda, Volkswagen, BMW (abbreviations such as VW work). | |
| model | No | Model, e.g. Octavia, Golf, X5, Rad 3, C trieda (English names such as 3 Series or C-Class also work — the interpretation is returned). Versions, body variants and generations (RS, Variant, B8) are not separated: figures cover the whole model and notApplied says so. Omit for the whole brand. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | Model page on www.autoisto.sk. |
| asOf | Yes | Date of the figures (YYYY-MM-DD). |
| note | Yes | |
| year | Yes | |
| brand | Yes | |
| found | Yes | |
| model | Yes | |
| scope | Yes | What the figures cover. "brand" when no model was given — a year is applied only together with a model, see note. |
| notApplied | Yes | Part of the requested model the figures do NOT reflect (version, body, generation, e.g. "RS", "Variant", "B8"): figures cover the whole model. Tell the user. |
| sampleSize | Yes | Cars the median is computed from. |
| listedCount | Yes | Cars of this brand/model(/year) in the offer today. |
| maxPriceEur | Yes | |
| minPriceEur | Yes | |
| interpretation | Yes | How the model name was understood when AutoIsto knows it under another name ("3 Series" → Rad 3, "320d" → Rad 3). Tell the user. |
| medianAskingPriceEur | Yes | Median ASKING price; null when fewer than 20 cars have a plain price. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, it discloses that the median is suppressed below 20 cars with a plain price, that returned figures are asking not sale prices, that mileage and equipment move the price, and that the response carries sample size, range and date. These are exactly the caveats an agent needs to avoid overclaiming precision.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the use case, then output shape, then caveats, then exclusions — three tight sentences and a closing prohibition, with no filler. Every clause carries actionable content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Even though an output schema exists (so return details are optional), the description still names the returned fields and the small-sample suppression rule, closing the one gap an output schema could not convey. Nothing needed to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and already documents brand, model and the year-needs-model constraint, so the schema carries the load. The description adds only a light touch ('optionally one model year') and does not extend the aggregation/version caveat beyond what the model field description already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource with explicit scope: the median ASKING price of a brand/model (optionally one year) from AutoIsto's current Slovak offer. The 'asking, not sale price' framing and the Slovakia-only scope make it impossible to confuse with get_car_details or search_cars.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit when-to-use ('user asks how much a car model costs in Slovakia, or whether a price is reasonable') paired with explicit exclusions ('not for valuing a specific car's condition, new-car prices or markets outside Slovakia'). The exclusions functionally route the agent away from the sibling get_car_details.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_carsSearch used carsARead-onlyIdempotentInspect
Use this when the user wants to find a used car for sale in Slovakia — by brand, model, body type, fuel, gearbox, year, price, mileage, power or town/district. Covers listings sellers published on AutoIsto directly and public listings from Slovak car portals. Pass the criteria as ONE short phrase in Slovak (Czech also works), with numbers as the user said them. Examples that are fully understood: "škoda octavia kombi diesel automat od 2017 do 15000 €", "suv automat do 25000 €", "bmw x5 diesel od 2019 do 40000 €", "kombi do 10000 € Žilina". Use at most ONE body type per call (kombi, SUV, sedan, hatchback, liftback, van, kupé, kabriolet, dodávka); for two body types make two calls. Leave out filler and wishes that are not filters (rodinné, auto, do mesta, spoľahlivé) and equipment (ťažné, panoráma) — unknown words are not applied and are listed in notUnderstood. Returns up to 10 cars with price verdicts, what was understood, which criteria were relaxed when nothing matched exactly, which words were not applied, and a link to all results. Limits: only cars currently listed on AutoIsto (Slovakia, prices in EUR); no new-car configurators, rentals, leasing offers or cars abroad; the offer changes daily, so a car may already be sold.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Concrete criteria in Slovak or Czech, e.g. "bmw x5 diesel od 2019 do 40000 €" or "kombi do 10000 € Žilina". |
Output Schema
| Name | Required | Description |
|---|---|---|
| cars | Yes | Up to 10 cars, AutoIsto's best-value order (closest to the budget when a budget was given). |
| note | Yes | |
| query | Yes | |
| relaxed | Yes | Criteria dropped because nothing matched exactly. |
| understood | Yes | Filters AutoIsto read from the phrase, in Slovak (e.g. Škoda, Octavia, do 15 000 €). |
| totalMatches | Yes | How many cars in the offer match (after relaxing, if any). |
| allResultsUrl | Yes | All matching cars on www.autoisto.sk. |
| notUnderstood | Yes | Words from the query that were NOT applied as filters (unknown words, two body types at once, equipment). Empty together with empty relaxed = the results match everything in the query. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive), so the description goes well beyond them: it discloses the 10-result cap, that criteria are relaxed when nothing matches, that unrecognized words are surfaced in notUnderstood rather than applied, that a link to all results is returned, and that the inventory changes daily so listings may be sold. These are non-obvious behaviors an agent needs to interpret output correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose and usage, and every section (format rules, examples, limits) is functional. It is on the long side for a single-parameter tool — four examples and two restated length/verbosity rules could be trimmed — but nothing is filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a one-parameter tool with an output schema, the description still supplies everything needed to call it correctly: intended input syntax, language, worked examples, the one-body-type constraint, exclusion guidance, result limits, and coverage boundaries. No material gap remains for an agent to act on.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema coverage is already 100%, the description adds a great deal of semantic depth the schema lacks: the query must be ONE short phrase in Slovak (Czech tolerated), numbers spoken as the user said them, at most one body type per call with an enumerated vocabulary, and filler/equipment words to omit. The worked examples directly model the expected input format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — finding a used car for sale in Slovakia — and enumerates the exact criteria it can search on (brand, model, body type, fuel, gearbox, year, price, mileage, power, town/district). The scope (AutoIsto listings plus aggregated Slovak portals) is concrete enough to separate it from get_car_details and get_model_price, which serve per-car and per-model queries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Opens with an explicit when-to-use clause and gives a strong when-not list (no new-car configurators, rentals, leasing offers or cars abroad; only currently-listed Slovak cars in EUR). It does not, however, explicitly route the agent among its siblings (e.g. 'follow with get_car_details for a specific listing'), leaving that inference to the reader.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
search_cars1 field changed- added
Output schema / properties / cars / items / properties / paidListingAdded value: +{ + "type": "boolean" +}
3 tool updates
- First observed
get_car_details - First observed
get_model_price - First observed
search_cars
Related MCP Connectors
Used cars for sale in Czechia: plain-language search, price verdicts and typical asking prices.
Flats, houses and plots for sale or rent in Slovakia: search, price verdicts and prices per m².
Czech car market: below-market deals, price trends, valuations, official CZ VIN registry report.
Private car sales in Europe: search listings, price estimate from VIN, portals, contracts.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables agents to search and analyze used-vehicle listings across multiple Serbian marketplaces, including price statistics, history, and per-user saved-search watches.1-
- AlicenseAqualityCmaintenanceEnables AI assistants to search live used-car inventory, verify whether asking prices are fair market value, estimate annual road tax and running costs, and initiate contact with sellers for the Portuguese market.645 npmMIT
- FlicenseBqualityDmaintenanceEnables users to search for vehicles and retrieve detailed listing information from the Turbo.az automotive marketplace. It supports advanced filtering by make, model, price, and other specifications through natural language queries.4-
- AlicenseAqualityDmaintenanceAggregates and searches used car listings from multiple sources (Cars.com, Autotrader, KBB) with price, mileage, dealer info, and optional CarFax-style filters (1-owner, no accidents, personal use).217MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.