mcpField
M
mcp-wcag-accessibility-audit

mcp-wcag-accessibility-audit

Local
github.com/mambalabsdevDeveloper Tools0Updated 1w ago

About mcp-wcag-accessibility-audit

An MCP server that audits websites for automated accessibility issues using axe-core in a real browser. It is intended for teams checking WCAG-related issues and compliance signals, and returns per-domain findings with an accessibility score.

Key features

  1. 01Real-browser axe-core audits
  2. 02Single-domain or batch checks
  3. 03Selectable accessibility standards
  4. 04Optional compliance-page checks
  5. 05Scores and severity-ranked findings

Use cases

  1. 01Checking WCAG issues on a website
  2. 02Reviewing multiple domains for EAA exposure
  3. 03Checking accessibility statements or privacy pages

MCP support

Exposes the `audit_wcag_accessibility` tool to MCP clients. The server starts the Apify actor, waits for completion, and returns dataset rows.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"com-mambabuilt-mcp-wcag-accessibility-audit": {
"command": "npx",
"args": [
"-y",
"@mambalabsdev/mcp-wcag-accessibility-audit"
],
"env": {
"APIFY_TOKEN": "<APIFY_TOKEN>"
}
}
}
}
Run commandnpx -y @mambalabsdev/mcp-wcag-accessibility-audit
Environment variables to set
APIFY_TOKENSecretApify API token from https://console.apify.com/account/integrations

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@mambalabsdev/mcp-wcag-accessibility-audit1.0.0

Tools

1

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
pagesenumNoPages per domain. 1 audits the homepage; 2 to 5 add pages from the sitemap or the homepage navigation, each charged as page-audited. Default 1.1 | 2 | 3 | 4 | 5
domainstringNoOne website domain, for example mambabuilt.com. The homepage is audited. Required unless domains is set.
domainsarrayNoA list of website domains, one row per domain. Used instead of domain when set.
standardenumNoRule set to run. ada runs WCAG 2.1 AA, the level the ADA Title II rule names. en301549 runs the rules axe maps to EN 301 549, the standard the EAA points to. Default wcag21aa.wcag21aa | wcag22aa | wcag2aa | wcag2a | section508 | ada | en301549
viewportenumNodesktop renders at 1280 by 800; mobile at 390 by 844 with touch. Default desktop.desktop | mobile
skipCacheenumNofalse reuses an identical audit from the last 24 hours; true audits fresh. Default false.false | true
max_charge_usdstringNoOptional cost cap in USD, for example 1.50. The run stops before starting a domain that could take its charges past it.
compliance_checksarrayNoOptional presence checks, charged once per domain as compliance-checked when any is set. impressum runs only on German language or .de sites and reports field types, never values.

Details

From the project README

WCAG Accessibility Audit MCP Server

Smithery Glama score MCP Registry npm version npm downloads license mcpservers.org

Wcag Accessibility Audit MCP server

An MCP server for the Mamba Labs WCAG Accessibility Audit actor on Apify. Send a domain or a list. Each domain is rendered in a real browser and audited with axe-core, and you get back one row per domain: the WCAG issues automated checks find by severity, the worst failing rules, a score, European Accessibility Act exposure signals, and optional compliance page checks.

What's Inside

What it does

Audit websites for accessibility with axe-core in a real browser. Give one domain or a list; each domain returns one row with the WCAG issues automated checks find (distinct failing rules by impact, affected element count, top failing rules with help links, sample selectors), a 0 to 100 score, European Accessibility Act exposure signals, and optional presence checks for an accessibility statement, an accessibility overlay widget, a privacy policy, a German Impressum, and the US privacy choice link and GPC file. Blocked, timed out, or unreachable sites return a free row that says why. Automated checks find a subset of WCAG failures and the result is never a conformance claim. A run that does not succeed is returned as an error with its run ID. Read-only on the audited sites; requires an APIFY_TOKEN and consumes Apify credits per audited domain.

All of the work runs on Apify. This package is a thin client that starts the actor run, waits for it, and hands back the dataset rows.

Quick start

You need Node.js 18 or newer and an Apify account with an API token.

Add this to your Claude Desktop config (claude_desktop_config.json), Cursor, or any MCP client:

{
  "mcpServers": {
    "mamba-wcag-accessibility-audit": {
      "command": "npx",
      "args": [
        "-y",
        "@mambalabsdev/mcp-wcag-accessibility-audit"
      ],
      "env": {
        "APIFY_TOKEN": "your-apify-token"
      }
    }
  }
}

Restart the client. The audit_wcag_accessibility tool appears.

Prerequisites

Example prompts

  • "Audit mambabuilt.com and example.de against WCAG 2.2 AA and list the critical issues."
  • "Check these 20 EU shop domains for EAA exposure and whether each links an accessibility statement."
  • "Does this German site have an Impressum, and which required fields does it show?"

Tool

audit_wcag_accessibility. One tool. Example arguments:

{
  "domains": ["mambabuilt.com", "example.de"],
  "standard": "wcag22aa",
  "compliance_checks": ["accessibility_statement", "impressum", "overlay"]
}

Inputs

Every buyer facing input of the actor, unchanged. Omitted inputs take the actor's own defaults.

InputTypeRequiredDescription
domainstringone of the twoOne website domain. The homepage is audited.
domainsarrayone of the twoA list of website domains, one row per domain.
standardstringnowcag21aa (default), wcag22aa, wcag2aa, wcag2a, section508, ada, or en301549.
pagesstringno1 to 5 pages per domain. Default 1.
viewportstringnodesktop (default) or mobile.
compliance_checksarraynoAny of accessibility_statement, overlay, privacy_policy, impressum, us_privacy_links.
skipCachestringnofalse (default) reuses an identical audit from the last 24 hours; true audits fresh.
max_charge_usdstringnoOptional cost cap for the run, in USD.

Pricing

Pay per event on Apify, billed to your Apify account. Prices in USD.

EventFree planBronzeSilverGold
domain-audited, per domain with a rendered audit$0.01$0.0095$0.009$0.0085
page-audited, per page after the homepage$0.002$0.0019$0.0018$0.0017
compliance-checked, per domain with any compliance check$0.003$0.00285$0.0027$0.00255
apify-actor-start, per run start$0.0025$0.0025$0.0025$0.0025

Blocked, timed out, and unreachable domains are never charged.

Your keys

The actor needs no provider key. It reads only the sites you give it and holds no key of its own.

Full actor documentation

apify.com/mambalabs/wcag-accessibility-audit

License

MIT. See LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.