a11y-toolkit: OpenACR YAML report (GSA)
a11y_generate_openacrGenerate a machine-readable OpenACR accessibility conformance report in YAML from an evidence pack or audit reports, with WCAG 2.2 A/AA criteria and notes ready for qualified human review.
Instructions
Generates an OpenACR (the GSA open standard, VPAT-derived) accessibility conformance report in machine-readable YAML from an a11y_evidence pack (or raw audit reports): the full 55-criterion WCAG 2.2 A/AA matrix as chapters with one web component per criterion, adherence levels starting at not-evaluated (automated fails force does-not-support; review-level signals stay not-evaluated with the evidence in notes) and notes auto-filled from the pack (status, measured values, remaining human effort, sha256). Same honesty rule as a11y_generate_vpat: the machine fills notes, a qualified human sets levels via overrides (supports, partially_supports, …; hyphenated OpenACR forms accepted). OpenACR is what US federal procurement and GSA buyers parse — emit it from the same pack as the human-readable VPAT. — The machine-readable (GSA OpenACR YAML) sibling of a11y_generate_vpat — emit both from the same pack: humans read the VPAT, procurement systems parse the OpenACR. Returns {yaml, summary {level: count}, levels {code: level}, pack_sha256, format, draft} — the OpenACR YAML draft; writes a file only when output_path is given. Run after the audits you trust; validate and render in the GSA OpenACR editor (gsa.github.io/openacr-editor) — a qualified human must set the final adherence levels before publishing.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"product": "<product>"
},
"name": "a11y_generate_openacr"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Document language (default en) | |
| pack | No | a11y_evidence output (evidence pack); alternative to reports | |
| notes | No | Additional notes to include | |
| scope | No | a11y_scope output: human-confirmed exclusions become not-applicable with their reason (machine proposals never); overrides still win | |
| author | No | {"name":…, "company":…, "email":…, "website":…} — the ACR author block | |
| contact | No | Contact email (author.email fallback) | |
| methods | No | Evaluation methods used (default: honest automated-screening note) | |
| product | Yes | Product name as it must appear in the OpenACR | |
| reports | No | Audit report objects to bundle (when pack is not given, the pack is built here first) | |
| overrides | No | Criterion → adherence level set by a qualified human: {"1.1.1": "supports", "1.2.2": "not_applicable", …} (hyphenated forms accepted) | |
| output_path | No | save the OpenACR YAML here (optional) | |
| report_date | No | ACR report date ISO (default: today) | |
| product_version | No | Product version | |
| product_description | No | Product description paragraph |