Skip to main content
Glama

a11y-toolkit MCP

CI License: MIT Python 3.9+ MCP

Eine WCAG-2.2-Barrierefreiheits-Suite als MCP-Server (Model Context Protocol) für KI-Agenten – plus ein einheitliches CLI. Null Abhängigkeiten im Kern; die gesamte Mathematik ist lokal und exakt (die offizielle Formel für relative Leuchtdichte).

Der komplette Zyklus Audit → Beheben → Dokumentieren → Regressionsüberwachung in einem Toolkit:

  1. Audit: Express-WCAG-Audit einer beliebigen URL (nach Schweregrad sortierte Befunde)

  2. Beheben: exakte Kontrastprüfungen – Farbpaare und Text über Bildern (Pixel-genaue Abtastung des tatsächlichen Hintergrunds) – mit Vorschlägen für die nächstgelegene bestandene Farbe

  3. Dokumentieren: rechtliche Barrierefreiheitserklärungen (EU), generiert als barrierefreies HTML

  4. Überwachen: Snapshots + Diffs zwischen Builds, um Barrierefreiheits-Regressionen vor der Produktion zu erkennen

Mehrsprachig es/en in allen Tools (EN-Erklärungen verwenden die Formulierungen der Richtlinie (EU) 2016/2102 und der Richtlinie (EU) 2019/882 – European Accessibility Act –, EU-weit nützlich).

MCP-Tools (9)

Tool

Was es tut

a11y_audit_url

Express-WCAG-Audit einer URL: Bilder ohne alt (1.1.1), Bedienelemente ohne zugängliche Namen (4.1.2), Formularfelder ohne Beschriftungen (3.3.2), fehlendes lang/title (3.1.1, 2.4.2), übersprungene Überschriftsebenen (1.3.1), blockierter Zoom (1.4.4), positiver tabindex (2.4.3), iframes ohne Titel. Nach Schweregrad sortiert. Filter, kein Urteil – die Automatisierung deckt ~1/3 der WCAG ab.

a11y_contrast_pair

Exaktes Kontrastverhältnis + Urteile pro Kriterium: 1.4.3 (AA), 1.4.6 (AAA), 1.4.11 (Nicht-Text). Wenn AA nicht bestanden wird, wird die nächstgelegene bestandene Farbe vorgeschlagen.

a11y_contrast_image

Text über Bildern: Pixel-genaue Abtastung des tatsächlichen Hintergrunds hinter dem Textfeld → schlechtestes/Median/p95-Verhältnis, % der Fläche, die AA besteht, und zona_peor (automatische Erkennung feindlicher Zonen auf einem 3×3-Raster). Was reine Paar-Prüfer nicht können.

a11y_suggest_color

Die Farbe, die Ihrer am nächsten liegt und ein Zielverhältnis erreicht (standardmäßig 4,5).

a11y_generate_declaration

Rechtliche Barrierefreiheitserklärung in HTML: RD 1112/2018 Art. 10 (Spanien, öffentlicher Sektor) oder Formulierung der Ley 11/2023 / des European Accessibility Act. es/en. Das generierte Dokument ist selbst barrierefrei.

a11y_snapshot

Barrierefreiheits-Snapshot einer URL: interaktive Elemente (Tag, Rolle, zugänglicher Name, href) + tatsächliche Tab-Fokus-Reihenfolge. Erfordert Playwright lokal.

a11y_diff

Vergleicht zwei Snapshots: hinzugefügte/entfernte/umbenannte interaktive Elemente und Änderungen der Fokus-Reihenfolge. Akzeptiert Inline-JSON oder Dateipfade.

a11y_diff_urls

Snapshot von zwei URLs und Diff in einem Aufruf (Staging vs. Produktion).

a11y_aria_live_snippet

Injizierbarer Monitor, der jede Ankündigung dynamischer Regionen protokolliert (aria-live, role=alert/status): Zeit, Höflichkeit, Rolle, Text – was ein Screenreader sagen würde, sichtbar auf dem Bildschirm.

Related MCP server: Accessibility MCP Server

Als MCP installieren

{
  "mcpServers": {
    "a11y-toolkit": {
      "command": "python3",
      "args": ["/path/to/a11y-toolkit/server.py"]
    }
  }
}

Oder mit uv, ohne Klonen:

{
  "mcpServers": {
    "a11y-toolkit": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/kinti/a11y-toolkit", "a11y-toolkit-mcp"]
    }
  }
}

Fügen Sie "timeoutMs": 60000 hinzu, wenn Sie a11y_snapshot verwenden möchten (Browserstart).

Einheitliches CLI – ein Befehl für alles

a11y pair "#1f2328" "#fbfaf7"                     # contrast, per-criterion verdicts
a11y image hero.jpg --text "#ffffff" --region 120,40,420,90
a11y audit --url https://example.com              # express WCAG audit
a11y declaration --entidad "Acme" --url https://acme.example \
       --estado parcial --marco eaa --lang en --output decl.html
a11y snapshot https://mysite --out before.json    # before deploy (needs Playwright)
a11y diff before.json after.json                  # after deploy

Aus dem Repository ausführen: python3 a11y.py <subcommand>.

Bildmodus interpretieren

  • ratio_peor (schlechtestes) – die feindlichste Stelle für Ihre Textfarbe.

  • area_pasa_aa_texto_normal_4_5 – % der sicheren Fläche. Wenn < 100 % dort, wo der Text sitzt: Scrim/Overlay, Zuschneiden oder Text verschieben.

  • zona_peor – die 3×3-Rasterzelle, die am stärksten durchfällt, mit exakten Koordinaten.

Sicherheit & Umfang

Ein lokales Tool: läuft auf Ihrem Rechner als Ihr Benutzer. Die Argumente path (Bild) und output_path (Erklärung) lesen/schreiben lokale Pfade – verwenden Sie es in MCP-Clients, denen Sie vertrauen. Es wird nichts über das Netzwerk gesendet (außer dem Abrufen der URL, die Sie explizit prüfen).

Technische Hinweise

  • Bilddekodierung: Pillow falls verfügbar, sonst sips (macOS); PPM immer (deshalb benötigt CI keine Abhängigkeiten).

  • Der aria-live-Monitor trägt eine dokumentierte Design-Lektion: Sein Panel ist bewusst KEINE Live-Region und schließt sich selbst vom Observer aus – ein role="log"-Panel würde seinen eigenen Selektor treffen und eine unendliche Selbstbeobachtungsschleife erzeugen. Wir wissen es, weil es uns passiert ist.

  • Getestet gegen echte Produktionsseiten (die des Autors, die ihr eigenes Audit bestehen muss).

  • Web-Versionen für Menschen (gleiche Mathematik): jquin.net/lab – Kontrast (Paare + Bild), Erklärungsgenerator, aria-live-Monitor, Build-Diff.


Español

Suite de accesibilidad WCAG 2.2 como servidor MCP + CLI unificado. Cero dependencias en el núcleo (Pillow opcional; sips en macOS; PPM siempre). Todo el ciclo en un toolkit: auditar (a11y_audit_url) → corregir (contraste de pares y texto sobre imagen con muestreo píxel a píxel y detección de zona hostil; sugerencia de color accesible) → documentar (declaración legal RD 1112/2018 art. 10 o Ley 11/2023/EAA, en HTML accesible) → vigilar (snapshots y diff entre builds: añadidos/eliminados/renombrados y orden de foco).

9 herramientas MCP (ver tabla superior) · multilenguaje es/en (la declaración EN usa la terminología de las Directivas (UE) 2016/2102 y 2019/882) · CLI unificado a11y con subcomandos pair, image, audit, declaration, snapshot, diff.

{ "mcpServers": { "a11y-toolkit": {
    "command": "python3", "args": ["/ruta/al/repo/server.py"] } } }

Herramienta local: los argumentos path y output_path leen/escriben rutas locales; nada sale a la red salvo la URL que audites explícitamente. El monitor aria-live documenta su lección de diseño: el panel NO es una región viva y se autoexcluye del observador (un role="log" casaría con su propio selector y crearía un bucle infinito de auto-observación — lo sabemos porque nos pasó). Versiones web para humanos: jquin.net/lab.

Autor / Author

Jesús Quintana Fernández (jquin.net) – SEO/GEO-Berater und Praktiker für Web-Barrierefreiheit seit 2003. MIT © 2026.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Scan URLs for WCAG 2.1 violations, generate AI fixes, and produce VPAT 2.5 compliance reports.

  • Screenshot, diff, audit and sitemap-capture any web page — 5 MCP tools for AI agents.

  • SEO research, audits, backlinks, GSC, and content workflow tools for AI agents.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kinti/a11y-toolkit'

If you have feedback or need assistance with the MCP directory API, please join our Discord server