Skip to main content
Glama

Accessibility Testing MCP

An MCP server for accessibility testing using axe-core and IBM Equal Access. Choose your testing engine or use both for comprehensive coverage.

Example Prompts

  • "Test the accessibility of https://example.com"

  • "Test the accessibility of https://example.com" blockers only output issues in chat: What is the Issue, Who it Impacts, How to Fix, WCAG, Severity, Code Snippet"

Dual Engine Support

  • Axe-core (Deque) - Industry standard, zero false positives

  • IBM Equal Access - Comprehensive IBM accessibility requirements

Multi-Screen Testing

Test at multiple viewport sizes to catch responsive accessibility issues.

Tools

Tool

Description

analyze_url

Test any URL for accessibility issues

analyze_url_json

URL test with raw JSON output

analyze_html

Test HTML content directly

analyze_html_json

HTML test with raw JSON output

get_rules

List available accessibility rules

All tools accept an optional engine parameter ("axe" or "ace").

Installation

npm install npm run build

Configuration

Environment Variables

Configure via MCP config env section:

Variable

Values

Default

Description

A11Y_ENGINE

axe, ace

axe

Testing engine

WCAG_LEVEL

2.0_A, 2.0_AA, 2.1_A, 2.1_AA, 2.2_AA, etc.

2.1_AA

WCAG version & level

BEST_PRACTICES

true, false

true

Include best practices/recommendations

SCREEN_SIZES

Comma-separated WIDTHxHEIGHT

1280x1024

Viewport sizes to test

HEADLESS_BROWSER

true, false

true

Run browser in headless mode; set to false to open visible browser

The WCAG_LEVEL setting automatically configures both Axe-core tags and IBM Equal Access policies.

VS Code (GitHub Copilot)

Add to VS Code settings (JSON):

"mcp": { "servers": { "accessibility-testing-mcp": { "type": "stdio", "command": "node", "args": ["/path/to/accessibility-testing-mcp/build/index.js"], "env": { "A11Y_ENGINE": "axe", "WCAG_LEVEL": "2.2_AA", "BEST_PRACTICES": "true", "SCREEN_SIZES": "1280x1024,320x640", "HEADLESS_BROWSER": "true" } } } }

Claude Desktop

Add to claude_desktop_config.json:

{ "mcpServers": { "accessibility": { "command": "node", "args": ["/path/to/accessibility-testing-mcp/build/index.js"], "env": { "A11Y_ENGINE": "ace", "WCAG_LEVEL": "2.2_AA", "BEST_PRACTICES": "true" } } } }

Understanding Results

Axe-core Output

  • Violations: Definite accessibility failures

  • Incomplete: Needs manual review

  • Passes: Rules that passed

  • Inapplicable: Rules that don't apply

IBM Equal Access Output

  • Violations: Accessibility failures

  • Potential Violations: Needs review

  • Recommendations: Suggested improvements (when BEST_PRACTICES=true)

  • Manual Checks: Requires human testing

WCAG_LEVEL Values

Level

Description

2.0_A

WCAG 2.0 Level A

2.0_AA

WCAG 2.0 Level AA

2.1_A

WCAG 2.1 Level A

2.1_AA

WCAG 2.1 Level AA (default)

2.1_AAA

WCAG 2.1 Level AAA

2.2_A

WCAG 2.2 Level A

2.2_AA

WCAG 2.2 Level AA

2.2_AAA

WCAG 2.2 Level AAA

Dependencies

  • @modelcontextprotocol/sdk - MCP server framework

  • axe-core - Deque accessibility testing engine

  • accessibility-checker - IBM Equal Access engine

  • playwright - Headless browser automation

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/joe-watkins/accessibility-testing-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server