CAZ Cost
Server Details
UK Clean Air Zone daily charges by council, per vehicle class, and what a trip costs.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 3 tools
list_zones (all zones) vs zone_charges (single zone by id) is a standard list/detail split, and trip_cost is a distinct computation. There is some content overlap since both list_zones and zone_charges return per-vehicle-class charges, but boundaries are clear enough.
All names use consistent snake_case and are readable. Prefixes are mixed (verb_noun for list_zones vs noun_noun for trip_cost and zone_charges), a minor deviation rather than a real inconsistency.
Three tools is on the thin side for a charge-lookup domain that could support vehicle-class enumeration, zone search by region, or separate penalty lookups. Each tool earns its place, but the set feels minimal.
List-all, get-by-id, and trip cost computation cover the core read workflows for a reference-cost service, and penalty/source data is included. Minor gaps exist around searching zones by location or vehicle class, but nothing blocking.
Available Tools
3 toolslist_zonesAInspect
List every UK Clean Air Zone with the daily charge each council publishes, per vehicle class, plus the London Congestion Charge and ULEZ which are separate schemes.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
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. It does disclose the data breadth (charges per council, per vehicle class, plus two named London schemes), which is real content beyond the empty schema, but it says nothing about access requirements, rate limits, or whether the result is a flat list or grouped output.
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 front-loads the core coverage and then notes the two extra schemes. Every clause adds scoping information; nothing is redundant.
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?
With no output schema, no annotations, and no parameters, the description is the sole source of meaning. It establishes coverage well, but leaves the shape of the returned data (one row per zone/vehicle class? grouped by scheme?) unspecified for a tool whose whole job is to return a dataset.
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 is an empty object with zero parameters, so per the baseline this scores 4. No parameter detail is needed or missing.
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 gives a specific verb ('List') and a precisely scoped resource: every UK Clean Air Zone with the daily charge each council publishes, per vehicle class, plus the London Congestion Charge and ULEZ. It is unmistakably the enumeration tool rather than a cost calculator, but it never names the siblings (zone_charges, trip_cost), so differentiation is left to inference.
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 when-to-use guidance and no mention of alternatives. The note that the London schemes 'are separate schemes' is a data-scope clarification, not routing advice, so an agent gets no explicit signal on when to pick this over zone_charges or trip_cost.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trip_costAInspect
Cost one trip through a zone: daily rate x days, plus the penalty if it went unpaid. Returns chargeable=false when that vehicle class is not charged, and lists the zones where it would be.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Chargeable days, 1..365 | |
| zone | Yes | ||
| unpaid | No | Include the Penalty Charge Notice amount | |
| vehicle | No | car, motorcycle, van, minibus, taxi, hgv, bus or coach |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose real behavioral traits: the pricing formula, penalty inclusion, and the chargeable=false fallback that returns a list of zones where the vehicle class would be charged. It omits error/permission behavior, but the response semantics are unusually well covered.
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 core computation, with the non-charged fallback second. No filler, nothing that could be cut without losing 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?
No output schema exists, so the description's explanation of the return shape (cost, chargeable flag, alternative zone list) is doing necessary work. It is nearly complete for a 4-param tool, with the only omission being guidance on when to prefer it over 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?
Schema coverage is 75%, but the description still adds value by tying 'days' and 'unpaid' to the cost formula and clarifying that the non-charged branch returns alternative zones. The zone parameter remains unexplained in both places, which is the only real gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Cost one trip through a zone') and even gives the computation formula (daily rate x days + penalty). It is clearly distinguishable from list_zones and zone_charges in intent, though it never names those siblings to make the boundary explicit.
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 explicit when-to-use guidance and no comparison to list_zones or zone_charges, which an agent could plausibly reach for first to obtain rates. Usage is only inferable from the phrase 'Cost one trip through a zone'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zone_chargesAInspect
Get one zone by id: its daily charge for each vehicle class, its notes, its penalty figures and the source URLs the numbers came from.
| Name | Required | Description | Default |
|---|---|---|---|
| zone | Yes | Zone id, e.g. birmingham, bristol, bradford, bath, portsmouth, sheffield, tyneside, london-cc, london-ulez |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. The verb 'Get' does signal a read-only lookup and the description discloses the shape of what comes back, but it says nothing about behavior on an unknown or misspelled zone id, pagination, or any auth/rate constraints.
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 front-loaded sentence with the verb first and the enumerated return fields after; there is no filler. It is efficient, though the colon-and-list construction is dense rather than maximally scannable.
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?
There is no output schema, so the description must describe the return values, and it does so concretely (per-class charge, notes, penalties, source URLs). The gap is failure behavior for an invalid zone id, which is not addressed anywhere.
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% and the single 'zone' parameter is documented in the schema with concrete example ids. The description adds only the loose phrase 'by id', so per the baseline rule a 3 is appropriate when the schema does the heavy lifting.
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 names a specific verb and resource ('Get one zone by id') and enumerates the returned content (daily charge per vehicle class, notes, penalties, source URLs). It implicitly contrasts with list_zones by scoping to a single zone, but never names a sibling explicitly to pin down the boundary with trip_cost.
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?
Usage is only implied: an agent can infer this is the lookup you call when you already know a zone id and need its charge data. There is no explicit when-to-use, no mention of when to prefer trip_cost, and no prerequisite or fallback guidance.
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
list_zones - First observed
trip_cost - First observed
zone_charges
Related MCP Connectors
UK tolls & charges: DVLA vehicle checks (ULEZ/CAZ/MOT/tax), prices, penalties, pay-by deadlines.
UK vehicle tax (VED) bands, expensive-car supplement, EV rules and MOT fees, sourced.
UK used cars: road tax (VED), ULEZ charges, MOT dates, DVSA reliability, live dealer stock.
Access UK air quality data, monitoring sites, and hourly pollutant measurements across regions
Related MCP Servers
- 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.-
- AlicenseNot gradedqualityDmaintenanceEnables UK haulage compliance checks including operator licence verification, tachograph auditing, drivers' hours calculations, and DVSA roadside inspection support.MIT
- AlicenseNot gradedqualityDmaintenanceEnables UK haulage compliance managers to audit tachographs, drivers' hours, and DVSA OCRS scores, preventing red status and generating public inquiry briefs.MIT
- AlicenseAqualityAmaintenanceUK property area intelligence: validated trajectory scores, gentrification early-warning and area screening for 2,292 England & Wales postcode districts, from 30+ government data sources.7MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.