Single tool 'honeyurl_scan' has a basic description (67 chars) but critically lacks parameter descriptions. The input schema defines 'target' as a string with a description, but the tool description does not explain what 'target' should contain (file path? URL? directory?), when to use this tool, or what the JSON output structure contains. No output schema is documented. The tool name follows verb_noun convention (scan), but the description is too terse to guide LLM selection. No error handling guidance, no pagination, no field documentation for the returned JSON. Baseline: 100% of A+ tools have param descriptions; this tool has 0/1 params described in the tool docstring itself.
Generate canary URLs/tokens + a matcher for trip events. Returns JSON findings.
Parameter 'target' lacks description in tool docstring. LLM cannot infer whether to pass a file path, directory, URL, or something else. Baseline: 100% of A+ tools describe every parameter.
No output schema documented. Tool returns JSON findings but LLM has no visibility into the structure (fields, types, nesting). Baseline: 100% of A+ tools document return types.
Tool description (67 chars) is below the 10 - 1024 char baseline and lacks WHAT/WHEN/WHY context. Does not explain when to call this vs other scanning tools, what 'canary URLs/tokens' means, or what 'trip events' are. LLM cannot determine selection criteria.
No error handling guidance. If 'target' is invalid (missing, unreadable, malformed), the tool provides no recovery hint. LLM cannot self-correct or retry intelligently.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2026-07-28+ | v2 |
Tool name 'honeyurl_scan' is domain-specific jargon. LLM may not understand 'honeyurl' without context. Consider 'scan_canary_tokens' or 'detect_canary_access' to make intent clearer.