Skip to main content
Glama

A11y MCPサーバー

axe-core を使ってウェブページのアクセシビリティを監査するための MCP (Model Context Protocol) サーバーです。監査結果をお気に入りの AI アシスタント (Cline/Cursor/GH Copilot) と連携してエージェントループで使用すれば、A11y の問題を自動的に修正してくれます。

特徴

  • あらゆるウェブページで詳細なアクセシビリティ監査を実行します

  • アクセシビリティの問題の概要を取得する

  • 特定のWCAG基準で監査をフィルタリングする

  • デバッグを容易にするために結果に HTML スニペットを含める

Related MCP server: A11y MCP Server

インストール

# Install globally
npm install -g a11y-mcp

# Or use directly with npx
npx a11y-mcp

構成

この MCP サーバーを Cline で使用するには、MCP 設定構成ファイルに追加する必要があります。

MCP構成

mcpServersオブジェクトに以下を追加します。

{
  "mcpServers": {
    "a11y": {
      "command": "npx",
      "args": ["a11y-mcp"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

利用可能なツール

監査ウェブページ

Web ページの詳細なアクセシビリティ監査を実行します。

パラメータ:

  • url (必須): 監査するウェブページのURL

  • includeHtml (オプション): 結果に HTML スニペットを含めるかどうか (デフォルト: false)

  • tags (オプション): チェックする特定のアクセシビリティタグの配列 (例: wcag2a、wcag2aa、wcag21a、best-practice)

例:

Use the a11y MCP server to audit example.com for accessibility issues

要約を取得する

Web ページのアクセシビリティの問題の概要を取得します。

パラメータ:

  • url (必須): 監査するウェブページのURL

例:

Give me an accessibility summary of example.com

使用例

設定が完了したら、Claude に MCP サーバーを使用してアクセシビリティ監査を実行するように依頼できます。

  1. 「example.com のアクセシビリティの問題を確認できますか?」

  2. https://mywebsite.comのウェブサイトが WCAG 2.1 AA に準拠しているか監査してください」

  3. https://example.comのアクセシビリティ問題の概要を教えてください」

  4. http://localhost:3000にあるローカル開発サーバーに重大なアクセシビリティの問題があるかどうかを確認します」

発達

開発用にサーバーをローカルで実行するには:

npm start

リリース

このプロジェクトには、バージョン管理とnpmへの公開を支援するリリーススクリプトが含まれています。このスクリプトは、バージョンアップ、テストの実行、gitタグの付与、npmへの公開を処理します。

新しいバージョンをリリースするには:

# Make sure the script is executable
chmod +x release.sh

# Release a patch version (default)
./release.sh

# Release a minor version
./release.sh --minor

# Release a major version
./release.sh --major

# Release a specific version
./release.sh --version=1.2.3

# Skip git operations
./release.sh --skip-git

# Dry run (no changes will be made)
./release.sh --dry-run

# Force release even with uncommitted changes
./release.sh --force

詳細については、以下を実行してください。

./release.sh --help

ライセンス

MPL 2.0

クレジット

このプロジェクトはaxe-coreの素晴らしい成果の上に構築されています

Available Tools

2 tools
audit_webpageC

Perform an accessibility audit on a webpage

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the webpage to audit
tagsNoSpecific accessibility tags to check (e.g., wcag2a, wcag2aa, wcag21a, best-practice)
includeHtmlNoWhether to include HTML snippets in the results

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but fails to mention critical aspects like whether it requires authentication, has rate limits, returns structured data, or handles errors. This leaves significant gaps in understanding how the tool behaves in practice.

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

Conciseness5/5

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

The description is a single, clear sentence with no wasted words, making it highly concise and front-loaded. Every part of the sentence directly contributes to understanding the tool's purpose, earning its place effectively.

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

Completeness2/5

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

Given the complexity of an accessibility audit tool with no annotations and no output schema, the description is insufficient. It doesn't explain what the audit returns, how results are formatted, or any behavioral traits, leaving the agent with incomplete information to use the tool effectively in context.

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

Parameters3/5

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

Schema description coverage is 100%, so the input schema already documents all parameters thoroughly. The description doesn't add any additional meaning or context beyond what's in the schema, such as explaining the relationship between parameters or typical use cases. This meets the baseline for high schema coverage.

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

Purpose4/5

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

The description clearly states the action ('perform an accessibility audit') and the target resource ('on a webpage'), making the purpose immediately understandable. However, it doesn't differentiate from the sibling tool 'get_summary', which might be related but isn't explicitly contrasted, preventing a perfect score.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, such as the sibling 'get_summary'. It lacks context about prerequisites, scenarios, or exclusions, leaving the agent with minimal usage direction beyond the basic purpose.

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

get_summaryC

Get a summary of accessibility issues for a webpage

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the webpage to audit

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states what the tool does but fails to describe key behavioral traits such as whether it performs a live scan, uses cached data, requires authentication, has rate limits, or what the output format looks like. This is inadequate for a tool with no annotation coverage.

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

Conciseness5/5

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

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is appropriately sized and front-loaded, with zero waste.

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

Completeness2/5

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

Given the lack of annotations and output schema, the description is incomplete. It does not explain what the summary includes, how it's formatted, or any behavioral context needed for effective use. For a tool with no structured data support, this leaves significant gaps in understanding.

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

Parameters3/5

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

The schema description coverage is 100%, with the single parameter 'url' fully documented in the schema. The description adds no additional meaning beyond what the schema provides, such as URL format requirements or validation rules. Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the tool's purpose with a specific verb ('Get') and resource ('summary of accessibility issues for a webpage'). It distinguishes from the sibling tool 'audit_webpage' by focusing on summary retrieval rather than a full audit, though the distinction could be more explicit.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus the sibling 'audit_webpage'. It lacks explicit instructions on alternatives, prerequisites, or exclusions, leaving the agent to infer usage from the tool name and description alone.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updatesv1.0.0
    • First observedaudit_webpage
    • First observedget_summary

TDQS

B3.1/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: 'audit_webpage' performs an accessibility audit, while 'get_summary' retrieves a summary of issues, with no overlap in functionality. An agent can easily differentiate between initiating an audit and fetching results.

Naming Consistency5/5

Both tools follow a consistent verb_noun pattern ('audit_webpage', 'get_summary'), using snake_case and clear action-oriented verbs. This uniformity makes the tool set predictable and easy to understand.

Tool Count2/5

With only 2 tools, the server feels thin for the domain of web accessibility, lacking operations like detailed issue retrieval, filtering, remediation suggestions, or batch processing. This minimal set may limit agent workflows.

Completeness2/5

The tool set is severely incomplete for web accessibility auditing; it covers audit initiation and summary retrieval but misses essential functions such as getting detailed issue reports, updating audits, or handling multiple pages, leaving significant gaps for practical use.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    A lightweight local MCP server that runs axe-core accessibility audits via Playwright and returns compressed, actionable results optimized for Claude's context window.
    5
    66 npm
    MIT
  • A
    license
    A
    quality
    F
    maintenance
    An MCP server for WCAG accessibility auditing in AI coding agents, providing tools to audit HTML, files, URLs, and diffs, plus a prompt for React component auditing.
    5
    711 npm
    6
    MIT