a11y-toolkit: the audit companion I always wanted, now open source
I have been auditing websites for accessibility since 2003. In twenty years the tools got faster and the failures stayed the same: the same missing alt text, the same keyboard traps, the same forms that swallow your work. When AI agents started writing most of the web, the audit gap stopped being a staffing problem and became an infrastructure one — there is no future where enough humans audit by hand everything agents build.
So I finished building the tool I always wanted sitting next to me on an audit, and released it: a11y-toolkit — an MCP server plus CLI, MIT, zero dependencies at the core, English and Spanish. Your coding agent (Claude, Cursor, Codex…) runs it natively.
What it covers
- Audit: a static pass across 51 of the 55 WCAG 2.2 A/AA criteria, plus a rendered pass in any browser — contrast measured pixel by pixel over the real background, keyboard traps found by actually walking the Tab order and testing Escape, form errors tested by really submitting invalid data.
- Fix: deterministic autofixes for the safe cases; the nearest passing color when contrast fails.
- Document: accessibility statements for the European Accessibility Act and Spain’s RD 1112/2018.
- Watch: snapshot diffs between deploys, an error budget where only new findings block a release, SARIF export so findings appear in your pull requests.
- Hand off: the part most tools skip — an evidence pack with every criterion, measurement and hash, so a qualified human can review and sign what the machine found. A scan is not conformance. The pack is where their work starts, and every criterion carries an effort class (how many minutes of real human review remain).
The forensic example is on this blog: the real WCAG failure on gov.uk that axe doesn’t report — a search button at 3.91:1 that the industry’s default scanner leaves in “incomplete”. The machine found it; I confirmed it with my own eyes before writing it down. That division of labor is the whole idea.
Try it
Without installing anything: the free analyzer at a11y.jquin.net runs the same engine — full report, badge, evidence pack download.
In your agent:
claude mcp add a11y-toolkit -- uvx --from a11y-toolkit a11y-toolkit-mcp
Every report says the same thing automation should always say: it covers about a third of WCAG, it is a filter and not a verdict, and it names exactly where the human begins. If the repo saves you an afternoon, leave it a star — it is how the next auditor finds it.