Local MCP utilities: UTC clock, JSON check, URL shape, and IANA zones.
Five utility tools with minimal descriptions and no parameter documentation. Tool names lack action verbs (utc-time, timezone, validate-json, normalize-url, iana-zones). Descriptions are extremely brief (10-80 chars), below the 50-200 char LLM-optimized baseline. Most critically, parameters lack descriptions entirely: 'zone' in timezone has a description, but 'json' in validate-json and 'url' in normalize-url have none. No output schemas documented. Error handling is minimal (timezone returns generic 'Unknown IANA timezone', normalize-url returns 'Invalid URL' with no recovery guidance). Tools are read-only and simple, but lack the documentation rigor expected for production agent tooling.
Common IANA timezone names for clock calls.
Return origin, host, and path for a URL. Query and fragment are dropped. No network request is made.
Current local time in a named IANA timezone.
Current UTC timestamp.
Check whether text is valid JSON. The text is discarded.
Tool names lack action verbs. 'utc-time', 'timezone', 'validate-json', 'normalize-url', 'iana-zones' do not start with verbs (get_, list_, check_, etc.). LLMs infer intent from names, these are ambiguous about what action occurs.
Parameter descriptions missing. 'json' in validate-json and 'url' in normalize-url have no descriptions. LLMs cannot infer parameter meaning from names alone, a 'url' param could accept relative URLs, data: URIs, or only http/https.
Tool descriptions are extremely brief (10-80 chars, well below 50-200 char baseline). 'Current UTC timestamp' and 'Check whether text is valid JSON' lack context for when to use each tool vs alternatives, prerequisites, or what the LLM should do with the result.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 38 | 2026-07-28+ | v2 |
No output schemas documented. Tools return JSON objects (e.g. {utc, source}, {zone, local}, {valid, discarded}) but LLMs have no formal schema to understand field types and structure. This forces LLMs to infer output shape from examples.
Error messages lack recovery guidance. 'Unknown IANA timezone' and 'Invalid URL' tell the LLM nothing about what to do next. Should suggest 'Call iana-zones to see valid timezones' or 'URL must be http:// or https://'.