Skip to main content
Glama

a11y-toolkit: VPAT 2.5 report (WCAG edition)

a11y_generate_vpat
DestructiveIdempotent

Generate a VPAT 2.5 WCAG accessibility conformance report in HTML from audit evidence, with auto-filled remarks and human-set conformance levels.

Instructions

Generates a VPAT 2.5 (WCAG edition) accessibility conformance report in accessible HTML from an a11y_evidence pack (or raw audit reports): the full 55-criterion WCAG 2.2 A/AA table with Remarks auto-filled from the pack (status, measured values, examples, remaining human effort) and every Conformance Level starting at Not Evaluated — automated fails force Does Not Support and a qualified human sets the final level via overrides (supports, partially_supports, does_not_support, not_applicable, not_evaluated). The document is a DRAFT until the signature block, which must reference the pack sha256, is completed. VPAT is the US/ADA counterpart of a11y_generate_declaration (EU/EAA): the machine fills Remarks, the human signs the claim. — The US/ADA counterpart of a11y_generate_declaration; feed it the a11y_evidence pack — levels stay Not Evaluated until a qualified human sets them. Returns {html, summary {level: count}, levels {code: level}, pack_sha256, draft} — the VPAT draft; writes a file only when output_path is given. Run after the audits you trust; a qualified human must set the final levels (overrides) and sign before publishing — the machine fills Remarks, never the claim.

Input Schema

NameRequiredDescriptionDefault
langNoDocument language (default en)
packNoa11y_evidence output (evidence pack); alternative to reports
notesNoAdditional notes to include
contactNoContact information for questions about this VPAT
methodsNoEvaluation methods used (default: honest automated-screening note)
productYesProduct name as it must appear in the VPAT
reportsNoAudit report objects to bundle (when pack is not given, the pack is built here first)
reviewerNo{"name":…, "credential":…, "review_date":…} to prefill the signature block
overridesNoCriterion → conformance level set by a qualified human: {"1.1.1": "supports", "1.2.2": "not_applicable", …}
output_pathNosave the VPAT HTML here (optional)
report_dateNoVPAT report date ISO (default: today)
product_descriptionNoProduct description paragraph

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv5.5.0

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnly=false, destructive=true, idempotent=true, openWorld=false; the description adds substantial context beyond them: levels start at 'Not Evaluated', automated fails force 'Does Not Support', the document is a DRAFT until the signature block (referencing pack sha256) is completed, and a file is written only when output_path is given. This is exactly the behavioral disclosure a mutation tool needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and information-dense, but redundant: the a11y_generate_declaration counterpart relationship is stated twice, and 'the machine fills Remarks, the human signs the claim' plus the 'levels stay Not Evaluated until a qualified human sets them' point are repeated across the main text and the trailing recap.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 12-parameter, nested-object tool with no output schema, the description supplies the return shape ({html, summary, levels, pack_sha256, draft}), the draft/signature workflow, the override semantics, and the file-write condition. An agent has everything needed to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3, but the description adds real semantics: it explains the pack-versus-reports relationship, that the pack is built from reports when absent, the accepted override level vocabulary, and the conditional file-writing behavior of output_path. It adds value over the schema without fully re-documenting every field.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Generates a VPAT 2.5 (WCAG edition) accessibility conformance report in accessible HTML from an a11y_evidence pack'), including the exact artifact (55-criterion WCAG 2.2 A/AA table). It explicitly distinguishes itself from the sibling a11y_generate_declaration by positioning VPAT as the US/ADA counterpart versus the EU/EAA declaration.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear when-to-use context ('Run after the audits you trust'), names the required input source (the a11y_evidence pack, or raw reports), and routes the agent between this tool and a11y_generate_declaration by region/standard. The preconditions (qualified human must set levels and sign) are spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.