MCP-Server fuer Web-Accessibility-Checks: WCAG 2.1/2.2 Pruefung, Kontrast, ARIA, Formular-Validierung
Project description
accessibility-mcp-server
MCP-Server for Web Accessibility Checks (WCAG 2.1/2.2)
Gives AI agents the ability to check websites for accessibility issues, validate ARIA attributes, check color contrast ratios, and generate full accessibility reports — without any API key.
Features
- WCAG 2.1 AA Compliance Checks — Automated checks for 10+ WCAG success criteria
- Color Contrast Analyzer — Calculates contrast ratios and WCAG AA/AAA pass/fail
- ARIA Validator — Checks ARIA roles and attributes for correctness
- Heading Structure Analyzer — Validates heading hierarchy (H1→H2→H3...)
- Image Alt Text Checker — Finds images missing alt attributes
- Form Label Validator — Ensures all form inputs have accessible labels
- Full A11y Report — Comprehensive report with accessibility score (0-100)
- WCAG Rule Reference — Browse all WCAG 2.1 A/AA/AAA rules
- No API Key Required — Works with any public website
Tools
| Tool | Description |
|---|---|
check_url_accessibility |
Full WCAG 2.1 AA check for any URL |
check_color_contrast |
Calculate contrast ratio between two colors |
validate_aria |
Validate ARIA attributes in HTML snippet |
check_heading_structure |
Analyze heading hierarchy on a page |
check_images_alt |
Check all images for alt text |
check_form_labels |
Check all form inputs for labels |
generate_a11y_report |
Comprehensive accessibility report with score |
list_wcag_rules |
List all WCAG 2.1 rules for a given level |
Installation
pip install accessibility-mcp-server
Usage with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"accessibility": {
"command": "accessibility-mcp-server"
}
}
}
Example Prompts
- "Check https://example.com for accessibility issues"
- "What is the contrast ratio between #333333 and #ffffff?"
- "Generate a full accessibility report for https://mysite.com"
- "Check if the images on https://example.com have alt text"
- "Validate the ARIA in this HTML:
<div role='buttn'>Click</div>" - "List all WCAG 2.1 AA rules"
WCAG Criteria Checked
| Criterion | Level | Check |
|---|---|---|
| 1.1.1 Non-text Content | A | Images without alt text |
| 1.3.1 Info and Relationships | A | Heading hierarchy, landmark regions |
| 1.4.3 Contrast (Minimum) | AA | Color contrast ratio calculator |
| 2.4.1 Bypass Blocks | A | Skip links and landmarks |
| 2.4.2 Page Titled | A | Missing or empty page titles |
| 2.4.4 Link Purpose | A | Generic link text detection |
| 3.1.1 Language of Page | A | Missing lang attribute |
| 3.3.2 Labels or Instructions | A | Form inputs without labels |
| 4.1.1 Parsing | A | Duplicate IDs |
| 4.1.2 Name, Role, Value | A | ARIA validation, unlabeled buttons |
Tech Stack
- Python 3.10+ with FastMCP
- httpx for async HTTP requests
- BeautifulSoup4 + lxml for HTML parsing
- WCAG formulas implemented directly (relative luminance, contrast ratio)
License
MIT — Free for personal and commercial use.
Built by AiAgentKarl | Part of the AI Agent Tools ecosystem
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file accessibility_mcp_server-0.1.0.tar.gz.
File metadata
- Download URL: accessibility_mcp_server-0.1.0.tar.gz
- Upload date:
- Size: 10.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99d309935a1d8cb29d5f14d0610ccc208afd15cc0e3d946fa67304b4ace229a6
|
|
| MD5 |
cdbcbed33d630b2324e1a5d8ee7f342d
|
|
| BLAKE2b-256 |
ac19aeabcaea9d5297191b0f1defc8d8b8b79a976fa466167c13c42c40591d5d
|
File details
Details for the file accessibility_mcp_server-0.1.0-py3-none-any.whl.
File metadata
- Download URL: accessibility_mcp_server-0.1.0-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
677516efd61a8130ddcf652fe50f15f6f37cfbe6dd1c444fd3bb9c767e1c00e7
|
|
| MD5 |
04456cca540d1a88371495e6a6867734
|
|
| BLAKE2b-256 |
e733a470594659932d85e01b27a218b65335eeb01028ca2e065fee0a1d702db4
|