Local-first diagnostics for MCP and AI coding-agent plugin setups.
Five tools with basic schemas and descriptions, but significant gaps in parameter documentation and output schema clarity. Tool names follow verb_noun convention (scan_, audit_, explain_, generate_, list_) which is good. However, descriptions are terse (10-50 chars), parameter descriptions are minimal or absent, and output schemas are not formally documented. No error handling guidance. All tools are READ_ONLY which is safe, but the server lacks sophistication in composition and chaining support.
Discover configs and run static checks.
Explain a diagnostic rule by rule ID.
Generate MCP server configuration snippet for a specific client.
List all supported MCP clients.
Discover MCP configs without checks.
Descriptions are too brief (10-50 chars). Pattern requires 10-1024 chars with WHAT, WHEN, and prerequisites. E.g., 'scan_agent_stack' says 'Discover MCP configs without checks' but does not explain when to use it vs audit_agent_stack, what output structure to expect, or how to interpret results.
Output schemas are not documented. LLMs cannot plan downstream calls or extract fields without knowing the response structure. E.g., scan_agent_stack returns dict[str, Any] but the actual fields (servers, rules, errors, etc.) are opaque to the agent.
Parameter 'root_path' lacks description in three tools. The description 'Workspace root to inspect. Defaults to current directory.' is present in code but not formally attached to the schema. LLMs cannot see it.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | 2026-07-28+ | v2 |
No error handling guidance. Tools return {'found': False, ...} on failure but do not tell the LLM what to do next. E.g., if explain_finding(rule_id='INVALID') returns {'found': False}, the agent has no recovery path.
generate_client_config parameter 'client' accepts free-form strings but should be an enum. Code checks 'if client not in SUPPORTED_CLIENTS' but the schema does not constrain it, inviting hallucinated values like 'claude-web' or 'gpt-4'.