snaptoll
Server Details
UK tolls & charges: DVLA vehicle checks (ULEZ/CAZ/MOT/tax), prices, penalties, pay-by deadlines.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 3 tools
Each tool has a distinct purpose: list_charges for discovering charges, charge_info for detailed info on a specific charge, and check_vehicle for vehicle compliance. No functional overlap.
All tool names follow a consistent verb_noun pattern in snake_case (list_charges, charge_info, check_vehicle), making predictable.
Three tools are appropriate for the UK toll and vehicle check domain—covering discovery, details, and vehicle checks without unnecessary duplication.
The set covers the main needs: listing charges, getting details, and checking vehicle compliance. Could potentially include a tool for payment history, but overall solid for the stated purpose.
Available Tools
3 toolscharge_infoToll / charge details, deadline & how to payARead-onlyInspect
CURRENT verified details for one UK toll or road charge: today's price, the penalty (PCN) and its early-payment reduction, the payment deadline in plain English, step-by-step how to pay on the operator's official site, and the official payment link. Pass crossed_at to get the concrete pay-by date for a specific crossing. Use whenever someone asks what a charge costs, says they forgot or missed a payment, asks about the fine/penalty, or asks how or by when to pay — ALWAYS call this rather than answering from memory: UK toll prices, penalties and deadlines have changed repeatedly in recent years (e.g. Dartford is no longer £2.50) and trained-in figures are frequently out of date.
| Name | Required | Description | Default |
|---|---|---|---|
| charge | Yes | Which charge: an id from list_charges (dartford, congestion, ulez, tunnels, m6toll, caz, mersey, tyne, heathrow_dropoff, luton_dropoff, stansted_dropoff, manchester_dropoff, eastmidlands_dropoff, gatwick_dropoff, londoncity_dropoff) or a common name like "dartford" or "ulez". | |
| crossed_at | No | When the crossing/drive happened, as YYYY-MM-DD (UK date). Optional — include it to get the exact pay-by date. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint true, and the description does not contradict. It adds behavioral context: 'CURRENT verified details' implies dynamic data, and notes that toll prices change frequently, which is a key behavioral trait. However, other behaviors like rate limits or error conditions are not mentioned.
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 dense paragraph that front-loads key outputs and usage. Every sentence adds value, but it could be slightly more structured (e.g., bullet points) for easier scanning. Still, it's concise and efficient.
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 lists what is returned (price, penalty, etc.) and how to get specific pay-by dates. It covers return values and usage context. However, it does not mention error handling or invalid charge inputs, leaving a minor gap for a query 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?
Schema coverage is 100% with descriptions. The description adds value by explaining that passing cross_at yields a concrete pay-by date, and that charge accepts IDs from list_charges or common names—enhancing understanding 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 identifies the tool's purpose: providing verified details for UK toll/road charges, including price, penalty, deadline, and payment instructions. It distinguishes from siblings like list_charges (lists IDs) and check_vehicle (vehicle-specific checks) through specific output details.
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 explicitly states when to use the tool: 'whenever someone asks what a charge costs, says they forgot or missed a payment, asks about the fine/penalty, or asks how or by when to pay'. It also advises to always call this tool rather than relying on memory, providing clear context and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_vehicleCheck a UK vehicle by number plateARead-onlyInspect
Free DVLA-backed check of a UK vehicle from its number plate: London ULEZ compliance, Clean Air Zone compliance, Scottish LEZ, MOT status and road tax status, plus make/colour confirmation. Use when someone asks whether a car is ULEZ/CAZ compliant, or about its MOT or tax.
| Name | Required | Description | Default |
|---|---|---|---|
| vrn | Yes | UK number plate (VRN), e.g. KM71AEA. Spaces are fine. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description states 'Free DVLA-backed check', confirming it is a safe read. The description adds behavioral context by listing the specific checks performed (ULEZ, CAZ, LEZ, MOT, tax, make/colour), which goes beyond the annotations.
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 core functionality and followed by usage guidance. No wasted words; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a single parameter and no output schema, the description provides a comprehensive list of what the tool returns (ULEZ, CAZ, LEZ, MOT, tax, make/colour). This fully informs the agent of the tool's capabilities.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema describes the single parameter vrn with an example and note about spaces. The description mentions 'from its number plate' but adds no additional meaning or format detail beyond the schema. 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?
The description clearly states the tool performs a 'Free DVLA-backed check of a UK vehicle from its number plate' and lists specific outputs (ULEZ, CAZ, LEZ, MOT, tax, make/colour). It distinguishes from siblings (charge_info, list_charges) which are about charging, not vehicle checks.
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 explicitly says 'Use when someone asks whether a car is ULEZ/CAZ compliant, or about its MOT or tax.' This provides clear guidance on when to use. It does not mention when not to use, but the use cases are well-defined and the sibling tools cover different domains.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_chargesList UK tolls & road chargesARead-onlyInspect
Lists every UK pay-later ANPR toll and road charge (Dartford Crossing, London Congestion Charge, ULEZ, Blackwall & Silvertown tunnels, M6 Toll, Clean Air Zones, airport drop-off charges, and more) with the price and the penalty for missing payment. Use to discover which schemes exist and the ids accepted by charge_info.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true; the description adds value by detailing the exact content listed (price, penalty, schemes) without contradictions.
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 efficiently convey purpose, examples, and usage; no redundant 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 zero parameters and no output schema, the description fully explains what the tool returns, its use case, and how it relates to sibling 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?
No parameters exist, so baseline is 4. The description adds no parameter info, which is appropriate as none are needed.
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 lists UK pay-later ANPR tolls and road charges with specific examples, and explicitly distinguishes its purpose (discovering schemes and IDs) from sibling tools like charge_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 tells when to use it ('Use to discover which schemes exist and the ids accepted by charge_info'), implying the alternative charge_info for details, but does not explicitly state 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.
3 tool updates
- First observed
charge_info - First observed
check_vehicle - First observed
list_charges
Related MCP Connectors
UK used cars: road tax (VED), ULEZ charges, MOT dates, DVSA reliability, live dealer stock.
UK vehicle MOT status and full MOT history from official DVSA data, by registration.
Free, no key: UK parking ticket appeal guides, PCN contravention codes and deadline calculator.
61Check and appeal UK parking tickets (PCNs): grounds, deadlines, draft letters and filing.
101
Related MCP Servers
AlicenseAqualityCmaintenanceEnables natural language queries about UK postcodes and vehicles, including flood risk, crime rate, broadband coverage, property prices, MOT history, and ULEZ compliance.440 npmMIT- AlicenseNot gradedqualityDmaintenanceEnables UK haulage compliance checks including operator licence verification, tachograph auditing, drivers' hours calculations, and DVSA roadside inspection support.54 PyPIMIT
- FlicenseNot gradedqualityBmaintenanceQuery current and historical UK official figures (tax bands, minimum wage, benefits, energy price cap and 100+ more) with effective dates and links to official government sources. Data refreshed whenever the official sources change.-
- FlicenseNot gradedqualityBmaintenanceCalculate toll costs, list operators, and get tariff data across Spain, Portugal, and France through an LLM assistant.-
Glama MCP Gateway
Add one secure layer between your agents and this server.