MCP 可访问性扫描仪是一个模型上下文协议(MCP)服务器,借助 Playwright 和 Axe-core 实现网页可访问性的自动化扫描。它让大型语言模型(LLMs)能够开展 WCAG 合规检查、捕获带注释的屏幕截图并生成详细报告,极大提升了网页可访问性检测的效率。
您可以根据自身需求,选择以下任意一种方法进行安装:
npm install -g mcp-accessibility-scanner
项目包含一个 Dockerfile,用于设置所有必要的依赖项,包括 Node.js v22 和 Python 3.13。
docker build -t mcp-server .
docker run -it -e MCP_PROXY_DEBUG=true mcp-server
您也可以在后台运行:
docker run -d -p 3000:3000 mcp-server
在 VS Code 中使用 VS Code CLI 安装可访问性扫描仪:
code --add-mcp '{"name":"accessibility-scanner","command":"npx","args":["mcp-accessibility-scanner"]}'
code-insiders --add-mcp '{"name":"accessibility-scanner","command":"npx","args":["mcp-accessibility-scanner"]}'
以下是 Claude Desktop 的配置示例:
{
"mcpServers": {
"accessibility-scanner": {
"command": "npx",
"args": ["-y", "mcp-accessibility-scanner"]
}
}
}
扫描器暴露了一个名为 scan_accessibility
的单一工具,该工具接受以下参数:
url
: 要扫描的网页 URL(必填)violationsTag
: 要检查的可访问性违规标签数组(必填)viewport
: 可选对象,用于自定义视口大小
width
: 数值(默认:1920)height
: 数值(默认:1080)shouldRunInHeadless
: 可选布尔值,用于控制无头模式(默认:true)⚠️ 重要提示
执行扫描时,任何可访问性违规问题的标注屏幕截图都会自动保存到您的下载文件夹中。
您能否扫描 example.com 以检查与颜色对比相关的可访问性问题?
您能否使用 1280x720 视口大小并显示浏览器窗口来扫描 example.com 的可访问性问题?
git clone https://github.com/JustasMonkev/mcp-accessibility-scanner.git
cd mcp-accessibility-scanner
npm install
npm run watch
npm run inspector
docker build -t mcp-server-dev .
docker run -it -v $(pwd):/app mcp-server-dev bash
项目文件夹包含以下内容:
Dockerfile
: 用于构建 Docker 镜像的配置文件。package.json
: 包含项目依赖项和脚本的任务清单文件。index.js
: 主应用程序入口点。utils/
: 包含各种实用工具函数的目录。欢迎任何贡献!请参考项目的 CONTRIBUTING.md 文件以获取详细信息。
该项目受 MIT License 保护。