AgentStack
MCP verified MIT Self-run

Accessibility Mcp Server

mcp-alii13-accessibility-mcp-server · by alii13

MCP server configuration for automated web accessibility auditing. Test WCAG compliance, generate reports, and integrate accessibility testing into your IDE workflow.

No reviews yet
0 installs
3 views
0.0% view→install

Install

$ agentstack add mcp-alii13-accessibility-mcp-server

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Accessibility Mcp Server? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

♿ Accessibility MCP Server

A Model Context Protocol (MCP) server that provides conversational, actionable accessibility testing. This server exposes accessibility auditing tools that can be used by AI agents and chat interfaces.

✨ Features

  • Conversational Results: Results formatted for natural language understanding, not raw data
  • Session Management: Reusable authenticated sessions for testing protected pages
  • Tag Filtering: Filter results by specific WCAG levels (wcag2a, wcag2aa, wcag21a, etc.)
  • Educational Focus: Tools that explain issues in plain language with code examples
  • Code-Level Fixes: Actual before/after code examples, not just descriptions
  • Progress Updates: Streaming progress for long-running batch operations
  • Smart Prioritization: AI-powered issue prioritization with quick wins identification
  • Compliance Reports: Automated VPAT/WCAG/ADA compliance documentation
  • Trend Tracking: Historical data and predictions for accessibility improvements

📋 Prerequisites

  • Node.js 18+ (for npx command)
  • That's it! Everything else is handled automatically.

🚀 Quick Start (Using Published Package)

Step 1: Add to Your MCP Client Configuration

Add this server to your MCP client configuration (e.g., Claude Desktop, Cursor):

Claude Desktop Configuration

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "accessibility-audit": {
      "command": "npx",
      "args": ["-y", "@ali0113/accessibility-mcp-server"]
    }
  }
}
Cursor Configuration

Add to your Cursor MCP settings (~/.cursor/mcp.json or Cursor Settings → MCP):

{
  "mcpServers": {
    "accessibility-audit": {
      "command": "npx",
      "args": ["-y", "@ali0113/accessibility-mcp-server"]
    }
  }
}

Step 2: Restart Your MCP Client

Restart Claude Desktop or Cursor to load the new MCP server configuration.

Step 3: Start Using It!

That's it! You're ready to use all 25+ accessibility tools. The package will be automatically downloaded and cached by npx on first use.

How it works:

  • npx automatically downloads and runs the package if needed
  • The -y flag answers "yes" to prompts (non-interactive)
  • Playwright browsers install automatically on first run
  • No manual installation, building, or configuration needed!

🎉 Awesome Things You Can Do

🔍 Comprehensive Accessibility Auditing

  • Audit any website - Single URLs, multiple pages, or entire sites
  • Test protected pages - Authenticated session management for login-protected content
  • Batch processing - Test multiple URLs in parallel with progress tracking
  • WCAG compliance - Check against WCAG 2.0, 2.1 (Levels A, AA, AAA) and best practices

🎯 Smart Prioritization & Quick Wins

  • Identify critical blockers - Find must-fix issues that block users
  • Quick wins detection - Easy fixes with high impact
  • Intelligent prioritization - Sort by impact, WCAG level, fixability, or user impact
  • Focus your efforts - Know exactly what to fix first

💻 Code-Level Fixes

  • Before/after code examples - See exactly what needs to change
  • Copy-paste ready solutions - Actual code, not just descriptions
  • Multiple formats - Markdown, HTML, or JSON output
  • Specific fix suggestions - Targeted solutions for each issue

📚 Educational Resources

  • Plain language explanations - Understand what each issue means
  • Why it matters - Learn the user impact
  • How to fix - Step-by-step guidance with examples
  • WCAG references - Direct links to accessibility standards
  • Common mistakes - Learn from typical errors

📊 Compliance & Reporting

  • VPAT reports - Generate Voluntary Product Accessibility Template documentation
  • WCAG compliance reports - Detailed compliance breakdowns
  • ADA reports - Americans with Disabilities Act compliance
  • Section 508 reports - Federal accessibility compliance
  • Executive summaries - High-level reports for stakeholders

📈 Tracking & Comparison

  • Before/after comparison - Track improvements over time
  • Trend analysis - Historical data and predictions
  • Score tracking - Monitor accessibility scores
  • Visual diffs - See what changed between audits

📤 Export & Share

  • CSV export - Import into Excel for analysis
  • Excel export - Professional reports with charts and formatting
  • JSON export - For API integration and data processing
  • HTML reports - Standalone web reports with visualizations
  • Dashboard generation - Visual summaries with charts

🔎 Filtering & Search

  • Filter by criteria - Rule IDs, categories, impact levels, WCAG levels
  • Search issues - Find specific problems quickly
  • Include/exclude modes - Focus on what matters
  • Element type filtering - Find issues in specific HTML elements

📊 Statistics & Aggregation

  • Site-wide analysis - Combine multiple audit results
  • Detailed statistics - Breakdowns by category, impact, WCAG level
  • Aggregated summaries - Overall site accessibility metrics
  • Grouping options - Organize by URL, category, rule, or impact

🎨 Visualization

  • Dashboards - Visual summaries with key metrics
  • Charts - Score trends and category breakdowns
  • Multiple formats - Text, Markdown, HTML, JSON
  • Executive reports - High-level summaries for stakeholders

💡 Real-World Use Cases

For Developers

  • Get code-level fixes for accessibility issues
  • Learn accessibility concepts with educational explanations
  • Integrate into CI/CD pipelines
  • Export results for team sharing

For QA Teams

  • Batch test multiple pages efficiently
  • Track accessibility over time
  • Generate compliance reports
  • Compare before/after deployments

For Product Managers

  • Executive summary reports
  • Compliance documentation (VPAT, ADA)
  • Dashboard visualizations
  • Track accessibility scores over time

For Compliance Teams

  • Generate VPAT reports automatically
  • WCAG compliance documentation
  • Section 508 compliance checks
  • Detailed remediation plans

🎬 Quick Usage Example

Once configured, you can immediately start using the accessibility tools in your AI assistant:

Example: Audit a website

"Audit https://example.com for accessibility issues"

Example: Get quick fixes

"Show me quick fixes for the accessibility issues on cursor.com"

Example: Generate compliance report

"Generate a VPAT report for docs.atlan.com"

Example: Compare before/after

"Compare the accessibility of example.com before and after the redesign"

The AI assistant will automatically use the appropriate tools to fulfill your requests!

🛠️ Available Tools

Tier 1: Core Audit Tools

audit_url - Single URL Audit

Test a single URL for accessibility issues with conversational, actionable results.

Inputs:

  • url (required): Full URL or relative path
  • domain (optional): Base domain if URL is relative
  • tags (optional): Array of accessibility tags to check (e.g., ["wcag2a", "wcag2aa", "wcag21a", "best-practice"]). If not provided, all tags are checked.
  • waitForLoad (optional): Wait strategy - "networkidle" (default) | "load" | "domcontentloaded"
  • timeout (optional): Timeout in seconds (default: 30)

Example:

{
  "url": "https://example.com",
  "tags": ["wcag21aa"],
  "timeout": 45
}

Output: Structured JSON with summary, prioritized violations, WCAG compliance breakdown, quick fix suggestions, and conversational explanation.

audit_multiple_urls - Batch Audit

Test multiple URLs efficiently with progress updates.

Inputs:

  • urls (required): Array of URLs or comma-separated string
  • domain (optional): Base domain
  • tags (optional): Array of accessibility tags
  • parallel (optional): Number of parallel tests (default: 1)
  • continueOnError (optional): Continue if one fails (default: true)

Example:

{
  "urls": ["/home", "/about", "/contact"],
  "domain": "https://example.com",
  "tags": ["wcag2aa"],
  "parallel": 2
}

Output: Per-URL results, aggregated summary, and progress updates (streaming).

audit_site - Smart Site Audit

Intelligent site-wide audit with prioritization.

Inputs:

  • domain (required): Base domain
  • tags (optional): Array of accessibility tags. Applied to all pages.
  • strategy (optional): "critical" | "comprehensive" | "custom" (default: "comprehensive")
  • maxPages (optional): Maximum pages to test (default: 50)
  • priorityPaths (optional): Array of high-priority paths to test first

Example:

{
  "domain": "https://example.com",
  "strategy": "critical",
  "priorityPaths": ["/", "/login", "/checkout"],
  "tags": ["wcag21aa"],
  "maxPages": 20
}

Output: Prioritized results (critical pages first), site-wide score, and trend analysis if previous audits exist.

Tier 2: Session Management

create_session - Authenticated Session

Create a reusable authenticated session for testing protected pages.

Inputs:

  • domain (required): Base domain
  • username (required): Login username
  • password (required): Login password
  • loginUrl (optional): Custom login URL (default: {domain}/login)
  • loginSelectors (optional): Custom selectors for login form:
  • usernameSelector (default: "input[type='email'], input[name='username'], input[id='username']")
  • passwordSelector (default: "input[type='password']")
  • submitSelector (default: "button[type='submit'], input[type='submit']")
  • sessionId (optional): Custom session identifier (auto-generated if not provided)

Example:

{
  "domain": "https://app.example.com",
  "username": "user@example.com",
  "password": "password123",
  "loginUrl": "https://app.example.com/auth/login"
}

Output:

  • sessionId: Reusable session identifier
  • expiresAt: Session expiration time (ISO 8601)
  • testUrl: Test URL to verify session

Differentiator: Only MCP with reusable session management for authenticated pages.

audit_with_session - Authenticated Audit

Run an audit using an existing authenticated session.

Inputs:

  • sessionId (required): Session from create_session
  • url (required): URL to test (can be relative)
  • domain (optional): Base domain
  • tags (optional): Array of accessibility tags
  • waitForLoad (optional): Wait strategy (default: "networkidle")
  • timeout (optional): Timeout in seconds (default: 30)

Example:

{
  "sessionId": "session-abc123",
  "url": "/dashboard",
  "domain": "https://app.example.com",
  "tags": ["wcag21aa"]
}

Output: Same as audit_url but for authenticated pages.

Tier 3: Analysis & Reporting

get_accessibility_score - Calculate Score

Calculate accessibility score (0-100) with detailed breakdowns.

Inputs:

  • results (required): Audit result object or URL string
  • weights (optional): Custom weights for different issue types:
  • errors (default: 10)
  • contrast (default: 8)
  • alerts (default: 5)
  • features (default: 3)
  • structural (default: 6)

Example:

{
  "results": "https://example.com",
  "weights": {
    "errors": 15,
    "contrast": 10
  }
}

Output:

  • Overall score (0-100)
  • Breakdown by category (contrast, navigation, forms, etc.)
  • WCAG level compliance (A, AA, AAA)
  • Trend if historical data available
prioritize_issues - Smart Prioritization

Intelligently prioritize issues, identifying quick wins and critical blockers.

Inputs:

  • results (required): Audit result object
  • criteria (optional): "impact" | "wcag" | "fixability" | "user-impact" (default: "impact")
  • limit (optional): Top N issues to return (default: 10)

Example:

{
  "results": { /* audit result object */ },
  "criteria": "fixability",
  "limit": 5
}

Output:

  • Prioritized list with reasoning
  • Quick wins (easy fixes with high impact)
  • Critical blockers
explain_issue - Educational Tool

Explain what an accessibility issue means in plain language.

Inputs:

  • ruleId (required): Accessibility rule ID (e.g., "alt_missing", "contrast", "label_missing")
  • context (optional): Additional context about the issue (HTML element, page URL, etc.)

Example:

{
  "ruleId": "alt_missing",
  "context": "Image on homepage hero section"
}

Output:

  • Plain language explanation
  • Why it matters (user impact)
  • How to fix (with code examples)
  • WCAG reference
  • Common mistakes

Differentiator: Educational focus - helps users learn accessibility.

get_quick_fixes - Actionable Fixes

Get specific fix suggestions with before/after code examples.

Inputs:

  • results (required): Audit result object or URL string
  • format (optional): "markdown" | "html" | "json" (default: "json")
  • includeCode (optional): Include code examples (default: true)

Example:

{
  "results": "https://example.com",
  "format": "markdown",
  "includeCode": true
}

Output:

  • List of fixes with:
  • Current code (if available)
  • Fixed code
  • Explanation
  • Impact estimate

Differentiator: Code-level fixes, not just descriptions.

generate_compliance_report - Compliance Documentation

Generate compliance reports in various formats.

Inputs:

  • results (required): Audit result object
  • format (optional): "VPAT" | "WCAG" | "ADA" | "Section508" (default: "WCAG")
  • level (optional): "A" | "AA" | "AAA" (default: "AA")
  • includeRemediation (optional): Include fix suggestions (default: true)

Example:

{
  "results": { /* audit result object */ },
  "format": "VPAT",
  "level": "AA",
  "includeRemediation": true
}

Output:

  • Formatted compliance report
  • WCAG mapping
  • Remediation plan
  • Executive summary
get_wcag_compliance - WCAG Status

Check WCAG compliance status with per-criterion breakdown.

Inputs:

  • results (required): Audit result object or URL string
  • level (optional): "A" | "AA" | "AAA" (default: "AA")

Example:

{
  "results": "https://example.com",
  "level": "AA"
}

Output:

  • Compliance status (pass/fail/partial)
  • Per-criterion breakdown
  • Missing requirements
  • Compliance percentage

Tier 4: Comparison & Tracking

compare_accessibility - Before/After Comparison

Compare two audits to track improvements.

Inputs:

  • before (required): Previous audit result or URL
  • after (required): Current audit result or URL
  • format (optional): "summary" | "detailed" | "diff" (default: "summary")

Example:

{
  "before": "https://example.com/v1",
  "after": "https://example.com/v2",
  "format": "detailed"
}

Output:

  • Issues fixed
  • Issues introduced
  • Score improvement
  • Remaining issues
  • Visual diff (if applicable)
track_accessibility - Historical Tracking

Track accessibility over time with trend analysis.

Inputs:

  • url (required): URL to track
  • timeframe (optional): "7d" | "30d" | "90d" | "all" (default: "30d")
  • metric (optional): "score" | "issues" | "wcag-compliance" (default: "score")

Example:

{
  "url": "https://example.com",
  "timeframe": "90d",
  "metric": "score"
}

Output:

  • Historical data
  • Trend visualization (text-based)
  • Predictions
  • Recommendations

Tier 5: Export & Data Management

export_to_csv - Export to CSV

Export audit results to CSV format for spreadsheet analysis, including metadata and violation rows.

Inputs:

  • results (required): Audit result object or URL string
  • includeMetadata (optional): Include test information and environment data (default: true)
  • includeViolations (optional): Inclu

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.