MCP server for wcagc — let Claude or ChatGPT run real axe-core accessibility scans (WCAG, EN 301 549, PDF/UA) through your own account.
claude mcp add wcagc-mcp -- npx -y @wcagc/mcp{
"mcpServers": {
"wcagc-mcp": {
"command": "npx",
"args": ["-y", "@wcagc/mcp"]
}
}
}MCP Servers overview
# wcagc-mcp
[](https://glama.ai/mcp/servers/WCAG-Compliance/wcagc-mcp)
[](https://smithery.ai/servers/wcag-compliance/wcagc-mcp)
An [MCP](https://modelcontextprotocol.io) server that lets an AI assistant (Claude, ChatGPT, or
any MCP-compatible client) run real, deterministic accessibility scans through
[wcagc](https://wcagc.com) — axe-core under the hood, not an LLM guess. Every scan result carries
an explicit coverage disclaimer and never claims "compliant": automated testing finds only a
portion of accessibility barriers, and this tool says so in every response.
This package is a **thin, stateless adapter**. It holds no database, no scan logic, and no
secrets beyond the wcagc API base URL — it translates MCP tool calls into HTTP calls against the
wcagc API and forwards the caller's own bearer. All authentication, entitlements, quotas, and
scan orchestration live in the API; this code is safe to read end to end.
## Two ways to run it
**Local (stdio)** — for Claude Desktop, Cursor, or any MCP client that spawns a local process:
```bash
npx @wcagc/mcp
```
Configure your MCP client with:
```json
{
"mcpServers": {
"wcagc": {
"command": "npx",
"args": ["-y", "@wcagc/mcp"],
"env": {
"WCAGC_MCP_KEY": "<your mcp:scan API key>"
}
}
}
}
```
Mint an `mcp:scan` key from your wcagc account under Settings → API keys — available on every
plan, with a daily quota on Free/Starter and unlimited on Pro/Agency.
**Hosted (Streamable HTTP + managed OAuth)** — what Claude web/desktop/mobile connectors and
ChatGPT use, since neither runs a local process for you. Add this remote MCP connector:
```
https://mcp.wcagc.com/mcp
```
The client discovers `/.well-known/oauth-protected-resource/mcp`, opens the wcagc login/consent
flow, and binds the connection to one Organization. No key copy/paste is required. API-key bearer
authentication remains supported for local stdio and CI.
ChatGPT availability depends on the ChatGPT plan and on whether the client permits action tools;
`scan_url` creates a scan and is not a read-only operation. See
[wcagc.com/integrations/mcp](https://wcagc.com/integrations/mcp).
## Tools
| Tool | Plan | What it does |
|---|---|---|
| `scan_url` | all | Scan any public URL, or a registered site for full tracking (Pro+). |
| `check_pdf` | all | Run a PDF/UA-1 structure check on a public PDF. |
| `get_scan` · `get_findings` | all | Read a scan's status, severity counts, and findings. |
| `list_sites` | Pro+ | List the account's registered sites. |
| `scan_site` | Pro+ | Crawl and scan every reachable page of a registered site. |
| `get_run` · `get_run_findings` | Pro+ | Read a full-site run. |
| `run_journey` | Pro+ | Replay a saved multi-step journey and check each step. |
| `get_trends` | Pro+ | Read a site's violation-count history over time. |
Every scan-producing tool returns the coverage disclaimer in both the text content and the
structured content. There is no score, grade, or conformance verdict — automated testing finds
roughly 30–57% of accessibility issues, and the remainder needs manual review.
## Configuration
| Env var | Used by | Meaning |
|---|---|---|
| `WCAGC_API_BASE_URL` | both | The wcagc API to call. Defaults to `https://api.wcagc.com`; set it only when self-hosting. |
| `WCAGC_MCP_KEY` | stdio | Your `mcp:scan` API key. |
| `PORT` | hosted | Port to listen on (default `8080`). |
| `WCAGC_MCP_ALLOWED_HOSTS` | hosted | Comma-separated Host-header allowlist (DNS-rebinding protection when bound to `0.0.0.0`). |
| `WCAGC_MCP_INTROSPECT_TTL_SECONDS` | hosted | How long a verified bearer is cached before re-checking with the API (default `60`). |
| `WCAGC_OAUTH_ISSUER` | hosted | Expected OAuth issuer. |
| `WCAGC_OAUTH_JWKS_URL` | hosted | Authorization Server public JWKS URL. |
| `WCAGC_MCP_SERVER_URL` | hosted | Canonical RFC 9728 protected-resource URL. |
| `WCAGC_OAUTH_JWKS_TTL_SECONDS` | hosted | JWKS cache TTL; an unknown `kid` triggers an immediate refetch. |
## Development
```bash
npm install
npm run dev # hosted, watch mode
npm run start:stdio # stdio mode
npm run typecheck
npm run verify # node:test against a local fixture API
```
## License
MIT — see [LICENSE](./LICENSE).
What people ask about wcagc-mcp
What is WCAG-Compliance/wcagc-mcp?
+
WCAG-Compliance/wcagc-mcp is mcp servers for the Claude AI ecosystem. MCP server for wcagc — let Claude or ChatGPT run real axe-core accessibility scans (WCAG, EN 301 549, PDF/UA) through your own account. It has 0 GitHub stars and was last updated today.
How do I install wcagc-mcp?
+
You can install wcagc-mcp by cloning the repository (https://github.com/WCAG-Compliance/wcagc-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is WCAG-Compliance/wcagc-mcp safe to use?
+
WCAG-Compliance/wcagc-mcp has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.
Who maintains WCAG-Compliance/wcagc-mcp?
+
WCAG-Compliance/wcagc-mcp is maintained by WCAG-Compliance. The last recorded GitHub activity is from today, with 0 open issues.
Are there alternatives to wcagc-mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy wcagc-mcp to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/wcag-compliance-wcagc-mcp)<a href="https://claudewave.com/repo/wcag-compliance-wcagc-mcp"><img src="https://claudewave.com/api/badge/wcag-compliance-wcagc-mcp" alt="Featured on ClaudeWave: WCAG-Compliance/wcagc-mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!