Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Authorization not required, issuer https://mcp.webability.io
Changed the definition of "verify_fix"
⟨95 unchanged words⟩ , never a pass — verification fails closed.Ifverified: true is only returned when the selector matched at least one element AND the criterion is one the DOM engines check; if the selector matches no element,the result is verified: false with reason "not-found" ("selector matched no elements"), a criterion outside the coverage set returns reason "not-verifiable" ("not checked by any WebAbility tool"); a finding in scope that only the AI judge can settle, when the judge did not run or gave no verdict, also returns "not-verifiable", and shadow-DOM (>>>) / iframe selectors return "unsupported-selector" — pass the element's current selector, or ⟨83 unchanged words⟩
Changed the definition of "add_site", "scan_page", "start_audit" and 2 more
{"destructiveHint":false,"idempotentHint":false,"openWorldHint":falsetrue,"readOnlyHint":false,"title":"Add a ⟨4 unchanged words⟩
⟨17 unchanged words⟩ Returns `issues` (violations the scanner stands behind;uncertainfindings the engines cannot decide arejudgedsettled by the AI judge — a violation with a fix,
Changed the definition of "flow_scan"
Scan a multi-page user journey. Walks startUrl plus therequired`autoNavigate` URLs sequentially (deterministic — one page fully ⟨64 unchanged words⟩ for journeys (login → checkout etc).ForWithouta`autoNavigate`singleitpagescans only startUrl,useexactly like scan_page. NOTE: on this HOSTED server, localhost ⟨57 unchanged words⟩
Authorization not required, issuer https://mcp.webability.io
Authorization not required, issuer https://mcp.webability.io
Added "add_site", "create_upgrade_link", "get_install_snippet" and 1 more; changed the definition of "check_aria", "diff_scan", "flow_scan" and 3 more (13 tools before, 17 now)
⟨40 unchanged words⟩ required parents/children, aria-hidden-focus, accessible names). Returns`violations` (high-confidence) and `incomplete` (needs human review, e.g. dangling ARIA references — do NOT auto-fix).`violations`. A selector that matches nothing, or a ⟨97 unchanged words⟩
⟨90 unchanged words⟩ `new[]` before calling it a regression.Needs-review findings are diffed separately (`incompleteResolved` / `incompleteNew`) and never counted as fixed.Typical loop: scan_page → edit → diff_scan(baselineId=<that
Certificate recorded, valid to 2026-12-05
Authorization not required, issuer https://mcp.webability.io
Unknown → Live
First tool surface recorded: 13 tools (server version 1.7.0)
https://mcp.webability.io/mcp (mcp_streamable_http) — from mcp_registry
Showing the latest 12 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨98 unchanged words⟩ on code, use scan_page + verify_fix instead.Free for everyone; needsNeeds a free WebAbility account (sign in by ⟨61 unchanged words⟩
⟨6 unchanged words⟩ an accessibility fix and confirm the violation isgone — closes the loop that find-only tools leave open.gone. After you edit the code and serve it ⟨183 unchanged words⟩
⟨47 unchanged words⟩ Complements scan_page — run both for full coverage.Free for everyone; signSign in with a free WebAbility account for vision ⟨81 unchanged words⟩
⟨33 unchanged words⟩ pages, each carrying the same fix payload/ confidence / review flagsas scan_page. Every requested URL gets an explicit ⟨110 unchanged words⟩
⟨34 unchanged words⟩ Fragments are auto-wrapped into a document. Returns scan_page'sthree-tiershape (issues/ incomplete/ summary) with `fix.op` + `fixability` on ⟨45 unchanged words⟩
⟨11 unchanged words⟩ URL — deployed sites, localhost, staging. Returnsthe three-tier shape:`issues` (high-confidenceviolationssafe to fix),the`incomplete`scanner(needsstandshumanbehind;reviewuncertain—findingsgradientarebackgrounds,judgedmarketingorimagerydropped,axe-incomplete results,neverframer-motionlistedpre-animationforstatesreview),and a `summary`.Treat `incomplete` as questions, never auto-fix them.On React ≤18 / Vue dev builds each ⟨125 unchanged words⟩
⟨53 unchanged words⟩ true|false (DOM engines only — visual_audit findingsand needs-review itemsare out of scope). Pass the WCAG ⟨147 unchanged words⟩
Add a site to the account — Add a website to the signed-in WebAbility account. The site gets the full widget for its first 30 days and a first scan. Returns the site id and plan tier. Next: put the get_install_snippet tag on the site, and use create_upgrade_link to get a payment link for the WebAbility Pro plan. Needs a free WebAbility account (an AI agent can sign itself up with "Sign in with AgentID").
Get a WebAbility Pro payment link — Get a Stripe Checkout link that puts one site on the WebAbility Pro plan (the widget subscription). Give the link to the human who pays (your owner). When they pay, the plan activates on that site automatically; check with list_sites. You never handle card details. The site must be on the account (add_site first). Needs a free WebAbility account.
Get the widget install tag — Get the one-line script tag that installs the WebAbility accessibility widget. Put it in the <head> or before </body> of every page of a site added with add_site. The widget finds the site by its domain, so the same tag works on every site. No account needed.
List the account sites and plans — List the sites on the signed-in WebAbility account with each site id, plan tier and the date the current plan ends. Use it to check that a payment activated WebAbility Pro on a site. Needs a free WebAbility account.