Skip to main content
Glama

WhichTrim vehicle records

decode_vin

Decode a 17-character VIN against NHTSA's vPIC database and join it to the WhichTrim record for that model year: year, make, model, engine, plant, plus the grade and recall campaigns on file.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
vinYesA 17-character VIN.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

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 does describe the operation and the returned fields, which is transparent about the result. However, it does not mention potential failure modes (e.g., invalid VIN, VIN not found), latency, or that it performs an external network call to NHTSA. It's not misleading, but it omits these operational details.

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 description is a single sentence that front-loads the action (decode a VIN) and efficiently lists the return fields. There is no fluff or redundancy; every clause adds information. It's concise while covering the core purpose and output.

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?

Given that there is no output schema, the description compensates by listing the returned fields (year, make, model, engine, plant, grade, recall campaigns). It also explains the join to the WhichTrim record, which is useful context. However, it doesn't mention error handling, empty results, or the meaning of 'grade', so it's not fully complete, but for a one-parameter tool it's reasonably thorough.

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 100%, and the schema already defines 'vin' as a 17-character VIN. The description adds no additional meaning beyond repeating that the VIN is 17 characters, which is already in the schema. It doesn't provide examples, constraints, or clarify the expected format beyond what the schema states, so a baseline score of 3 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 names a specific action (decode a 17-character VIN against NHTSA's vPIC database) and a distinct outcome (join to WhichTrim record and return year, make, model, engine, plant, grade, and recall campaigns). It clearly differentiates from siblings like check_recalls or get_vehicle by combining decode with recall data, so an agent can tell what this tool does without reading its schema.

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 states what the tool does but gives no guidance on when to use it over alternatives. It doesn't mention exclusions (e.g., 'for recall-only lookups use check_recalls') or prerequisites (e.g., valid VIN format, network access). With siblings like search_vehicles and get_vehicle, an agent has no explicit cue to pick this tool except the inferred need for a VIN decode.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources