Single tool with adequate schema and description, but lacks depth in parameter documentation and output schema specification. Tool name 'lint_clojure' is action-oriented and clear. Description (95 chars) is concise but could better explain when to use this tool vs alternatives. Input schema is well-formed with proper types and enums, but parameter descriptions lack actionable constraints (e.g., no guidance on valid path formats, no mention of clj-kondo installation requirement). Output schema is not documented, LLMs cannot predict response structure. Error handling returns raw command output without guidance on recovery.
Lint Clojure/ClojureScript/EDN content using clj-kondo
Output schema not documented. Tool returns text content but LLMs cannot predict structure (raw clj-kondo output vs parsed JSON). Violates pattern:tool requirement that all tools document return types.
Parameter descriptions lack actionable constraints. 'file' description mentions 3 input types but provides no validation guidance. 'configDir' does not explain what happens if directory is invalid. 'level' enum only includes 'warning', unclear why 'error' is not an option or what the default behavior is.
Error handling returns raw clj-kondo output without recovery guidance. When linting fails (e.g., file not found, invalid config), LLM receives unstructured stderr/stdout. No actionable error messages like 'File not found. Verify path exists and is readable.' Violates pattern:recovery-guide.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Missing prerequisite documentation. Tool description does not state that clj-kondo must be installed and in PATH. LLMs may attempt to call this tool in environments where clj-kondo is unavailable, resulting in cryptic 'command not found' errors.
No pagination or result limiting documented. If linting a large directory, output could be massive. Tool description should state result limits and whether output is truncated.