a11y-mcp icon

a11y-mcp

by kongphopleo@gmail.com · Accessibility
Manifest V3 Free
View in Chrome Web Store Data as of 15 Oct 2026

Voice-operable web forms with typed agent tools

Users
3
+3 in 30 days
Rating
0.0 / 5
unchanged in 30 days
Ratings
0
0 in 30 days
Store rank
#293K
#240K among extensions
Version
0.1.1
updated 5 Sep 2026

Users

monthly, 1 months
023Sep 2026Oct 2026Oct 2026
Latest, 15 Oct 2026: 3 usersMove the mouse over the chart for any month

Ratings count

monthly, 1 months
001Sep 2026Oct 2026Oct 2026
Latest, 15 Oct 2026: 0 ratingsMove the mouse over the chart for any month

The Chrome Web Store rounds user counts down to the leading digit, so the user line moves in steps. The ratings count is exact and is the better signal of real adoption.

About a11y-mcp

a11y-mcp - Speak Thai. Fill any English web form. Never touch the keyboard. a11y-mcp turns any semantically sound web form into typed tools an AI agent can call - then lets a Thai speaker read, fill, correct, and submit that form entirely by voice, with every confirmation and error spoken back in Thai before anything is sent. THE PROBLEM Two failures, stacked: 1. Agents "use" the web by guessing pixels. They guess which box is which, guess wrong, and when a page rejects a value they just see a red border - with no idea why. 2. Accessibility tooling is built for English. A Thai person facing an English-only visa, university, or airline form is stuck. These forms are well-marked-up and completely unusable if you don't read English - and nobody translates them. Our lead user is a Thai person in front of an English form. Served for free: blind, low-vision, motor-impaired, and elderly users - anyone who can't reliably use a mouse and keyboard. WHAT IT DOES The page exposes typed WebMCP tools (document.modelContext). A GPT-4o-mini brain listens to Thai speech, calls those tools, and the page answers with structured, machine-readable feedback instead of a red border. The agent self-corrects, asks in Thai when unsure, and never submits without a human clicking confirm. HOW IT USES WEBMCP (THE CORE) Four deliberately-scoped tools: - describe_form() - full field structure, types, constraints. - read_form() - the fields to read aloud to someone who can't see the page. - fill_form(values, confirmed?) - validates each value, returns a filled / failed / needs_human split. "failed" is reactive (page rejected a value, so the agent retries); "needs_human" is preemptive (parser was unsure, so nothing is filled and the agent must ask). "confirmed" is the only way a low-confidence field gets filled - after explicit human approval. - submit_form() - a separate, human-gated tool that opens a confirmation overlay and never fires alone. Error text comes from stable Thai templates keyed by an error enum - never model prose, so the same failure sounds identical every time and works with no model call. WHAT MAKES IT NOVEL - Reads the form aloud in Thai - closes the loop: perceive, fill, confirm - not just write. - Preserve-or-translate per field - names stay in Latin script, free-text Thai becomes English ("maa tiao" / vacation), and select values are matched ("Thai" to TH). - Self-corrects from typed errors - the exact argument for WebMCP, shown live. - Asks in Thai and re-opens the mic - a real spoken clarification dialogue. - Honest confidence badge - a badly-marked-up site isn't a failure; the tool says so instead of guessing. HOW WE BUILT IT TypeScript with Vite and the crxjs plugin, Zod for the schema-once tool boundary, an MV3 extension with a MAIN-world content script (document.modelContext plus the brain) and an ISOLATED-world content script (Paxa plus the mic) bridged over postMessage. GPT-4o-mini turns Thai speech into tool calls; Paxa Labs provides Thai text-to-speech (voice "yoyo") and translation; the Web Speech API handles voice input. CHALLENGES The WebMCP spec is unstable - the API had moved from navigator.modelContext to document.modelContext and lost unregisterTool. We instrumented the live Chrome 152 surface to discover the real contract (async registerTool, JSON-string schemas, duplicate-name errors) and rebuilt against it. WHAT'S NEXT Works on sites with reasonable semantics - the confidence badge tells the truth when they don't. Cross-page memory and custom non-input widgets are deliberately out of scope.

Growth

WindowUsersChangeRatingsRating
7 days+1+50.0%00.00
30 days+3–00.00

Version history

1 versions recorded
0.1.15 Sep 2026

Details

Category
Accessibility
First seen
5 Sep 2026
Size
42 KB
Languages
th
Pricing
Free
Privacy policy
claude.ai
Extension ID
fekmgocmclpncfdeaihnplkjblmeeimk

Permissions and risk

Moderate riskimpact 2, likelihood 3
Site access
<all_urls>
Can read and change data on every website you visit.

Alternatives to a11y-mcp

Extensions that rank for the same store searches or share the Accessibility category, ordered by users