mcp-a11y-service
Audits Figma designs for WCAG 2.2 AA accessibility compliance by analyzing design context JSON from Figma MCP, generating markdown audit reports with severity-grouped violations, WCAG criterion references, and concrete fix recommendations.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-a11y-serviceaudit https://example.com for accessibility issues"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-a11y-service
MCP server that audits Figma designs and webpages for accessibility compliance.
Accepts two input types:
Figma designs — via Figma MCP's
get_design_contextoutputWebpages — any
http://,https://, orlocalhostURL
Both produce a markdown audit report grouped by severity, with per-violation criterion references, concrete fix recommendations, a compliance gap analysis, and a manual review checklist.
Tools
Tool | Input | Description |
| URL | Launches headless Chromium, injects axe-core, returns a structured audit report |
| Figma MCP JSON | Analyzes Figma design JSON for contrast, touch targets, alt text, and more |
Both tools default to WCAG 2.2 AA. Pass the standard parameter to target a different standard.
Related MCP server: Playwright Accessibility Testing MCP Server
Supported Standards
WCAG
Identifier | Standard |
| WCAG 2.2 Level AA |
| WCAG 2.2 Level A |
| WCAG 2.2 Level AAA |
| WCAG 2.1 Level AA |
| WCAG 2.1 Level A |
| WCAG 2.1 Level AAA |
Legal and regulatory
Identifier | Standard | WCAG basis |
| Section 508 (U.S. federal ICT law) | WCAG 2.0 AA, audited as WCAG 2.1 AA |
| EN 301 549 v3.2.1 (EU ICT standard) | WCAG 2.1 AA |
| ISO/IEC 30071-1 (accessibility process standard) | WCAG 2.1 AA + process checklist |
Legal standard audits run the full WCAG automated checks against the underlying basis, then append a manual review checklist covering the standard's additional requirements (functional performance criteria, support documentation, organisational processes, etc.) that axe-core cannot verify automatically.
Report structure
Every audit report includes:
Summary — issue counts by severity (Critical / Serious / Moderate / Minor)
Violations — grouped by severity, each with the criterion reference, affected element, issue description, and fix
Manual review — checks that cannot be automated (screen reader testing, keyboard navigation, process requirements for legal standards)
Compliance gap analysis — which conformance levels the page/design passes or fails at, and what's needed to reach the target
Prompts
Prompt | Arguments | Description |
|
| Orchestrates the two-step flow: Figma MCP → |
|
| Runs |
Requirements
Python 3.11+
uv or pip
Installation
pip install -r requirements.txt
playwright install chromiumaxe-core is downloaded from the CDN on first run and cached locally as axe.min.js. No manual download needed.
No .env required — webpage audits run locally via Playwright, and Figma credentials live in the Figma MCP configuration.
Conda environment
This project runs inside a conda environment. Create one and install the dependencies:
conda create -n <your-env-name> python=3.11
conda activate <your-env-name>
pip install -r requirements.txt
playwright install chromiumThe configs below use
myenvas a placeholder — replace it with your environment name.
Usage with Claude Code
Run once to register the server:
claude mcp add a11y /path/to/anaconda3/envs/myenv/bin/python -- /path/to/mcp-a11y-service/server.pyOr add it manually to your .claude/settings.json:
{
"mcpServers": {
"a11y": {
"command": "/path/to/anaconda3/envs/myenv/bin/python",
"args": ["/path/to/mcp-a11y-service/server.py"]
}
}
}Usage with Cursor
Open Cursor Settings → MCP
Click Add new global MCP server
Add the following to your
~/.cursor/mcp.json:
{
"mcpServers": {
"a11y": {
"command": "/path/to/anaconda3/envs/myenv/bin/python",
"args": ["/path/to/mcp-a11y-service/server.py"]
}
}
}Restart Cursor. The
a11yserver will appear under Available Tools in the MCP panel.
Usage with VS Code
Install the Claude extension if you haven't already
Open your VS Code
settings.json(Cmd+Shift+P→ Preferences: Open User Settings (JSON))Add:
{
"claude.mcpServers": {
"a11y": {
"command": "/path/to/anaconda3/envs/myenv/bin/python",
"args": ["/path/to/mcp-a11y-service/server.py"]
}
}
}Reload VS Code.
Running Tests
pytestThis server cannot be deployed
Maintenance
Related MCP Connectors
Scan URLs for WCAG 2.1 violations, generate AI fixes, and produce VPAT 2.5 compliance reports.
Scan a web page for accessibility, security, privacy, quality and SEO issues, with fixes.
Deterministic axe-core accessibility scans (WCAG 2.1 AA, EN 301 549, PDF/UA) via your account.
Validate HTML/CSS, audit SEO and JSON-LD, check links, and capture responsive screenshots.
Related MCP Servers
- AlicenseBqualityAmaintenanceEnables automated web accessibility scans for WCAG compliance using Playwright and Axe-core, providing visual and JSON reports with remediation guidance.251,976 npm56MIT
- FlicenseAqualityDmaintenanceEnables comprehensive WCAG 2.0/2.1 accessibility testing of web applications using Playwright and axe-core. Supports natural language element finding, auto-discovery of interactive components, and generates detailed compliance reports with screenshots.2-
- AlicenseAqualityCmaintenanceProvides conversational, actionable accessibility testing for AI agents, including auditing, prioritization, and code-level fixes.227 npmMIT
- AlicenseAqualityDmaintenanceEnables AI agents to perform comprehensive web accessibility checks (WCAG 2.1/2.2) including color contrast analysis, ARIA validation, and full accessibility report generation without requiring any API key.8MIT