Model Context Protocol server for running axe accessibility scans against URLs
Single tool with comprehensive schema and reasonable descriptions. Tool naming follows verb_noun pattern ('axe_scan_url'). Input schema is well-defined with Zod validation covering 14 parameters with types, defaults, and constraints. Description is adequate (73 chars) but could be more detailed about when to use this tool vs alternatives. Output structure is documented in code but not formally in schema. No parameter-level descriptions visible in the schema itself, descriptions are embedded in Zod validators but not exposed to LLM. Error handling provides recovery hints for common failures (missing browsers). No output schema formally documented for LLM consumption. Missing any guidance on result pagination (not applicable here but impacts generality). Tool has no destructive operations but also lacks any hint annotations. Overall solid foundation with room for description depth and formal output schema documentation.
Run an axe accessibility scan against a URL
Parameter descriptions not exposed in schema, Zod validators define constraints but descriptions are not translated to JSON Schema for LLM visibility
Output schema not formally documented, response structure is hardcoded in handler but no schema provided for LLM to plan downstream operations
Tool description lacks 'when to use' guidance and context, 'Run an axe accessibility scan against a URL' doesn't explain use cases, prerequisites, or when to call this vs other accessibility tools
No tool annotations (readOnlyHint, idempotentHint) declared, tool is read-only and idempotent but MCP client cannot infer this
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 54 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 48 | - | v1 |
API timeout parameters ('navigationTimeoutMs') not bounded with explicit min/max in description, LLM could pass absurd values causing hangs