Accessibility Scanner MCP logo

Accessibility Scanner MCP

Scan any URL for WCAG accessibility issues (axe-core) and get per-element fixes for an AI agent.

Install Accessibility Scanner MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "accessibility-scanner-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "accessibility-scanner-mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Automated check passed— started and listed 1 tools correctly (22d ago).

Overview

Tools1

What Accessibility Scanner MCP lets your agent do. Expand a tool for its parameters.

Verified live~173 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 3d ago

Recent health check succeeded.

10/12 checks healthy over the last 91d

What it can do

From the 1 tool this server returned when we ran it.

Read-only tools · 1
Network at startup3 connections
Files written at startupNone
Install scriptsNone
npm provenanceNot published
Package age116 days
Maintainers1

Observed 2026-10-18 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 6d ago via OSV.dev · accessibility-scanner-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads778Package downloads in the last 30 days.
Last commit1mo agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed1Callable tools this server registers over MCP.
Directory activity1 viewsConfig copies, upvotes, and views on AllMCPs.

From the project README

accessibility-scanner-mcp

An MCP server that lets an AI agent scan a web page for WCAG accessibility issues and get back findings it can act on. The agent calls one tool with a URL; it gets every violation grouped by severity, each with the exact element selector, the offending HTML, the specific failure, the WCAG success criterion, and a fix-guide link — plus the items that still need human review.

It runs the real axe-core engine in your local Chrome (via playwright-core), so nothing about the pages you scan leaves your machine. It scrolls the page first so lazy-loaded content is actually checked rather than silently skipped, and it resolves color contrast over CSS gradients, which most tools leave as "needs review."

Upgrading from 0.1.x? 0.2.0 sees more of each page and returns more findings for the same URL. See CHANGELOG.md.

Part of accessibilityscanner.app.

Requirements

  • Node.js 18+
  • A Chromium-based browser: Chrome, Chromium or Edge, found automatically in that order. Set CHROME_PATH to point at a specific binary if you'd rather choose. A browser already installed by Playwright is used as a last resort; nothing is ever downloaded for you.

Or no browser at all

Set SCANNER_API_URL and the scan runs on accessibilityscanner.app instead of locally:

config.json
{ "env": { "SCANNER_API_URL": "https://accessibilityscanner.app" } }

No account or key needed — it uses the same public endpoints the website's own form uses. Useful in CI, in a container, or anywhere you can't install a browser. Hosted scans also carry suggested fix colours for contrast failures, which the local scanner doesn't compute yet.

⚠️ In this mode the URL you scan is sent to our server. The local path sends nothing anywhere, and stays the default — hosted mode is opt-in via that environment variable only.

Install

Add it to your MCP client's config. No global install needed — npx fetches it on first run.

Claude Desktop (claude_desktop_config.json), Cursor, Claude Code, or any MCP client:

config.json
{
  "mcpServers": {
    "accessibility-scanner": {
      "command": "npx",
      "args": ["-y", "accessibility-scanner-mcp"]
    }
  }
}

If Chrome is not auto-detected, add an env block:

config.json
{
  "mcpServers": {
    "accessibility-scanner": {
      "command": "npx",
      "args": ["-y", "accessibility-scanner-mcp"],
      "env": { "CHROME_PATH": "/usr/bin/google-chrome" }
    }
  }
}

The tool

scan_accessibility

Input
url (string, required)The http(s) URL to scan.

Returns a report grouped by severity. For each rule: the WCAG criterion, a fix-guide link, and per element the selector, HTML, and exact failure. Example flow with an agent:

You: Audit https://example.com for accessibility and fix what you can. Agent: (calls scan_accessibility) → reads the findings → edits the code → re-scans.

Honest about limits

Automated testing covers the machine-checkable subset of WCAG (most of the issues on a typical page, but not all of it). Items that need human judgement are returned under "Needs manual review." It never claims a page is "compliant."

License

MIT

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Accessibility Scanner MCP

accessibility-scanner-mcp is an MCP server that lets an AI agent scan an HTTP(S) URL for WCAG accessibility issues using the axe-core engine in a local Chrome browser. It returns severity-grouped violations with selectors, offending HTML, failure details, WCAG criteria, fix-guide links, and items needing manual review.

The server provides the scan_accessibility tool, which accepts one required url string. It returns a severity-grouped report containing WCAG criteria, fix-guide links, exact element selectors, offending HTML, specific failures, and findings that require manual review.

By default, accessibility-scanner-mcp scans pages in your local Chrome, so page data does not leave your machine. If you set SCANNER_API_URL, scans run on accessibilityscanner.app instead; in that opt-in hosted mode, the scanned URL is sent to the service.

Local scans require Node.js 18+ and a Chromium-based browser such as Chrome, Chromium, or Edge. The server detects browsers automatically, or you can set CHROME_PATH to a specific binary. A browser installed by Playwright is used only as a last resort and is not downloaded automatically.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewAccessibility Scanner MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/accessibility-scanner-mcp?style=directory)](https://allmcps.com/mcp/accessibility-scanner-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/accessibility-scanner-mcp"><img src="https://allmcps.com/api/badge/accessibility-scanner-mcp?style=directory" alt="Accessibility Scanner MCP on AllMCPs" /></a>