a11y-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| scan_pageA | Navigate to a URL, bypass Cloudflare if present, and run an accessibility scan. This tool uses an anti-detect browser (Camoufox) that can bypass Cloudflare protection, then injects axe-core and runs a full accessibility audit. Args: url: The URL to scan for accessibility issues wcag_level: WCAG conformance level (A, AA, AAA, 21A, 21AA, 22AA). Default: AA wait_for_cloudflare: Wait for Cloudflare challenges to complete. Default: True Returns: Summary of accessibility scan including violation counts by severity |
| scan_elementA | Scan a specific element on the current page for accessibility issues. Must be called after scan_page() has loaded a page. Runs axe-core on just the specified element and its descendants. Args: selector: CSS selector for the element to scan (e.g., '#main-nav', '.form-container') Returns: Accessibility scan results for the specified element |
| get_violationsA | Get detailed list of violations from the most recent scan. Returns full violation details including affected elements, WCAG references, and remediation guidance. Returns: List of violations with complete details including affected HTML elements |
| get_full_reportA | Get complete accessibility report from the last scan. Includes violations, passes, incomplete checks, and inapplicable rules. Use this for comprehensive analysis of accessibility compliance. Returns: Complete scan results including all categories (violations, passes, incomplete, inapplicable) |
| configure_rulesA | Enable or disable specific accessibility rules. Use this to customize which rules are checked during scans. Changes apply to all subsequent scans until reconfigured. Common rules to disable:
Args: rules: Map of rule IDs to enabled status. Example: {'color-contrast': false} Returns: Confirmation of applied configuration |
| set_wcag_levelA | Set WCAG conformance level for accessibility testing. Available levels:
Args: level: WCAG level code (A, AA, AAA, 21A, 21AA, 22AA) Returns: Confirmation of WCAG level setting with tags that will be used |
| export_reportA | Export accessibility report in the specified format. Generates a formatted report from the last scan results. Formats:
Args: format: Output format - 'json', 'html', or 'csv' Returns: Formatted report content as a string |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
All tools have clearly distinct purposes: configuration (rules and WCAG level), scanning (page and element), and result retrieval (full report, violations, export). No ambiguous overlap.
All tool names follow a consistent verb_noun snake_case pattern (e.g., configure_rules, scan_page, get_violations), making the tool set predictable.
Seven tools cover the essential workflow of accessibility testing: configuration, scanning, and reporting. The scope is appropriate without unnecessary tools.
Core workflows are covered, but minor gaps exist: there is no tool to retrieve current configuration (e.g., enabled rules or WCAG level) or to list available rules, which could hinder agents needing to inspect settings.