home / mcp / accessibility scanner mcp server
Provides automated WCAG accessibility scanning and browser automation via Playwright and Axe-core for detailed reports and annotations.
Configuration
View docs{
"mcpServers": {
"justasmonkev-mcp-accessibility-scanner": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"justasmonkev/mcp-accessibility-scanner"
]
}
}
}You can run the MCP Accessibility Scanner to perform automated WCAG checks, interact with web pages, and generate annotated reports. This MCP server combines browser automation with accessibility scanning to help you verify compliance and produce actionable remediation insights.
To use this MCP server, you run it through a client that can send commands to the MCP interface. You can inspect pages, trigger accessibility scans, collect reports, and review visual annotations. Typical workflows include navigating to a page, taking screenshots or snapshots for analysis, running accessibility scans on the current page, and aggregating findings across multiple pages or a site.
Prerequisites: ensure you have Docker installed on your host to run the MCP server container.
# Pull the MCP server image
docker pull justasmonkev/mcp-accessibility-scannerYou can start the MCP Accessibility Scanner using Docker. This runs the server inside a container and includes Chromium for browser automation.
# Start the MCP server container (interactive, remove after exit)
docker run -i --rm justasmonkev/mcp-accessibility-scannerFor persistent output such as screenshots and reports, mount a local directory into the container at the path where output is written by the server. Use a volume to ensure data persists beyond container lifetimes.
If you need to coordinate with a CLI or an orchestration tool, you can wrap the Docker command in your preferred workflow or automation script. Ensure the container has access to the host filesystem path where you want to store outputs.
Performs a comprehensive accessibility scan on the current page using Axe-core with options for violation tags.
Crawls and scans multiple internal pages, aggregates violations across the site, and writes a JSON report.
Runs Axe scans across multiple viewport/media/zoom variants and compares deltas against a baseline, producing per-variant reports.
Audits keyboard focus behavior by simulating Tab navigation, capturing focus-related issues, and generating a report.
Navigate the browser to a specified URL.
Navigate to the previous page.
Navigate to the next page in history.
Capture an accessibility-focused snapshot of the current page, identifying interactive elements.
Click an element on the page using a description or element reference.
Type text into an editable element, with optional submission and delay.
Hover over an element on the page.
Drag and drop between two elements identified by references.
Select an option within a dropdown.
Press a key on the keyboard, such as Arrow keys or characters.
Capture a screenshot of the current page or a specified element.
Save the current page as a PDF.
Close the current page.
Resize the browser window to specified dimensions.
List all open browser tabs.
Open a new browser tab and optionally navigate to a URL.
Select a tab by index.
Close a tab by index or the current tab.
Return all console messages from the page.
Return all network requests since the page load.
Wait for specific text to appear or disappear, or wait for a time delay.
Handle browser dialogs such as alerts, confirms, or prompts.
Upload files to the page by providing absolute paths.
Capture a screenshot for coordinate-based interactions.
Move the mouse to specific coordinates for coordinate-based actions.
Click at precise coordinates for coordinate-based interactions.
Drag from one coordinate to another.
Type text at coordinates-agnostic in coordinate-based mode.