Excessibility.MCP.Tools.CheckWork (Excessibility v0.14.0)

View Source

Composite MCP tool that runs tests, accessibility checks, and optional performance analysis in one call.

Designed to be called automatically by Claude after modifying code. Runs mix test, then mix excessibility, and optionally mix excessibility.debug for performance analysis.

Summary

Functions

Builds a human-readable summary from an a11y result and optional perf result.

Classifies a list of violations as :clean, :minor, or :critical.

Extracts a violations list from an a11y result, handling both structured and raw output formats.

Functions

build_summary(a11y_result, perf_result)

Builds a human-readable summary from an a11y result and optional perf result.

classify_violations(violations)

Classifies a list of violations as :clean, :minor, or :critical.

Critical impacts are "critical" and "serious". If any violation has a critical impact, returns :critical. If there are only minor/moderate violations, returns :minor. If there are no violations, returns :clean.

extract_violations(a11y_result)

Extracts a violations list from an a11y result, handling both structured and raw output formats.

  • If the result has a "violations" key, uses it directly.
  • If it only has "output" (raw text), returns [] for success or a synthetic violation with "unknown" impact for non-zero exits.