Skip to main content
Glama

Server Details

Search 1.8M+ live Brazilian used-car and motorcycle listings from 90+ marketplaces, with FIPE reference prices, price distributions and cheapest-state comparisons. No API key needed.

Ownership verified
Status
Healthy
Uptime
99.8% over 23 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.8/5.0

Scored across 17 tools

Disambiguation5/5

Each tool targets a distinct analytical question (FIPE value vs. market position vs. price distribution vs. mileage vs. liquidity), and the descriptions explicitly disambiguate tricky pairs (e.g. get_similar_active_listings vs. get_alternative_models, get_listing_details vs. get_vehicle_by_id). The 'Use para...' guidance makes selection clear even where topics touch.

Naming Consistency5/5

All names are snake_case with a consistent verb_noun pattern (get_*, list_*, search_*). The verb families map predictably to intent: get_* for data/analysis, list_* for catalog navigation, search_* for retrieval.

Tool Count4/5

17 tools is slightly above the well-scoped range but each earns its place by answering a distinct buyer question. The catalog trio (brands/models/versions) and analytical tools don't feel redundant, so it's only marginally heavy.

Completeness5/5

The surface covers a full research pipeline: catalog navigation (list_brands/models/versions), search, single-listing fetch, valuation, market positioning, price/mileage context, liquidity, and cross-model alternatives. No obvious dead ends for a read-only vehicle-research domain.

Available Tools

17 tools
get_alternative_modelsAlternative modelsA
Read-onlyIdempotent
Inspect

Sugere OUTROS MODELOS diferentes (outras marcas/modelos) na mesma categoria, faixa de preço e tipo de carroceria — alternativas de compra. Use para 'recomende outros modelos' / 'alternativas a este carro'. (max_results padrão 4, máx 6.)

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes
max_resultsNo

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds a genuine behavioral constraint (max_results default 4, hard cap 6), which is useful, but says nothing about what the alternatives are ranked on or what happens when no match exists in the category/price band.

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 with the core purpose before the usage examples, and the parameter note is tucked into a parenthetical rather than bloating the prose. No wasted sentences, though the mixed-language phrasing is slightly harder to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description should hint at the return shape, but it only says 'suggest other models' without indicating whether results include names, brands, prices or similarity scores. Adequate for invocation, thin for interpreting results.

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 description coverage is 0%, so the description carries the burden. It documents max_results (default 4, max 6) well, but car_id is left entirely to inference — though the name and min=1 bound make it fairly self-evident. Partial compensation only.

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 (suggest) and resource (other models) with explicit scope: same category, price range and body type, framed as purchase alternatives. This differentiates it reasonably from listing-oriented siblings like get_similar_active_listings, though it never names a sibling to sharpen the boundary.

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?

Gives concrete trigger phrases ('recomende outros modelos' / 'alternativas a este carro'), which is strong positive routing guidance. It stops short of stating when NOT to use it, e.g. versus get_similar_active_listings or search_vehicles for broader exploration.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_avg_days_to_sellAverage days to sellA
Read-onlyIdempotent
Inspect

Tempo médio (mediana) que anúncios semelhantes ficam ativos antes de sair do ar — estimativa de liquidez/tempo de venda. 'model_year' (padrão) = mesmo modelo e ano; 'model' = todos os anos; 'model_state' = neste estado.

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes
granularityNomodel_year

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare this a read-only, idempotent, non-destructive, closed-world call, so the safety profile is covered. The description usefully adds that the figure is a median derived from similar listings (an estimate, not an exact value), but says nothing about caching, sample size, or data freshness.

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?

The core definition is front-loaded before the granularity explanation, and the sentence count is low. The em-dash construction is dense but every clause carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description does state what the tool returns (a median day count), and it covers the granularity semantics. It is adequate for a two-parameter read-only metric tool, though it omits anything about the response shape or units.

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 description coverage is 0%, so the description must carry the parameter burden. It does explain all three granularity enum values with real meaning (same model+year, all years, same state), which is genuine added value, but the required car_id is never described and no interaction between the two params is clarified.

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?

The description states a specific metric (median days listings stay active before being delisted) and frames it as a liquidity/time-to-sell estimate, which is more precise than the title. It does not explicitly contrast itself with siblings like get_market_stats or get_market_position, so an agent must infer the boundary.

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?

Usage is implied through the 'liquidity estimate' framing, but there is no statement of when to prefer this tool over get_market_stats or get_similar_active_listings, and no prerequisites or exclusions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_cheapest_statesCheapest statesA
Read-onlyIdempotent
Inspect

Estados (UF) onde este modelo está mais barato agora, por preço mediano crescente. Use para 'onde é mais barato comprar'. (top_n padrão 5, máx 10.)

ParametersJSON Schema
NameRequiredDescriptionDefault
top_nNo
car_idYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive, closed-world), so the bar is lower. The description adds real behavioral context beyond them: results are ranked by ascending median price, values are current ('agora'), and top_n is bounded at 10. It does not describe pagination or data freshness beyond the word 'now'.

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?

Two short sentences with the resource and ranking stated first, and the parameter bounds tucked into a parenthetical. Nothing is padded, though the parenthetical slightly interrupts the flow.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with no output schema, the description covers the ordering and the top_n bounds but never says what a result row contains (state plus price?). That return-shape gap keeps it at a minimum-viable level rather than complete.

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 description coverage is 0%, so the description must compensate. It documents top_n's default (5) and maximum (10), which the schema's bare title does not, but car_id is left uninterpreted beyond its name, so only part of the parameter semantics is recovered.

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?

The description states a specific verb+resource: returns the states (UF) where a given model is currently cheapest, ordered by ascending median price. That is concrete enough to distinguish it from siblings like get_price_distribution or get_market_position, though no sibling is named explicitly.

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?

It gives a trigger scenario ('Use for where is cheapest to buy'), which is clear implied usage, but it names no alternatives and no conditions for when NOT to use it versus e.g. get_price_distribution or get_market_stats.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_fipe_valuationFIPE valuationB
Read-onlyIdempotent
Inspect

Valor oficial da tabela FIPE deste carro e tendência recente. Use para perguntas sobre a FIPE. fipe_year é o ano FIPE usado; 32000 é como a FIPE escreve "0 km" (carro novo) — mostre fipe_year_label ("0 km"), nunca "32000".

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), and the description adds genuinely useful behavioral context the annotations cannot: the 32000 sentinel means '0 km' and fipe_year_label should be shown instead of the raw code. It does not describe auth, rate limits, or trend window, but the sentinel disclosure is substantive added value.

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?

Three short sentences, front-loaded with the purpose before the field quirks. Slightly diluted by referencing fields absent from the schema, but no sentence is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-param read tool with no output schema, the description does partially compensate by explaining the FIPE year encoding and label. However car_id is entirely unexplained and no return shape is hinted at, so it is adequate but with clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% for the single required parameter car_id, and the description never explains it. Instead it documents output-side fields (fipe_year, fipe_year_label) that do not appear in the input schema, so the one parameter an agent must supply is left undocumented.

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: the official FIPE table value for a given car plus its recent trend. An agent can tell it retrieves valuation data, though it does not explicitly differentiate itself from siblings like get_market_stats or get_price_distribution.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Use para perguntas sobre a FIPE' is a vague, self-referential trigger with no when-not guidance and no named alternative. Given that siblings such as get_market_stats, get_price_distribution and get_market_position cover overlapping price territory, the absence of routing guidance is a real gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_listing_detailsListing detailsB
Read-onlyIdempotent
Inspect

Fatos do próprio anúncio (cor, portas, opcionais, vendedor, fonte, km, link). Use para perguntas diretas sobre este carro específico.

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and a closed-world scope, so the safety profile is covered. The description adds that the payload is scoped to listing-level attributes rather than vehicle specs, which is useful context, but it says nothing about behavior when the listing is missing or stale.

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?

Two compact sentences with the field inventory front-loaded and the usage hint trailing, no filler. Efficient, though the parenthetical field list is doing more work than a structured output description would.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the burden of describing return content and does list the returned fields, which is the strongest part. It omits, however, the meaning/units of values (e.g. mileage units, link form) and any failure semantics, so it is only partially complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and there is one required parameter (car_id) that the description never explains. The phrase "este carro específico" only loosely implies car_id identifies the listing; format, valid range, or error behavior for an invalid id are not addressed, so the description fails to compensate for the schema gap.

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

Purpose3/5

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

The description names a concrete resource (listing facts) and enumerates the fields returned (color, doors, options, seller, source, mileage, link), so the agent knows what comes back. However, it never distinguishes this from sibling tools that sound nearly identical, notably get_vehicle_by_id and get_technical_specs, leaving the agent to guess which one to call.

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?

"Use para perguntas diretas sobre este carro específico" gives an implied usage context: direct factual questions about one specific car. There is no when-not-to-use guidance and no alternative sibling is named, so the routing decision against get_vehicle_by_id remains unresolved.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_market_positionMarket position vs FIPEA
Read-onlyIdempotent
Inspect

Posição de preço DESTE anúncio: vs. tabela FIPE e vs. o mercado de anúncios ativos do mesmo modelo. Use para 'esse preço é bom?' / 'está caro ou barato?'.

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and a closed world, so the safety profile is covered. The description adds that the comparison is against FIPE and active same-model listings, but says nothing about return shape or freshness of the comparison data.

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?

Two tight sentences: the scope is front-loaded ('Posição de preço DESTE anúncio'), followed by the use-case triggers. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, read-only tool with no output schema, the description conveys what the result represents (position vs FIPE and vs market). Adequate, with only minor gaps around return format and data currency.

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 description coverage is 0% for the single car_id parameter, but the parameter is a self-evident integer identifier and the description's 'DESTE anúncio' implies it selects the listing. Marginal added meaning over the 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 resource – the price position of THIS listing – and scopes it to two benchmarks (FIPE table and active listings of the same model). This clearly separates it from siblings like get_fipe_valuation (raw valuation) and get_price_distribution, though it does not name those siblings explicitly.

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?

Gives concrete user-intent triggers ('esse preço é bom?' / 'está caro ou barato?'), which is strong when-to-use guidance. It stops short of naming when NOT to use it or pointing to an alternative tool for related questions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_market_statsMarket statsA
Read-onlyIdempotent
Inspect

Live size of the PegaRex database: total active listings, number of source platforms, and when the data was last refreshed. Use this for the current count instead of quoting a fixed number.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds useful behavioral context by calling the data 'Live,' mentioning the refresh timestamp, and instructing the agent to use it for the current count instead of a stale figure.

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?

Two sentences with no filler: the first front-loads what the tool returns, and the second states when to use it. Every sentence earns its place.

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 zero-parameter, read-only stats endpoint, the description is complete: it lists the returned fields (active listings, platforms, last refresh) and gives the usage context. There is no output schema, but the description covers the return values sufficiently.

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?

The input schema is empty with zero parameters, so there is nothing for the description to add beyond the schema. Per baseline for zero-parameter tools, 4 is appropriate.

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 states a specific resource and output: 'Live size of the PegaRex database' with 'total active listings, number of source platforms, and when the data was last refreshed.' This is unambiguous and distinct from sibling tools like get_price_distribution or get_market_position, and the usage line 'current count instead of quoting a fixed number' clarifies what makes it different.

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?

It gives explicit context: 'Use this for the current count instead of quoting a fixed number.' This tells the agent when to select the tool, but it doesn't name alternatives or give exclusions beyond not relying on a fixed number.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_mileage_contextMileage contextB
Read-onlyIdempotent
Inspect

Avalia se a quilometragem deste carro é alta ou baixa para o modelo/ano (mediana do mercado + km/ano).

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive behavior. The description adds the analytical logic (market median and km/year) beyond annotations, though it omits output format and any latency/auth caveats.

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?

One compact sentence with the verb and evaluation criteria front-loaded, with no filler. It is arguably too terse given the missing guidance, but conciseness itself is good.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only, single-parameter analytical tool with rich annotations, the description gives the core evaluation logic. It still leaves gaps around when to choose it over siblings and what car_id refers to, so it is only minimally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the single car_id parameter has no schema description. The phrase 'deste carro' loosely ties to car_id but adds no format, source, or constraint details.

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 analytical action (evaluates whether mileage is high or low for model/year) and the method (market median + km/year). It does not explicitly differentiate from siblings like get_market_position or get_fipe_valuation, so it is clear but not fully sibling-aware.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use, when-not-to-use, or alternative-tool guidance. The description implies a mileage-relative assessment but leaves the agent to infer the context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_price_distributionPrice distributionA
Read-onlyIdempotent
Inspect

Faixa de preços (mínimo, p25, mediana, p75, máximo) de anúncios ativos semelhantes. Use para dar contexto de preço. (year_tolerance ±anos, padrão 1, máx 5.)

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes
year_toleranceNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds one useful behavioral fact: the stats are computed over *active* (semelhantes) listings, not sold data. It says nothing about how similarity is determined or how many listings are sampled.

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?

Very compact: the output shape is front-loaded, followed by the usage hint and the one parameter caveat. Nothing is padded, though the parenthetical parameter note slightly interrupts the flow.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description helpfully enumerates the returned percentiles, and the year_tolerance constraint is given. It omits any explanation of the 'similar active listings' similarity criteria and ignores car_id, but for a simple read-only stat tool it is largely sufficient.

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 description coverage is 0%, so the description must compensate. It usefully documents year_tolerance (default 1, max 5), which the schema only partially conveys (default present, max absent). car_id is left unexplained, though its meaning is largely self-evident from the tool name.

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: it returns the price distribution (min, p25, median, p75, max) of similar active listings. That is a distinct output from siblings like get_fipe_valuation or get_market_position. It does not name or contrast those siblings explicitly, so it stops short of a 5.

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?

'Use para dar contexto de preço' gives an implied usage context, but there is no when-to-use vs alternatives guidance and no exclusions. With many sibling pricing tools available, an agent gets only a vague steer toward price context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_similar_active_listingsSimilar listingsA
Read-onlyIdempotent
Inspect

Outras unidades à venda do MESMO modelo (mesmo carro, outros anúncios) — ex.: mais baratas, outras cores/anos. Use para 'tem opções mais baratas DESTE carro?'. NÃO use para sugerir modelos diferentes. (max_results padrão 5, máx 8; cheaper_only=true só mais baratos que este.)

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes
max_resultsNo
cheaper_onlyNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive semantics, so the safety profile is covered. The description adds operational behavior beyond the schema: default 5 with a hard cap of 8 results and the fact that cheaper_only filters to units priced below this one, which shapes expectations about output volume.

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-loads the core definition, then the use case, then the exclusion, then constraints. Dense but every clause carries routing or parameter information; the parenthetical constraint block is slightly compressed but not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a low-complexity read-only lookup with no output schema, the description covers purpose, routing, exclusions, and all meaningful parameter constraints. It does not describe the shape of returned listings, but the annotations plus the nature of the tool make that a minor gap.

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 description coverage is 0%, so the description must carry parameter meaning, and it does for two of three: max_results (default 5, max 8) and cheaper_only (only cheaper than this one). car_id is only implied via 'DESTE carro', so it is not fully spelled out, but the schema marks it required and typed.

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?

States a specific verb+resource+scope: 'Outras unidades à venda do MESMO modelo (mesmo carro, outros anúncios)'. It immediately distinguishes itself from sibling tools by ruling out 'modelos diferentes', which is exactly the boundary against get_alternative_models.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit triggering user question ('tem opções mais baratas DESTE carro?') and an explicit exclusion ('NÃO use para sugerir modelos diferentes'), which routes the agent to the correct sibling. Both when-to-use and when-not-to-use are present.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_technical_specsTechnical specsB
Read-onlyIdempotent
Inspect

Ficha técnica completa (motor, potência, torque, câmbio, consumo, desempenho, dimensões, freios, pneus). section opcional restringe a uma seção: 'Motor', 'Transmissão', 'Consumo', 'Desempenho', 'Dimensões', 'Freios', 'Pneus', 'Suspensão'.

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes
sectionNo

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds that the response is a complete spec sheet and can be restricted to one section, but it does not disclose permissions, rate limits, error behavior, or return format beyond the listed categories.

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?

Two tightly written sentences: the first front-loads what the tool returns, and the second explains the optional section filter with its allowed values. Every sentence earns its place with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only lookup with rich safety annotations but no output schema, the description gives enough context to call it correctly by listing returned categories and the section filter. The only notable omission is any explanation of the required car_id parameter.

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 description coverage is 0%, so the description must compensate. It thoroughly enumerates the allowed section values and marks section as optional, which adds meaning beyond the bare anyOf string schema, but it says nothing about the required car_id parameter beyond its name.

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?

The description states a clear resource ('ficha técnica completa') and enumerates the exact data categories returned, so an agent knows it retrieves vehicle technical specifications. It does not explicitly differentiate itself from sibling tools like get_vehicle_by_id, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the optional section filter but gives no guidance on when to choose this tool over alternatives such as get_vehicle_by_id or get_listing_details. There are no conditions, exclusions, or alternative-routing hints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_vehicle_by_idGet listing by idB
Read-onlyIdempotent
Inspect

Fetch the full details of a single listing by its PegaRex id: brand, model, version, year, price, mileage, fuel, transmission, city/state, FIPE price, deal_score, source platform and the original ad URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
car_idYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description adds useful context by enumerating the fields returned (brand, model, year, price, FIPE price, deal_score, ad URL), which is valuable given there is no output schema, but it says nothing about missing-id error behavior or response shape.

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?

A single front-loaded sentence: verb and resource first, then the field enumeration as justification for 'full details'. Nothing is redundant, though the attribute list is long enough to dilute the core action slightly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Because there is no output schema, the returned-field list is the description's main contribution and it is present. However, for a tool that overlaps heavily with get_listing_details, the absence of any routing guidance or not-found behavior leaves a clear gap.

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 description coverage is 0% and the schema only labels the parameter 'Car Id', so the description does carry some burden. It clarifies that the expected value is a 'PegaRex id', which is slightly more meaningful than the schema's generic integer label, but it gives no format, source or example of how to obtain one.

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 ('Fetch'), a precise resource ('full details of a single listing') and the identifier used to address it. It is distinguishable from list/search siblings, but it does not differentiate itself from get_listing_details, which appears to be a functional neighbor.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance and no mention of the obvious alternative, get_listing_details, nor any statement about where the id comes from. The only implicit cue is 'by its PegaRex id', which hints that the id must be obtained elsewhere but does not say so.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_brandsList brandsB
Read-onlyIdempotent
Inspect

List available vehicle brands (makes) with their catalog id and active listing count. Pass a brand's id as brand_id to search_vehicles/list_models for fast, exact filtering.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoCars
body_styleNo

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description usefully adds that results include a catalog id and an active listing count, but says nothing about filtering behavior or result ordering.

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?

Two tight sentences, front-loaded with the core action and followed by the actionable handoff instruction. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description reasonably covers the return shape (id + listing count) and annotations cover safety, but it omits any explanation of the category/body_style inputs, leaving the parameterization unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description never mentions the two parameters (category Cars/Motorcycles, body_style). An agent gets no explanation of how the category enum scopes results — a meaningful gap for a tool whose filtering dimension is entirely undocumented.

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 and resource ('List available vehicle brands (makes)') and adds what it returns (catalog id, active listing count), which distinguishes it from value-listing siblings like list_versions. However it doesn't explicitly contrast itself with closely related inventory tools such as list_filter_options.

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?

The description gives downstream guidance — pass the brand id to search_vehicles/list_models for exact filtering — which implies the tool's role in a workflow. It does not say when to prefer list_brands over list_filter_options or list_versions, so selection guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_filter_optionsList filter optionsA
Read-onlyIdempotent
Inspect

Return the valid values for the constrained search filters — fuel_type, transmission, sort_by — and the list of source platforms. Use this to build a valid call to search_vehicles in a single round-trip.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds context by naming the constrained filter categories and the dependency on search_vehicles, but it does not describe output structure or data volatility; this is acceptable given the annotation coverage.

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?

Two sentences, no filler, with the return scope front-loaded and the usage instruction placed right after. Every sentence earns its place.

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?

With no parameters, a rich annotation set, and no output schema, the description fully covers what the tool returns and how it should be used. An agent can decide when to call it and what to do next without additional information.

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?

The tool has zero parameters, so there is no parameter detail the description must supplement. It still adds value by naming the filter fields the returned values correspond to, which helps the agent interpret the tool's purpose.

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 clearly states the action ('Return the valid values') and identifies the specific resource: constrained search filters (fuel_type, transmission, sort_by) and source platforms. This distinguishes it from sibling get_* and list_* tools by directly tying it to search_vehicles.

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 phrase 'Use this to build a valid call to search_vehicles in a single round-trip' explicitly tells the agent when to invoke this tool. It does not name alternatives or exclusions, but the prerequisite relationship to search_vehicles is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_modelsList modelsA
Read-onlyIdempotent
Inspect

List models for a brand (pass brand_id from list_brands, or a brand name) with each model's catalog id and active listing count.

ParametersJSON Schema
NameRequiredDescriptionDefault
brandNo
brand_idNo
categoryNoCars

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is fully covered. The description adds useful non-obvious return context (catalog id plus active listing count) which is valuable with no output schema, but says nothing about filtering behavior when no brand is supplied or about result size.

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?

A single front-loaded sentence with the scoping verb first and the payload detail trailing. The parenthetical is slightly interruptive but carries real information, so there is little waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-required-parameter list tool with no output schema, the description covers the key input path and the return shape. The unaddressed `category` default and the absence of any result-size/pagination note are the only meaningful gaps.

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 description coverage is 0%, so the description must carry parameter meaning. It clarifies the brand vs brand_id distinction (id sourced from list_brands, or a name), which is the genuinely ambiguous part, but the third parameter `category` and its Cars/Motorcycles enum are never mentioned.

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 and resource ("List models for a brand") and even describes the payload (catalog id and active listing count). It implicitly slots into the brand hierarchy (list_brands -> models -> versions), though it never names list_versions or get_alternative_models as alternatives, so sibling differentiation is only implied.

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?

Gives concrete usage context: pass brand_id from list_brands, or a brand name. This establishes the prerequisite call chain an agent needs. It stops short of saying when-not to use it (e.g. vs list_versions or get_alternative_models), so it is clear context without explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_versionsList versionsA
Read-onlyIdempotent
Inspect

List versions/trims for a model (pass model_id from list_models, or brand+model names) with each version's catalog id and active listing count.

ParametersJSON Schema
NameRequiredDescriptionDefault
brandNo
modelNo
categoryNoCars
model_idNo
year_maxNo
year_minNo

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare this a safe, idempotent, read-only, closed-world operation, so the safety profile is fully covered. The description adds only a light hint about returned fields (catalog id, active listing count); it says nothing about filtering behavior or result limits.

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?

A single front-loaded sentence with no wasted words; the primary input (model_id) and its alternative are stated up front. Slightly dense parenthetical, but efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 6-parameter, zero-coverage schema with no output schema, the description is only partially sufficient: it covers model identification but omits category and the year range filters, which an agent would have to infer from parameter names alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 6 parameters, so the description carries the burden, but it only explains model_id sourcing and the brand+model alternative. The category enum and the year_min/year_max range filters are never mentioned, leaving half the inputs semantically undocumented.

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?

States a specific verb and resource ('List versions/trims for a model') and clarifies the useful return content (catalog id and active listing count). It is clearly distinguishable from the sibling list_models, which it explicitly references as the source of model_id.

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?

Gives actionable routing guidance: obtain model_id from list_models, or alternatively pass brand+model names. It does not state when not to use this tool or contrast it with other lookup siblings, but the invocation context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_vehiclesSearch vehicle listings
Read-onlyIdempotent
Inspect

Search 1.8M+ Brazilian vehicle listings aggregated from 96 platforms (OLX, Webmotors, Napista, etc.). Returns listings with price, year, mileage, location, source platform, the original ad URL, FIPE reference price and a deal_score (% vs FIPE; negative means priced below FIPE).

A car listed on several sites comes back once (vehicle_sites says how many sites carry
it); filtering by `source` returns that site's own ads instead. price_kind is set when
the asking price is not the car's sale price ("installment": a monthly installment or
down payment posted as the price; "equity": ágio, the buyer takes over a financing;
"suspect" / "outlier_high": check the ad) — never present such a price as a bargain.

Tips for best results:
- Free-text `query` matches the listing TITLE only (e.g. "Onix LTZ turbo").
  It needs at least one word of 3+ characters: "Ford Ka", not "Ka" alone.
- For exact brand/model/version filtering, resolve names to ids first with
  list_brands / list_models / list_versions and pass brand_id/model_id/
  version_id — it is faster and more accurate than the text fields.
- `location` is a 2-letter UF (e.g. "SP") or a city name.
- `sort_by="newest"` (default) lists the most recently LISTED cars first —
  the date a listing first appeared on its source, not when we last saw it.
- `sort_by="best_deal"` ranks by lowest price-to-FIPE ratio.
- `per_page` is capped at 50. Use `page` (1-20) to paginate; past the first
  20 pages, narrow the search with filters. `total_count` and
  `total_pages` are returned.
ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
brandNo
modelNo
queryNo
sourceNo
sort_byNonewest
versionNo
brand_idNo
categoryNoCars
locationNo
model_idNo
per_pageNo
year_maxNo
year_minNo
fuel_typeNo
price_maxNo
price_minNo
body_styleNo
version_idNo
mileage_maxNo
mileage_minNo
transmissionNo

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 15 tool updates
    • Changedget_alternative_models2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedget_avg_days_to_sell2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedget_cheapest_states2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedget_fipe_valuation2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedget_listing_details2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedget_market_position2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedget_mileage_context2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedget_price_distribution2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedget_similar_active_listings2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedget_technical_specs3 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
      • changedInput schema / properties / section / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
    • Changedget_vehicle_by_id2 fields changed
      • addedInput schema / properties / car_id / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / car_id / minimum
        Added value: +1
    • Changedlist_brands1 field changed
      • changedInput schema / properties / body_style / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
    • Changedlist_models2 fields changed
      • changedInput schema / properties / brand / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / brand_id / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": 1,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
    • Changedlist_versions5 fields changed
      • changedInput schema / properties / brand / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / model / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / model_id / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": 1,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / year_max / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": -9223372036854776000,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / year_min / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": -9223372036854776000,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
    • Changedsearch_vehicles20 fields changed
      • changedInput schema / properties / body_style / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / brand / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / brand_id / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": 1,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / location / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / mileage_max / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": -9223372036854776000,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / mileage_min / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": -9223372036854776000,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / model / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / model_id / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": 1,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / page / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / page / minimum
        Added value: +-9223372036854776000
      • addedInput schema / properties / per_page / maximum
        Added value: +9223372036854776000
      • addedInput schema / properties / per_page / minimum
        Added value: +-9223372036854776000
      • changedInput schema / properties / price_max / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": -9223372036854776000,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / price_min / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": -9223372036854776000,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / query / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 100,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / source / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / version / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 80,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / version_id / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": 1,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / year_max / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": -9223372036854776000,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / year_min / anyOf
        Previous value: -[
        -  {
        -    "type": "integer"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maximum": 9223372036854776000,
        +    "minimum": -9223372036854776000,
        +    "type": "integer"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
  2. 17 tool updates
    • First observedget_alternative_models
    • First observedget_avg_days_to_sell
    • First observedget_cheapest_states
    • First observedget_fipe_valuation
    • First observedget_listing_details
    • First observedget_market_position
    • First observedget_market_stats
    • First observedget_mileage_context
    • First observedget_price_distribution
    • First observedget_similar_active_listings
    • First observedget_technical_specs
    • First observedget_vehicle_by_id
    • First observedlist_brands
    • First observedlist_filter_options
    • First observedlist_models
    • First observedlist_versions
    • First observedsearch_vehicles

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Perplexity for social: ask what competitors are running across social and get answers grounded in real ad and creative data, not guesses.
    2
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    11 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources