MCP Accessibility Scanner 🔍
A Model Context Protocol (MCP) server that provides automated web accessibility scanning using Playwright and Axe-core. This server enables LLMs to perform WCAG compliance checks, capture annotated screenshots, and generate detailed accessibility reports.
Features
✅ Full WCAG 2.1/2.2 compliance checking
🖼️ Automatic screenshot capture with violation highlighting
📄 Detailed JSON reports with remediation guidance
Installation
You can install the package using any of these methods:
Using npm:
npm install -g mcp-accessibility-scanner
Docker Installation
The project includes a Dockerfile that sets up all necessary dependencies including Node.js v22 and Python 3.13.
- Build the Docker image:
docker build -t mcp-server .
- Run the container:
docker run -it -e MCP_PROXY_DEBUG=true mcp-server
You can also run it in the background:
docker run -d -p 3000:3000 mcp-server
Installation in VS Code
Install the Accessibility Scanner in VS Code using the VS Code CLI:
For VS Code:
code --add-mcp '{"name":"accessibility-scanner","command":"npx","args":["mcp-accessibility-scanner"]}'
For VS Code Insiders:
code-insiders --add-mcp '{"name":"accessibility-scanner","command":"npx","args":["mcp-accessibility-scanner"]}'
Configuration
Here’s the Claude Desktop configuration:
{
"mcpServers": {
"accessibility-scanner": {
"command": "npx",
"args": ["-y", "mcp-accessibility-scanner"]
}
}
}
Usage
The scanner exposes a single tool scan_accessibility that accepts:
url: The webpage URL to scan (required)violationsTag: Array of accessibility violation tags to check (required)viewport: Optional object to customize the viewport sizewidth: number (default: 1920)height: number (default: 1080)
shouldRunInHeadless: Optional boolean to control headless mode (default: true)
Note: When running a scan, an annotated screenshot highlighting any accessibility violations will be automatically saved to your downloads folder.
Example usage in Claude:
Could you scan example.com for accessibility issues related to color contrast?
Advanced example with custom options:
Could you scan example.com for accessibility issues with a viewport of 1280x720 and show the browser window?
Development
Clone and set up the project:
git clone https://github.com/JustasMonkev/mcp-accessibility-scanner.git
cd mcp-accessibility-scanner
npm install
Start the TypeScript compiler in watch mode:
npm run watch
Test the MCP server locally:
npm run inspector
Docker Development
For development using Docker:
- Build the development image:
docker build -t mcp-server-dev .
- Run with volume mounting for live code changes:
docker run -it -v $(pwd):/app -p 3000:3000 -e MCP_PROXY_DEBUG=true mcp-server-dev
Project Structure
├── src/ # Source code
│ ├── index.ts # MCP server setup and tool definitions
│ └── scanner.ts # Core scanning functionality
├── build/ # Compiled JavaScript output
├── Dockerfile # Docker configuration for containerized setup
├── package.json # Project configuration and dependencies
└── tsconfig.json # TypeScript configuration
License
MIT
Accessibility Scanner
Project Details
- JustasMonkev/mcp-accessibility-scanner
- mcp-accessibility-scanner
- MIT License
- Last Updated: 4/22/2025
Categories
Recomended MCP Servers
Unity Catalog AI Model Context Protocol Server
MCP Server for blockchain interactions with Web DApp for secure transaction signing
Convert Any OpenAPI V3 API to MCP Server
browser-tools-mcp
Socket based MCP Server for Ghidra
本项目通过将 MCP 协议转换为 MQTT 协议,我们能够利用强大的大型语言模型(LLMs),就能轻松操控您的智能家居、机器人或其他硬件设备。
Model context protocol server for Starknet RPC
MCP server for Docker
Model Context Protocol (MCP) server for constraint optimization and solving"
A Model Context Protocol (MCP) server for interacting with the Canvas API. This server allows you to manage...





