使用说明
项目简介
MCP Accessibility Scanner 是一个基于 Model Context Protocol (MCP) 构建的服务器,它利用 Playwright 和 Axe-core 库,为 LLM 客户端提供网页可访问性自动扫描功能。该服务器暴露了一个 'scan_accessibility' 工具,允许 LLM 客户端请求对指定 URL 的网页进行可访问性检测,并返回详细的 JSON 报告和带有违规标记的网页截图。
主要功能点
- 完整的 WCAG 2.1/2.2 合规性检查: 支持最新的 Web 内容可访问性指南标准。
- 自动截图与违规高亮: 生成带有编号违规标记的网页截图,直观展示问题位置。
- 详细 JSON 报告与修复建议: 提供包含详细违规信息和修复建议的 JSON 报告,方便开发者理解和解决可访问性问题。
安装步骤
- 克隆仓库:
git clone https://github.com/JustasMonkev/mcp-accessibility-scanner.git cd mcp-accessibility-scanner - 安装依赖:
npm install - 构建项目: (编译 TypeScript 并安装 Playwright 浏览器)
npm run prepare
服务器配置
要将 Accessibility Scanner 服务器添加到 MCP 客户端(例如 Claude Desktop),您需要配置 MCP 服务器的启动命令。以下是配置示例,请根据实际情况调整 'args' 中的路径:
{ "mcpServers": { "accessibility-checker": { "command": "node", "args": [ "path/build/server.js" // 请替换为实际的 server.js 文件路径,例如: "./dist/server.js" ] } } }
配置参数说明:
- 'server name': 'accessibility-checker' - 服务器的名称,用于在 MCP 客户端中标识和引用。
- 'command': 'node' - 启动服务器的命令,这里使用 Node.js 运行 JavaScript 代码。
- 'args': 启动命令的参数,为一个字符串数组。
- '"path/build/server.js"': 需要用户根据实际情况修改为 'server.js' 文件在构建后的实际路径。 通常在项目根目录下的 'dist' 文件夹中,例如可以尝试使用 '"./dist/server.js"'。
基本使用方法
配置完成后,在支持 MCP 的客户端中(例如 Claude),您可以使用自然语言指令调用 'scan_accessibility' 工具进行网页可访问性扫描。
工具名称: 'scan_accessibility'
工具参数:
- 'url': 要扫描的网页 URL (字符串类型)。
- 'violationsTag': 要检查的 WCAG 违规标签数组 (字符串数组类型)。常用的标签包括 'wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22aa' 等,可以根据需要指定要检查的合规性级别。
使用示例 (在 Claude 中):
Could you scan example.com for accessibility issues related to color contrast?
或更精确地指定违规标签:
Scan accessibility of https://www.example.com and check for wcag2aa violations.
服务器将返回包含 JSON 报告和网页截图的响应。截图会保存到您的下载文件夹,JSON 报告会以文本形式返回,其中包含了检测到的可访问性问题详情。
开发提示:
- 如果您需要进行本地开发,可以使用 'npm run watch' 命令启动 TypeScript 编译器的监听模式,以便实时编译代码。
- 使用 'npm run inspector' 命令可以本地测试 MCP 服务器。
信息
分类
开发者工具