marketplace
Server Details
AI-native used car marketplace. 145K+ vehicles, 4300+ dealers, 13 US states, 20 MCP tools.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
TDQS
Scored across 19 tools
The tool set clusters into inventory, vehicle detail/history, and session management, with each tool having a clear role. A few adjacent tools could be confused at first glance (cars_search vs cars_dealer_inventory, cars_session_message vs cars_session_reply, cars_session_read vs cars_session_deal), but descriptions resolve the boundaries.
All tools share a cars_ prefix and use snake_case, and session tools consistently use cars_session_<verb>. Some collection/detail tools use noun-style names (cars_dealers, cars_vehicle, cars_stats, cars_history) rather than strict verb_noun, which is a minor deviation.
At 19 tools, the server is above the typical 3-15 sweet spot, but the count is justified by two distinct surface areas: vehicle/dealer lookup and buyer session management. It feels slightly heavy rather than bloated, and each tool maps to a concrete workflow step.
The core car-shopping workflow is well covered: search/dealer/vehicle/history lookup, session creation and state, messaging, interest, trade-in, and visit scheduling. Obvious gaps are minor, such as no explicit way to remove a vehicle from a session or delete/close a session, but agents can work around these.
Available Tools
19 toolscars_dealer_inventoryCInspect
Get all vehicles at a specific dealer.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| offset | No | ||
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) | |
| dealer_id | Yes | Dealer ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It only states 'Get all vehicles,' but does not disclose pagination behavior, response shape, or limits of the 'all' claim, especially since limit/offset parameters exist.
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?
The description is a single front-loaded sentence with no filler. It is concise and readable, though it achieves brevity by omitting useful behavioral context.
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?
For a tool with four parameters, no annotations, and no output schema, the description is too sparse. Agents cannot learn pagination details, response format, or how this inventory function relates to sibling search and vehicle tools.
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?
Only 50% of parameters have schema descriptions, and the tool description does not compensate. It does not explain limit/offset semantics or agent_id, and merely echoing 'a specific dealer' adds little beyond the existing dealer_id description.
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 uses a specific verb and resource: 'Get all vehicles at a specific dealer.' It clearly distinguishes from siblings like cars_dealers (returns dealers) and cars_vehicle (likely a single vehicle lookup).
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?
There is no guidance about when to use this tool versus alternatives such as cars_search or cars_vehicle. No when-to-use, when-not-to-use, or alternative routing is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_dealersCInspect
Search for car dealers by city, state, or ZIP code.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | ZIP code or prefix | |
| city | No | City name | |
| limit | No | Max results | |
| state | No | State abbreviation (e.g. FL) | |
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Search' implies a read-only action, but the description does not mention result ordering, pagination, whether filters combine, what happens when no location is given, or any response characteristics. This is a meaningful transparency gap.
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?
The description is a single, front-loaded sentence with no filler. It communicates the core purpose efficiently and would be easy to scan in a long tool list.
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?
For a tool with five optional parameters, no annotations, no output schema, and a potential overlap with cars_search, the description is too minimal. It lacks context about required filter patterns, result shape, pagination, and how this tool fits into the dealer-search workflow.
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 description coverage is 100%, so the input schema already documents each parameter. The description adds only the high-level notion that city, state, and ZIP are search filters, which is useful but not new or detailed enough to raise the score above baseline.
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 clearly states a specific action ('Search') and resource ('car dealers') with location-based filters. It is understandable and distinct from most siblings, but it does not explicitly differentiate itself from the generic 'cars_search' tool, so an agent might not know which one to prefer for dealer lookups.
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?
There is no guidance about when to use this tool versus alternatives such as cars_search or cars_dealer_inventory. The description implies a dealer-search use case but never states exclusions, prerequisites, or conditions that would direct the agent to a sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_feedbackAInspect
Submit feedback about the Cars Rootz service. We actively read every piece of feedback to improve the service. Tell us what worked, what didn't, what's missing, and whether your user was happy. This helps us build a better car shopping experience for everyone.
| Name | Required | Description | Default |
|---|---|---|---|
| rating | No | Satisfaction 1-5 (1=poor, 5=excellent) | |
| message | Yes | Your feedback — what worked, what didn't, what would help | |
| session | No | Session hash (optional — helps us understand context) | |
| agent_id | No | Your agent identifier | |
| category | Yes | Feedback category: search, session, email, photos, data, ux, missing_feature, bug, general | |
| user_happy | No | Was the human user happy? 1=yes, 0=no, omit if unknown |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It adds that 'We actively read every piece of feedback,' which is non-obvious, but does not explain persistence, side effects, or response behavior.
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?
The description is three sentences and front-loaded with the action. The final sentence is slightly redundant with the second, but overall it is compact and clear.
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?
For a simple feedback tool with no output schema and full parameter descriptions, the description adequately explains the purpose and content guidance. It lacks information about return values, but this is not critical for this tool.
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?
The schema covers all six parameters with descriptions, so the baseline is 3. The description reinforces the 'user_happy' concept and mentions 'what's missing' which aligns with the 'message' parameter, but it does not add significant new meaning beyond the schema.
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 opens with 'Submit feedback about the Cars Rootz service,' using a specific verb and resource. It clearly distinguishes this from sibling tools like cars_search or cars_session_create by focusing on feedback submission.
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?
It explains the tool's purpose (submitting feedback) and encourages the agent to describe what worked, what didn't, and user happiness. However, it does not explicitly state when to use it over alternatives or include any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_historyAInspect
Get the full history of a vehicle by VIN — every dealer it appeared at, price changes over time, days on market, whether it was sold and resurfaced elsewhere. Data with origin.
| Name | Required | Description | Default |
|---|---|---|---|
| vin | Yes | 17-character Vehicle Identification Number | |
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It is transparent about what data will be returned — dealer history, price changes, days on market, resale events — and adds provenance context with 'Data with origin.' It does not explicitly state read-only behavior, but 'Get' communicates a non-mutating operation.
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?
The description is concise and front-loaded with the core action and resource, followed by a useful list of returned data types. The fragment 'Data with origin.' is slightly cryptic but still earns its place by signaling data provenance. No redundant filler is present.
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?
For a read-only history tool with only one required parameter and 100% schema description coverage, the description covers the essential invocation context: what to pass (VIN) and what to expect in return. It does not detail response structure or error/empty-result behavior, but the listed content dimensions give an agent enough to decide and call correctly.
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?
The input schema already provides full coverage for both parameters: vin is described as a 17-character VIN and agent_id is described as an agent identifier. The description adds no parameter-level detail beyond repeating VIN, so the baseline score of 3 is appropriate.
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 uses a specific verb ('Get') with a clear resource ('full history of a vehicle by VIN') and enumerates concrete content types: dealer appearances, price changes, days on market, and resale/resurfacing. This clearly distinguishes it from siblings like cars_vehicle or cars_search, which are likely current-listing or search-oriented.
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?
The description provides clear context for when to use this tool: when a complete historical record for a vehicle identified by VIN is needed. It stops short of explicitly naming alternatives or stating when not to use it, but the 'full history by VIN' framing makes the intended use case unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_searchAInspect
Search vehicle inventory across all dealers. Filter by make, model, year, price, mileage, location, body type, fuel type, drivetrain, and condition. Returns matching vehicles with dealer info. NOTE: inventory includes both used AND new cars — pass condition="used" to exclude new. Every result states its condition.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | Dealer ZIP code prefix | |
| city | No | Dealer city (e.g. Miami) | |
| make | No | Car make (e.g. Toyota, Honda, BMW) | |
| limit | No | Max results (default 20) | |
| model | No | Car model (e.g. Camry, Civic, 3 Series) | |
| state | No | Dealer state (e.g. FL) | |
| offset | No | Pagination offset | |
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) | |
| year_max | No | Maximum model year | |
| year_min | No | Minimum model year | |
| body_type | No | Body type (Sedan, SUV, Truck, Coupe, Van, etc.) | |
| condition | No | Vehicle condition: "used", "new", or "certified". Comma-separated to combine (e.g. "used,certified"). IMPORTANT: this inventory is aggregated from dealer sitemaps and is roughly half BRAND NEW cars — pass condition=used unless your buyer actually wants new. Omitting this returns both. | |
| fuel_type | No | Fuel type (Gasoline, Diesel, Electric, Hybrid) | |
| price_max | No | Maximum price in USD | |
| price_min | No | Minimum price in USD | |
| drivetrain | No | Drivetrain (FWD, RWD, AWD, 4WD) | |
| mileage_max | No | Maximum mileage |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden and it delivers: it clearly flags the data aggregation source (dealer sitemaps), the roughly half new-car composition, the condition semantics, and that every result states its condition. This goes well beyond the input schema and gives the agent essential behavioral context for interpreting results.
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?
The description is compact and front-loaded: the core action and resource appear first, followed by filters, then the critical caveat. Every sentence adds information not otherwise obvious from the schema, and the condition warning is placed prominently without being buried.
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 17 optional parameters, no required fields, no output schema, and no annotations, the description provides sufficient guidance to invoke the tool correctly. It covers scope, key caveats, and result content. Pagination is documented in the schema (offset/limit), and every result condition disclosure is stated. No critical operational gap remains.
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 description coverage is 100%, so the schema already documents all 17 parameters. The description adds aggregate context and emphasizes the critical condition parameter, but does not need to repeat each filter's meaning. Baseline 3 is appropriate.
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?
Description begins with a specific verb and resource: 'Search vehicle inventory across all dealers.' It lists many filter dimensions and explicitly distinguishes that results include dealer info. It is clearly differentiated from siblings like cars_dealer_inventory and cars_vehicle by the aggregate multi-dealer search scope.
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?
Provides explicit operational guidance: the inventory contains both new and used cars, and instructs to pass condition="used" to exclude new unless the buyer wants new. This directly tells the agent when and how to adjust parameters, which is especially valuable given 17 optional filters and no required parameters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_add_carAInspect
Add a vehicle to the buyer's shopping session. Include a fit score (1-10) and notes explaining why you recommend it.
| Name | Required | Description | Default |
|---|---|---|---|
| vin | Yes | 17-character VIN of vehicle to add | |
| notes | No | Why you recommend this vehicle | |
| score | No | AI fit score 1-10 (how well it matches preferences) | |
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose side effects. It only says 'Add' and gives parameter guidance, without mentioning whether this modifies session state, requires permissions, is reversible, or what the response/return value looks like. For a mutating tool this is a notable gap.
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?
Two sentences, front-loaded with the verb and object, and no redundant or vague content. It directly tells the agent what to do and what to include.
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?
For a low-complexity add operation with full schema coverage, the description is nearly sufficient. However, it lacks any mention of output, success/failure behavior, or session state consequences, which would be more important because no output schema or annotations exist.
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 description coverage is 100%, so the input schema already documents all five parameters. The description adds no new meaning beyond restating score (1-10) and notes (why you recommend), which matches the schema descriptions. Baseline of 3 applies.
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?
Description uses a specific verb ('Add') and resource ('a vehicle to the buyer's shopping session'), clearly distinguishing it from sibling tools like compare, interest, or tradein. It also mentions the key inputs (fit score, notes) that make the tool's purpose unmistakable.
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?
The description gives clear context: use when adding a recommended vehicle to an active buyer session. It does not explicitly name alternatives or exclusions, but the action is unambiguous and distinct from the sibling session tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_compareAInspect
Get a structured comparison of all vehicles tracked in a session — specs, pricing, market context side by side. Great for helping the buyer decide.
| Name | Required | Description | Default |
|---|---|---|---|
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral disclosure burden. 'Get' clearly implies a read-only operation, and the description explains the return content (side-by-side specs, pricing, market context). Yet it does not disclose prerequisites such as requiring an existing session with tracked vehicles, nor edge-case behavior like an empty session.
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?
The description is two concise sentences. The first is front-loaded with the action and the object, and the second provides a meaningful use-case without fluff. Every word earns its place.
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?
For a tool with no annotations and no output schema, the description gives a decent summary of the returned comparison but omits prerequisites and edge-case behavior (e.g., what counts as 'all vehicles', what happens if the session has zero vehicles). The rest of the context must be inferred from the session parameter and sibling names.
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 description coverage is 100%, so the baseline is 3. The description adds no additional parameter-level meaning; it only indirectly references the session and says nothing about agent_id. It neither helps nor hurts beyond the schema.
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 starts with a specific verb and resource: 'Get a structured comparison of all vehicles tracked in a session' and lists concrete content dimensions (specs, pricing, market context side by side). This makes the tool's function unambiguous and distinguishes it from siblings like cars_vehicle (single-vehicle data) and cars_session_add_car (mutation) even without naming them.
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?
'Great for helping the buyer decide' provides a clear, practical use case for the tool. However, it does not explicitly mention alternatives or any when-not-to-use conditions, stopping short of fully explicit routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_createAInspect
Create a personalized car research session for the buyer. Returns a unique URL they can bookmark and return to. As you help the buyer, naturally learn their situation and save it here — payment method, trade-in, timeline. This makes the dealer lead much stronger when the buyer is ready to engage. Don't ask all at once — gather these naturally over the conversation.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | Buyer ZIP code for location-aware search | |
| name | No | Buyer first name if they share it naturally | |
| makes | No | Comma-separated preferred makes (e.g. "Ford,Toyota") | |
| notes | No | Free-text buyer notes — what they care about, why they're looking | |
| radius | No | Search radius in miles (default 50) | |
| payment | No | How they plan to pay: cash, financing, lease (learn this naturally — don't interrogate) | |
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) | |
| timeline | No | When they want to buy: browsing, this week, this month, no rush (pick up on cues) | |
| trade_in | No | Brief trade-in description if mentioned: "2019 Civic, ~85K miles" (use cars_session_tradein for full profile later) | |
| body_types | No | Comma-separated body types (e.g. "Truck,SUV") | |
| budget_max | No | Maximum budget |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses key behaviors: creates a session, saves buyer situation (payment, trade-in, timeline), returns a bookmarkable URL, and emphasizes natural data gathering to strengthen the dealer lead. It does not mention potential side effects like overwriting existing sessions, but for a create tool this is sufficient. The added context about the dealer lead goes beyond basic functionality.
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?
The description is a focused paragraph with a clear lead sentence about the core action, followed by supporting behavioral guidance. All sentences earn their place: the URL return value, the benefit to the dealer lead, and the advice to gather information naturally. It is not excessively verbose, though it could be slightly more concise by trimming redundant phrasing.
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?
For a tool with 11 optional parameters and no output schema, the description gives enough operational context: what the session is for, what to save, and the key output (URL). It does not explain how to handle existing sessions or duplicates, but for a create tool this is acceptable. The presence of sibling tools like cars_session_tradein is mentioned in the schema, and the description complements that by setting the session-level context.
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?
The input schema covers 100% of parameters with detailed descriptions, so the baseline is 3. The description mentions payment method, trade-in, and timeline as things to save, which maps to those params, but adds no additional parameter-specific semantics beyond what the schema already provides. The general guidance to gather naturally is useful but does not explain any particular parameter value or 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?
The description clearly states the verb and resource: 'Create a personalized car research session for the buyer.' It also distinguishes the tool by noting it returns a unique URL to bookmark and return to, which is a distinctive feature among sibling session tools. The purpose is specific and unambiguous.
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?
The description provides usage context by saying 'As you help the buyer' and guides on how to collect information: 'Don't ask all at once — gather these naturally over the conversation.' This gives clear timing and behavior, though it doesn't explicitly contrast with sibling tools like cars_session_read or cars_session_add_car. The instruction to not interrogate helps the AI agent understand when and how to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_dealAInspect
Get the current deal status — offers received, messages exchanged, unread count. Use to check if the dealer has responded.
| Name | Required | Description | Default |
|---|---|---|---|
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the full burden of behavioral disclosure. It does reveal the output fields (offers, messages, unread count), but it never explicitly states whether the call is read-only, whether it resets the unread count, or whether any side effects occur. The verb 'Get' implies non-mutating behavior, but without explicit assurance this is only partially transparent.
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?
The entire guidance is one efficient sentence: purpose first, then the key data fields, then a direct usage statement. Every clause earns its place, with no filler or repetition.
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?
For a simple read operation, the description is nearly self-sufficient: it names the resource, lists the expected return content, and states the intended use. It lacks an explicit note on side effects or prerequisites like requiring an existing session, and with no output schema or annotations, those gaps slightly reduce completeness.
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 description coverage is 100%: both 'session' and 'agent_id' are already described in the input schema. The description adds no extra semantic detail about parameter formats, how to obtain a session hash, or defaults, so it is at the baseline.
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 and resource: 'Get the current deal status' and enumerates the exact data returned (offers received, messages exchanged, unread count). This clearly distinguishes it from sibling tools like cars_search, cars_history, or cars_session_add_car, which concern different resources or actions.
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?
The phrase 'Use to check if the dealer has responded' gives an explicit, identifiable use case, which is strong guidance for an agent. However, it does not name alternative tools or state when not to use this tool, so it stops short of the highest level.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_interestAInspect
Signal buyer interest in a vehicle to the dealer. This sends a professional email to the dealership on the buyer's behalf. Only use when the buyer has explicitly indicated interest.
| Name | Required | Description | Default |
|---|---|---|---|
| vin | Yes | VIN of vehicle buyer is interested in | |
| message | No | Optional message to include for the dealer | |
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states that the tool sends a professional email on the buyer's behalf, which is a key side effect. However, it does not disclose other potential behaviors such as data persistence, reversibility, or authorization requirements.
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?
The description is exceptionally concise, consisting of two sentences that front-load the action ('Signal buyer interest') and follow with necessary context. Every word earns its place with no redundancy.
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?
For a simple tool with no output schema, the description adequately covers the primary purpose, the mechanism (email), and a usage condition. It is complete enough for an agent to understand what the tool does and when to invoke it, though it could optionally mention the response or confirmation behavior.
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?
The input schema provides descriptions for all 4 parameters, achieving 100% schema description coverage. The description does not add additional meaning beyond the schema, so the baseline score of 3 is appropriate.
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 clearly states the tool's purpose: 'Signal buyer interest in a vehicle to the dealer' with the specific action of sending a professional email. It distinguishes itself from sibling tools like cars_session_message by focusing on interest signaling rather than general messaging.
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?
The description provides explicit usage guidance: 'Only use when the buyer has explicitly indicated interest.' This is a clear condition for when to use the tool, though it does not explicitly name alternatives or contrast with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_messageAInspect
Post a message to the session. Use for buyer questions, AI analysis notes, or responses. The dealer and other AI agents can see these.
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Message content | |
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier | |
| msg_type | No | Type: note, question, answer, offer, alert | note |
| from_role | No | Role: buyer, ai, or system | ai |
| vehicle_vin | No | Optional: which vehicle this is about |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the message is visible to the dealer and other AI agents, which is useful behavioral context. It also clearly implies a write operation. However, it does not mention any potential side effects, such as whether the message is appended or if there are permission requirements. This is adequate for a simple messaging tool but not exhaustive.
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?
The description is three concise sentences, each adding value: the action, the use cases, and the visibility. It is front-loaded and free of fluff.
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?
The tool is simple, the schema covers all parameters, and the description provides purpose and use cases. No output schema exists, so return values need not be explained. The description is complete enough for an agent to use the tool correctly, though it could mention potential limitations or side effects.
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 description coverage is 100%, meaning every parameter already has a description in the input schema. The tool description adds no additional parameter-level detail. Baseline for high coverage is 3, which is appropriate.
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 clearly states the tool's function with a specific verb and resource: 'Post a message to the session.' It also gives example use cases. However, it does not explicitly differentiate from sibling tools like cars_session_reply, leaving some ambiguity about when to post vs. reply.
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?
The description provides explicit use cases: 'Use for buyer questions, AI analysis notes, or responses.' This indicates when the tool is appropriate. It does not mention when not to use it or alternatives, but the guidance is clear enough for an AI agent to make a reasonable decision.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_notifyAInspect
Set the buyer's email notification preference for this session. Three levels: "bcc" (buyer gets a private copy of dealer replies — dealer never sees buyer email), "cc" (buyer is CC'd — dealer can see buyer email), or "none" (no email, buyer must check back via AI). This upgrades the session identity level to "email".
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Notification mode: "bcc" (private), "cc" (visible to dealer), or "none" | bcc |
| No | Buyer's email address | ||
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden and does well: it explains the privacy semantics of each mode (dealer never sees buyer email in bcc vs. sees it in cc) and discloses a non-obvious side effect — 'This upgrades the session identity level to email.' It stops short of covering failure states or prerequisites, but the disclosed traits go meaningfully beyond the schema.
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?
Three sentences with zero waste: the purpose is front-loaded in sentence one, the mode semantics are compressed into sentence two, and the side effect is stated in sentence three. Every sentence earns its place and the most decision-relevant information appears first.
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?
Complete enough for a simple preference-setting tool with no output schema: purpose, mode semantics, and side effect are all covered. The main gap is the conditional relationship between mode and the email parameter — it is never stated whether email is required for bcc/cc but not none — and error conditions are unaddressed. Minor omissions given the tool's simplicity.
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%, which sets a baseline of 3, but the description adds genuine value by defining the behavioral meaning of each mode value: bcc as private copy with dealer blind, cc as visible to dealer, and none as requiring the buyer to check back via AI. The schema's parenthetical labels are terse; the description supplies the operational semantics an agent needs to choose correctly.
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 ('Set the buyer's email notification preference for this session') and fully explains the three modes. It is clearly distinct from sibling tools like cars_session_message, cars_session_reply, and cars_session_read, which handle messaging rather than notification preference configuration.
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?
The intended usage is implied by the purpose — call when you need to set or change the email notification mode for a session — but there are no explicit when-to-use conditions, exclusions, or named alternatives. It does not say, for example, when to use this instead of cars_session_message or how this relates to the interest/deal flow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_readAInspect
Read the current state of a shopping session — tracked vehicles, messages, preferences, active offers, and which other AI agents are working on it. Use this to understand context before taking action.
| Name | Required | Description | Default |
|---|---|---|---|
| session | Yes | Session hash (the short code from the URL) | |
| agent_id | No | Your agent identifier (for tracking who read it) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It clearly states this is a read operation and outlines what state is exposed, including other agents' activity. It does not explicitly state that it has no side effects, but 'Read' strongly implies non-mutation.
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?
Two concise sentences: first defines purpose and scope, second gives direct usage advice. No filler, all information earns its place.
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?
The tool is a simple read operation with 2 well-documented parameters. The description enumerates the key data categories returned, which is sufficient for an agent to understand what context it will obtain, even without an output schema.
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 description coverage is 100%, so the schema already documents the session hash and agent_id. The description adds no additional parameter-specific detail beyond what the schema provides, matching the baseline.
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 uses a specific verb ('Read') and clearly identifies the resource ('current state of a shopping session') plus a list of contained elements. It effectively distinguishes this from sibling session tools like session_add_car or session_message.
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?
It explicitly tells the agent when to use it: 'Use this to understand context before taking action.' This is clear guidance, though it does not mention when not to use it or name alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_replyAInspect
Send a follow-up message to the dealer continuing the conversation. Use this after the dealer has replied and the buyer wants to respond — negotiate price, ask questions, schedule a visit. The email thread continues naturally.
| Name | Required | Description | Default |
|---|---|---|---|
| vin | Yes | VIN of the vehicle being discussed | |
| message | Yes | The follow-up message to send to the dealer | |
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It adds useful context that the email thread continues naturally and prerequisites (after dealer reply), but it does not discuss side effects, irreversibility, or failure modes.
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?
The description is two sentences, front-loaded with the action ('Send a follow-up message') and followed by concise usage guidance. No wasted words.
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?
For a simple message-sending tool with no output schema, the description adequately covers what it does and when to use it. It could mention application state requirements more explicitly, but given the schema richness, it is sufficient.
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?
The input schema already describes all four parameters (vin, message, session, agent_id) with 100% coverage, so the description adds no additional parameter semantics beyond what the schema provides.
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 clearly states the tool sends a follow-up message to the dealer, with specific use cases (negotiate, ask questions, schedule visit). It distinguishes itself from sibling tools by emphasizing 'follow-up' and 'continuing the conversation.'
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?
It explicitly says to use this after the dealer has replied and the buyer wants to respond, providing clear timing. However, it does not explicitly name alternative tools or state when not to use it, though the 'follow-up' language implies it is not for initial messages.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_tradeinAInspect
Set or update the buyer's trade-in vehicle information. Gather what you can from the conversation — VIN, license plate, year/make/model, mileage, condition. You don't need everything at once; start with what the buyer knows and build the profile progressively. The dealer will make the trade-in offer based on this info. Three tiers: "quick" (VIN/plate + mileage), "standard" (+ condition answers), "full" (+ photos via the bridge page).
| Name | Required | Description | Default |
|---|---|---|---|
| vin | No | Trade-in vehicle VIN (17 chars). If provided, the server decodes year/make/model/trim via NHTSA. | |
| make | No | Make (auto-filled if VIN provided) | |
| trim | No | Trim level | |
| year | No | Model year (auto-filled if VIN provided) | |
| color | No | Exterior color | |
| model | No | Model (auto-filled if VIN provided) | |
| notes | No | Additional notes about the trade-in | |
| plate | No | License plate number (alternative to VIN) | |
| mileage | No | Current odometer reading | |
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier | |
| accidents | No | Accident history: none, minor, moderate, major, unknown | |
| title_type | No | Title status: clean, salvage, rebuilt, lien | |
| body_damage | No | Body damage: none, minor, moderate, significant | |
| plate_state | No | State the plate is registered in (e.g. FL, TX) | |
| modifications | No | Aftermarket modifications (free text) | |
| tire_condition | No | Tire condition: good, fair, needs_replacement | |
| warning_lights | No | Dashboard warning lights on? 0=no, 1=yes | |
| mechanical_issues | No | Known mechanical issues (free text) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden. It does disclose that the tool supports progressive updates ('You don't need everything at once') and implies a partial update model. It also mentions the dealer uses this info for the offer. But it does not state whether the operation overwrites existing fields, whether it creates or updates a record, or any potential side effects like changes to the deal. This is moderate transparency for a mutation tool.
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?
The description is concise (about 55 words) and front-loaded with the action and resource. It packs essential guidance into three sentences without redundancy. Each sentence adds either purpose, usage strategy, or tiering information.
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 the complexity (19 parameters) and lack of output schema/annotations, the description is largely complete: it explains what to collect, how to approach it progressively, and the tiers. The only gap is that it mentions 'photos via the bridge page' but the schema has no photo parameter, which may be slightly confusing. It also does not describe the return value, but that is secondary for an update tool.
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?
The schema covers all 19 parameters with descriptions, so the baseline is 3. The tool description adds value by grouping parameters into tiers (quick = VIN/plate + mileage, standard = condition answers, full = photos via bridge page), which helps the agent decide which optional parameters to include. This semantic grouping goes beyond the flat schema descriptions.
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 opens with a specific verb+resource: 'Set or update the buyer's trade-in vehicle information.' This clearly distinguishes the tool from its sibling cars_session_tradein_read, which is for reading. It also defines the scope (trade-in vehicle) and the goal (dealer makes offer based on this info).
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?
The description gives clear usage context: gather trade-in info from the conversation, start with what the buyer knows, and build progressively. It also defines three tiers (quick/standard/full) that guide how much info to collect. However, it does not explicitly mention when to avoid this tool or point to alternatives, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_tradein_readBInspect
Read the buyer's trade-in vehicle profile. Returns decoded vehicle info, condition, photos, and a summary suitable for including in dealer communications. Also returns a photo_upload_url the buyer can visit on their phone to add photos.
| Name | Required | Description | Default |
|---|---|---|---|
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral transparency burden. It discloses the read-only nature implicitly and adds useful behavior details, such as returning a photo_upload_url for the buyer to add photos. However, it does not mention permissions, side effects, or whether the upload URL expires.
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?
Two concise sentences, front-loaded with the core purpose and followed by the output summary. Every sentence adds necessary context without repetition or 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?
The description covers the return content (decoded vehicle info, condition, photos, summary, photo_upload_url) despite lacking an output schema. It is mostly complete for invocation, but could still clarify the meaning of 'decoded' and any session prerequisites.
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 description coverage is 100%, so the schema already documents both parameters. The description does not add extra meaning or usage details for the session or agent_id parameters, which is acceptable but not exceptional.
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 ('Read') and a specific resource ('the buyer's trade-in vehicle profile'), and describes the relevant output content. It is clearly distinguished from a dealer-inventory tool by naming the trade-in session context, though it does not explicitly contrast with sibling tools.
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?
No guidance is provided about when to use this tool versus alternatives such as other session trade-in tools or dealer inventory tools. The description explains what it does but not the selection conditions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_session_visitAInspect
Schedule a dealer visit (test drive, purchase, trade-in appraisal). Generates a visit code and QR code the buyer shows at the dealership. This is how the dealer knows "this is the person whose AI has been talking to us." The visit code proves the connection and ensures the buyer earns their $100-$200 incentive. Only use when the buyer explicitly says they want to visit the dealer.
| Name | Required | Description | Default |
|---|---|---|---|
| vin | Yes | VIN of the vehicle they want to see | |
| date | No | Preferred date (e.g. "Saturday", "2026-05-10") | |
| time | No | Preferred time (e.g. "morning", "2pm") | |
| notes | No | Buyer notes for the dealer (e.g. "Ask for Mike", "Bringing my wife") | |
| session | Yes | Session hash | |
| agent_id | No | Your agent identifier | |
| visit_type | No | Type: test_drive, purchase, trade_appraisal, general |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it goes well beyond a bare 'schedule' by disclosing that it generates a visit code and QR code, that this code proves the AI-buyer connection to the dealer, and that it enables the $100-$200 incentive. It does not mention side effects like dealer notifications or persistence, but the disclosed behavior is substantial and accurate. No contradiction.
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?
The description is four sentences, front-loaded with the core action, then explaining outputs and usage. The third sentence ('This is how the dealer knows...') and fourth condition are useful, though 'proves the connection' is slightly redundant with the prior sentence. Overall efficient and well-structured.
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 no output schema, the description does explain the key outputs (visit code and QR code) and the required precondition. It doesn't enumerate optional parameters, failure modes, or return format, but the 100%-coverage input schema handles parameter semantics. This is enough for an agent to select and invoke correctly, though a slight gap around dealer notification or return details prevents a 5.
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%, so the baseline is 3. The description mentions 'test drive, purchase, trade-in appraisal,' which loosely mirrors the visit_type parameter values, but it does not add detail beyond the schema's own property descriptions. It provides no extra parameter-specific semantics, so 3.
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?
Description opens with a specific verb-object pair, 'Schedule a dealer visit,' and enumerates the visit types (test drive, purchase, trade-in appraisal), which distinguishes it from sibling session tools like message/deal. It also uniquely identifies the tool's output (visit code and QR code), making the purpose unmistakable.
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?
The description provides an explicit triggering condition: 'Only use when the buyer explicitly says they want to visit the dealer.' It does not explicitly name alternative tools, but the clear focus on dealer visits implies when this should be used over session messaging or deal tools. No explicit exclusions beyond the condition, so 4.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_statsAInspect
Get database statistics: total vehicles, dealers, coverage by state, top makes.
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. 'Get' clearly signals a read operation, and the returned content is stated. However, the description does not explicitly mention that it is read-only, that it returns only aggregate summaries, or any side-effect expectations.
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?
The description is a single sentence that front-loads the action and resource, then gives a compact, useful list of the statistics returned. There is no filler, repetition, or unnecessary detail.
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?
For a simple stats tool with one optional parameter and no output schema, the description covers the essential information: what kind of data the agent will receive. It could be more explicit about the lack of raw-record returns or the output format, but the enumerated aggregate fields largely make the intent clear.
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?
The schema has only one optional parameter, agent_id, and its description ('Your agent identifier (claude, grok, gpt, perplexity)') provides 100% coverage. The description adds no parameter-specific meaning, so the baseline of 3 is appropriate because the schema already fully documents the parameter.
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 uses a specific verb ('Get') and a specific resource ('database statistics'), then enumerates the exact aggregate contents: total vehicles, dealers, coverage by state, and top makes. This clearly distinguishes it from record-level siblings like cars_vehicle and cars_dealers.
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?
No explicit when-to-use or exclusion guidance is given, but the phrase 'database statistics' and the enumerated aggregates imply this is for high-level summary data rather than individual records or dealer lists. It does not name alternatives or specify conditions for choosing this tool over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cars_vehicleAInspect
Get full details for a specific vehicle by VIN. Returns specs, price, mileage, photos, recalls, and dealer info.
| Name | Required | Description | Default |
|---|---|---|---|
| vin | Yes | 17-character Vehicle Identification Number | |
| agent_id | No | Your agent identifier (claude, grok, gpt, perplexity) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral transparency burden. It discloses that this is a read-style lookup and specifies the return contents: specs, price, mileage, photos, recalls, and dealer info. It does not mention error behavior, but for a straightforward read operation the disclosure is reasonably strong.
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?
A single sentence that leads with the action and resource, then enumerates the key return values. No filler or repetition.
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?
For a simple operation with one required parameter and full schema coverage, the description provides enough context for an agent to invoke it correctly. Return categories are summarized, which partly compensates for the missing output schema, though explicit differentiation from related tools is absent.
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 description coverage is 100%, so both parameters are already documented. The description reinforces that the VIN addresses a specific vehicle, but does not add substantial semantic meaning beyond the schema.
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 clearly states the tool gets full details for a specific vehicle by VIN and lists the returned data categories. It is understandable and distinct in practical terms from broad search tools, though it does not explicitly name or contrast a sibling tool.
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?
The intended use is implied: call this when you need detailed vehicle information for a known VIN. However, there is no explicit guidance about when to prefer it over siblings like cars_history or cars_search, or when not to use it.
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
cars_search1 field changed- added
Input schema / properties / conditionAdded value: +{ + "description": "Vehicle condition: \"used\", \"new\", or \"certified\". Comma-separated to combine (e.g. \"used,certified\"). IMPORTANT: this inventory is aggregated from dealer sitemaps and is roughly half BRAND NEW cars — pass condition=used unless your buyer actually wants new. Omitting this returns both.", + "type": "string" +}
10 tool updates
- Changed
cars_dealer_inventory1 field changed- added
Input schema / properties / agent_idAdded value: +{ + "description": "Your agent identifier (claude, grok, gpt, perplexity)", + "type": "string" +}
- Changed
cars_dealers1 field changed- added
Input schema / properties / agent_idAdded value: +{ + "description": "Your agent identifier (claude, grok, gpt, perplexity)", + "type": "string" +}
- Changed
cars_history1 field changed- added
Input schema / properties / agent_idAdded value: +{ + "description": "Your agent identifier (claude, grok, gpt, perplexity)", + "type": "string" +}
- Changed
cars_search1 field changed- added
Input schema / properties / agent_idAdded value: +{ + "description": "Your agent identifier (claude, grok, gpt, perplexity)", + "type": "string" +}
- Changed
cars_session_compare1 field changed- added
Input schema / properties / agent_idAdded value: +{ + "description": "Your agent identifier (claude, grok, gpt, perplexity)", + "type": "string" +}
- Changed
cars_session_deal1 field changed- added
Input schema / properties / agent_idAdded value: +{ + "description": "Your agent identifier (claude, grok, gpt, perplexity)", + "type": "string" +}
- Changed
cars_session_notify1 field changed- changed
Input schema / requiredPrevious value: -[ - "session", - "email" -]New value: +[ + "session" +]
- Changed
cars_session_tradein_read1 field changed- added
Input schema / properties / agent_idAdded value: +{ + "description": "Your agent identifier (claude, grok, gpt, perplexity)", + "type": "string" +}
- Changed
cars_stats1 field changed- added
Input schema / properties / agent_idAdded value: +{ + "description": "Your agent identifier (claude, grok, gpt, perplexity)", + "type": "string" +}
- Changed
cars_vehicle1 field changed- added
Input schema / properties / agent_idAdded value: +{ + "description": "Your agent identifier (claude, grok, gpt, perplexity)", + "type": "string" +}
1 tool update
- Changed
cars_session_create5 fields changed- added
Input schema / properties / nameAdded value: +{ + "description": "Buyer first name if they share it naturally", + "type": "string" +} - changed
Input schema / properties / notes / descriptionPrevious value: -"Free-text buyer notes"New value: +"Free-text buyer notes — what they care about, why they're looking" - added
Input schema / properties / paymentAdded value: +{ + "description": "How they plan to pay: cash, financing, lease (learn this naturally — don't interrogate)", + "type": "string" +} - added
Input schema / properties / timelineAdded value: +{ + "description": "When they want to buy: browsing, this week, this month, no rush (pick up on cues)", + "type": "string" +} - added
Input schema / properties / trade_inAdded value: +{ + "description": "Brief trade-in description if mentioned: \"2019 Civic, ~85K miles\" (use cars_session_tradein for full profile later)", + "type": "string" +}
19 tool updates
- First observed
cars_dealer_inventory - First observed
cars_dealers - First observed
cars_feedback - First observed
cars_history - First observed
cars_search - First observed
cars_session_add_car - First observed
cars_session_compare - First observed
cars_session_create - First observed
cars_session_deal - First observed
cars_session_interest - First observed
cars_session_message - First observed
cars_session_notify - First observed
cars_session_read - First observed
cars_session_reply - First observed
cars_session_tradein - First observed
cars_session_tradein_read - First observed
cars_session_visit - First observed
cars_stats - First observed
cars_vehicle
Related MCP Connectors
Automotive inventory search for AI assistants: vehicles, dealers, deals, and market data.
Car dealer AI: search inventory, match Car Wanted buyer requests, and draft private offers.
Search live US dealership inventory, get market prices, and send buyer inquiries. Free, no API key.
Mechanic-grade used-car listing verdicts: risk score, failure points, repair costs, fair price.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI assistants to search and aggregate used-vehicle listings across Cars.com, Autotrader, and KBB, with filters for price, mileage, dealer information, and CARFAX-style history conditions.1MIT
- FlicenseNot gradedqualityBmaintenanceProvides 25 interactive automotive intelligence tools for real-time market data, including VIN decoding, price predictions, and inventory analytics. It enables AI assistants to perform car searches, trade-in estimations, and market trend analysis using the Model Context Protocol.2-
- AlicenseAqualityDmaintenanceAn MCP server that integrates with the Carvana marketplace to enable vehicle searching, financing estimation, and trade-in value assessments. It allows AI assistants to retrieve detailed vehicle information, history reports, and market insights directly from Carvana's inventory.1016 npm1MIT
- 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).14MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.