# evaluate_applicability

REFINE the applicable WCAG criteria for a component beyond the structural floor that get_apg_pattern / get_aria_role return. Gate-first walkthrough — the same engine the website uses — that prunes the question set to only what your component can be affected by. Four steps: (1) pattern|role + level, nothing else → the coarse facet gates ("Any audio or video?"); (2) facets = the keys that apply → the subgates (finer questions) under them; (3) subgates = the ids that apply → the leaf predicates (yes/no on your content); (4) present = the predicate ids that hold → the COMPLETE applicable SC set + a tiered verification checklist. You can also jump straight to step 4 with present if you already know which predicates hold. Then resolve the checklist (audit_html for axe, inspect markup for the agent tier, ask the user for the human tier) and roll it up with evaluate_verification.

Agent View of the PolicyLayer registry record for `evaluate_applicability`. HTML page: https://policylayer.com/tools/a11y-assist-mcp/evaluate-applicability

## Facts

- Tool: `evaluate_applicability`
- Server: A11y Assist (`a11y-assist-mcp`) — https://policylayer.com/tools/a11y-assist-mcp.md
- Install: `npx -y a11y-assist-mcp`
- Homepage: https://www.npmjs.com/package/a11y-assist-mcp
- Risk category: Write (Medium risk)
- Registry record: grade D, identity unverified
- Server rate-limited: no
- Parameters: 6
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `role` | string | no | ARIA role of a primitive, e.g. textbox. Provide this OR pattern. |
| `level` | string | no | Conformance level (cumulative). |
| `facets` | array | no | Facet keys your component involves (from the facet-gates step), e.g. ["color-contrast","text-language"]. Returns the subgate questions under only those facets. |
| `pattern` | string | no | APG pattern name, e.g. accordion. Provide this OR role. |
| `present` | array | no | Applicability predicate ids that hold for YOUR specific component (its content / context). Provide on the final call to get the complete applicable SC set + che |
| `subgates` | array | no | Subgate ids your component involves (from the subgates step), e.g. ["color-contrast\|0"]. Returns the leaf predicate questions under only those subgates. |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "evaluate_applicability",
    "arguments": {}
  }
}
```

## Why evaluate_applicability is rated Medium

An AI agent can call evaluate_applicability faster than any human can review: one bad instruction and it creates or modifies resources in A11y Assist by the hundred, each call as confident as the last.

## Use case

AI agents use evaluate_applicability to create or update resources in A11y Assist, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your A11y Assist environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches A11y Assist:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "evaluate_applicability": {
      "limits": [
        {
          "counter": "evaluate_applicability_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on A11y Assist (11)

- `audit_html` — Execute — https://policylayer.com/tools/a11y-assist-mcp/audit-html.md
- `audit_url` — Execute — https://policylayer.com/tools/a11y-assist-mcp/audit-url.md
- `evaluate_verification` — Read — https://policylayer.com/tools/a11y-assist-mcp/evaluate-verification.md
- `get_act_rule` — Read — https://policylayer.com/tools/a11y-assist-mcp/get-act-rule.md
- `get_apg_pattern` — Read — https://policylayer.com/tools/a11y-assist-mcp/get-apg-pattern.md
- `get_aria_role` — Read — https://policylayer.com/tools/a11y-assist-mcp/get-aria-role.md
- `get_element_roles` — Read — https://policylayer.com/tools/a11y-assist-mcp/get-element-roles.md
- `get_wcag_sc` — Read — https://policylayer.com/tools/a11y-assist-mcp/get-wcag-sc.md
- `list_apg_patterns` — Read — https://policylayer.com/tools/a11y-assist-mcp/list-apg-patterns.md
- `search_act` — Read — https://policylayer.com/tools/a11y-assist-mcp/search-act.md
- `search_wcag` — Read — https://policylayer.com/tools/a11y-assist-mcp/search-wcag.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=a11y-assist-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/a11y-assist-mcp
