Other MCP Server · MODEL CONTEXT PROTOCOL
priyankark a11y mcp
An MCP (Model Context Protocol) server for performing accessibility audits on webpages using axe-core. Use the results in an agentic loop with your favorite AI assistants (Cline/Cursor/GH Copilot) and let them fix a11y issues for you!
WHAT IT CONNECTS
What priyankark a11y mcp gives an AI Agent
- Perform detailed accessibility audits on any webpage
- Get a summary of accessibility issues
- Filter audits by specific WCAG criteria
- Include HTML snippets in the results for easier debugging
- `url` (required): URL of the webpage to audit
- `includeHtml` (optional): Whether to include HTML snippets in the results (default: false)
- `tags` (optional): Array of specific accessibility tags to check (e.g., wcag2a, wcag2aa, wcag21a, best-practice)
- `url` (required): URL of the webpage to audit
- "Can you check example.com for accessibility issues?"
- "Audit my website at https://mywebsite.com for WCAG 2.1 AA compliance"
- "Give me a summary of accessibility issues on https://example.com"
- "Check if my local development server at http://localhost:3000 has any critical accessibility problems"
SECURITY
An MCP listing is not a security review
An MCP server may receive model context, credentials, local files, or permission to call external systems. Review its code, requested environment variables, network behavior, package provenance, and maintenance status before connecting it to an agent.
README
Repository documentation
An MCP (Model Context Protocol) server for performing accessibility audits on webpages using axe-core. Use the results in an agentic loop with your favorite AI assistants (Cline/Cursor/GH Copilot) and let them fix a11y issues for you!
- Perform detailed accessibility audits on any webpage
- Get a summary of accessibility issues
- Filter audits by specific WCAG criteria
- Include HTML snippets in the results for easier debugging
# Install globally
npm install -g a11y-mcp
# Or use directly with npx
npx a11y-mcpTo use this MCP server with Cline, you need to add it to your MCP settings configuration file.
Add the following to the mcpServers object:
{
"mcpServers": {
"a11y": {
"command": "npx",
"args": ["a11y-mcp"],
"disabled": false,
"autoApprove": []
}
}
}Performs a detailed accessibility audit on a webpage.
Parameters:
url(required): URL of the webpage to auditincludeHtml(optional): Whether to include HTML snippets in the results (default: false)tags(optional): Array of specific accessibility tags to check (e.g., wcag2a, wcag2aa, wcag21a, best-practice)
Example:
Use the a11y MCP server to audit example.com for accessibility issues
Gets a summary of accessibility issues for a webpage.
Parameters:
url(required): URL of the webpage to audit
Example:
Give me an accessibility summary of example.com
Once configured, you can ask Claude to use the MCP server to perform accessibility audits:
- "Can you check example.com for accessibility issues?"
- "Audit my website at https://mywebsite.com for WCAG 2.1 AA compliance"
- "Give me a summary of accessibility issues on https://example.com"
- "Check if my local development server at http://localhost:3000 has any critical accessibility problems"
To run the server locally for development:
npm startThis project includes a release script to help with versioning and publishing to npm. The script handles version bumping, running tests, git tagging, and npm publishing.
To release a new version:
# Make sure the script is executable
chmod +x release.sh
# Release a patch version (default)
./release.sh
# Release a minor version
./release.sh --minor
# Release a major version
./release.sh --major
# Release a specific version
./release.sh --version=1.2.3
# Skip git operations
./release.sh --skip-git
# Dry run (no changes will be made)
./release.sh --dry-run
# Force release even with uncommitted changes
./release.sh --forceFor more information, run:
./release.sh --helpMPL 2.0
This project builds atop the awesome work done by axe-core
Requires Node.js 22.12 or newer. Chrome runs with its sandbox enabled.
Every HTTP(S) connection, including redirects and subresources, goes through a
validating proxy that pins the destination IP. Private, link-local, multicast,
reserved, and cloud metadata addresses are blocked, including mapped IPv6.
Loopback remains available for local development; set AUDIT_ALLOW_LOOPBACK=false
for public-only audits. LAN addresses are no longer supported.
One audit runs per MCP process, with a 90-second browser deadline.
For hosted use, additionally isolate browser workers and enforce network egress
restrictions at the infrastructure layer. Automated axe checks do not establish
WCAG conformance; manual review is still required.
Run npm test, npm run test:smoke (requires Chrome), and npm audit.
COMMUNITY