{"_id":"@ali0113/accessibility-mcp-server","_rev":"9-9a54c55271659100e40c44ec9b178772","name":"@ali0113/accessibility-mcp-server","dist-tags":{"latest":"1.1.8"},"versions":{"1.1.0":{"name":"@ali0113/accessibility-mcp-server","version":"1.1.0","keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"author":"","license":"MIT","_id":"@ali0113/accessibility-mcp-server@1.1.0","maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"homepage":"https://github.com/alii13/accessibility-audit#readme","bugs":{"url":"https://github.com/alii13/accessibility-audit/issues"},"bin":{"accessibility-mcp-server":"bin/server.js"},"dist":{"shasum":"e05c09b8440d9ef21a2f9957912aea49991dc6d8","tarball":"https://registry.npmjs.org/@ali0113/accessibility-mcp-server/-/accessibility-mcp-server-1.1.0.tgz","fileCount":80,"integrity":"sha512-dmG9gBSqUi0n44dq12TeKYexCEYQ3SpHZkYWTiNHzBRw5t6b8ah7aQ5IlA+afrxJjOECi8EA8kTKYYdaXGirPA==","signatures":[{"sig":"MEYCIQDGjiJrQuoWbztMq8flpnYaL55WnqTIf0500wZDspl9iQIhAICKJgZ2WuST5cGvntUcoauF8mpLx7nhuw/CFkReXWFm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1202798},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=18.0.0"},"gitHead":"713b028f4a8e3826cfdbb8644aaf09acf6cf50cf","scripts":{"dev":"tsx watch src/server.ts","build":"tsc","start":"node dist/server.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"ali0113","email":"shekhaliul44@gmail.com"},"repository":{"url":"git+https://github.com/alii13/accessibility-audit.git","type":"git","directory":"accessibility-mcp-server"},"_npmVersion":"11.3.0","description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","directories":{},"_nodeVersion":"24.2.0","dependencies":{"xlsx":"^0.18.5","playwright":"^1.40.0","@modelcontextprotocol/sdk":"^0.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/accessibility-mcp-server_1.1.0_1768043012620_0.7940429685434867","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@ali0113/accessibility-mcp-server","version":"1.1.1","keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"author":"","license":"MIT","_id":"@ali0113/accessibility-mcp-server@1.1.1","maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"homepage":"https://github.com/alii13/accessibility-audit#readme","bugs":{"url":"https://github.com/alii13/accessibility-audit/issues"},"bin":{"accessibility-mcp-server":"bin/server.js"},"dist":{"shasum":"1b77370dc7a637b3fe50d6d625495638f8adb547","tarball":"https://registry.npmjs.org/@ali0113/accessibility-mcp-server/-/accessibility-mcp-server-1.1.1.tgz","fileCount":64,"integrity":"sha512-CfTWzd8iZJTZh33jjopfq2+MeWdLegqkBUSgmx5M9CEQU8xFHloNcPwmptViN7ZChEwYVmm3mD4wh5VC7lQqpw==","signatures":[{"sig":"MEQCIE7c7qBkzQjTVqiFGunX+omgQDBteJknJTyBMeM6Td9CAiBkcZovQYmhprMw490CwyKzBtj3DLTy40NRciSNmeBtCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":889124},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=18.0.0"},"gitHead":"713b028f4a8e3826cfdbb8644aaf09acf6cf50cf","scripts":{"dev":"tsx watch src/server.ts","build":"tsc","start":"node dist/server.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"ali0113","email":"shekhaliul44@gmail.com"},"repository":{"url":"git+https://github.com/alii13/accessibility-audit.git","type":"git","directory":"accessibility-mcp-server"},"_npmVersion":"11.3.0","description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","directories":{},"_nodeVersion":"24.2.0","dependencies":{"xlsx":"^0.18.5","playwright":"^1.40.0","@modelcontextprotocol/sdk":"^0.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/accessibility-mcp-server_1.1.1_1768045033318_0.3706819334600906","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@ali0113/accessibility-mcp-server","version":"1.1.2","keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"author":"","license":"MIT","_id":"@ali0113/accessibility-mcp-server@1.1.2","maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"homepage":"https://github.com/alii13/accessibility-audit#readme","bugs":{"url":"https://github.com/alii13/accessibility-audit/issues"},"bin":{"accessibility-mcp-server":"bin/server.js"},"dist":{"shasum":"627bea2af9e1988df8811aef1cbfbfe132209dad","tarball":"https://registry.npmjs.org/@ali0113/accessibility-mcp-server/-/accessibility-mcp-server-1.1.2.tgz","fileCount":65,"integrity":"sha512-YE55QEjbMA4zEMaxkRABZeYu2PRqlXDsSjeIUBNpfISB6tZOQlsW7Ug3JCMes7/Q9Z3DZSK/b2dFmbku/X9vag==","signatures":[{"sig":"MEQCICHLOnw1MQwlje9HDs2lULubctQmp1WnIVdZhGx7v2meAiBFfw5zbOyrwWtMf5HymHa8I30u50uZDdT7Vost4QTPBA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":890192},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=18.0.0"},"gitHead":"ab0c744e46b85f0c90e798942bbc88145c818ad5","scripts":{"dev":"tsx watch src/server.ts","build":"tsc","start":"node dist/server.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"ali0113","email":"shekhaliul44@gmail.com"},"repository":{"url":"git+https://github.com/alii13/accessibility-audit.git","type":"git","directory":"accessibility-mcp-server"},"_npmVersion":"11.3.0","description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","directories":{},"_nodeVersion":"24.2.0","dependencies":{"xlsx":"^0.18.5","playwright":"^1.40.0","@modelcontextprotocol/sdk":"^0.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/accessibility-mcp-server_1.1.2_1768045475031_0.5593307586424672","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@ali0113/accessibility-mcp-server","version":"1.1.3","keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"author":"","license":"MIT","_id":"@ali0113/accessibility-mcp-server@1.1.3","maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"homepage":"https://github.com/alii13/accessibility-audit#readme","bugs":{"url":"https://github.com/alii13/accessibility-audit/issues"},"bin":{"accessibility-mcp-server":"bin/server.js"},"dist":{"shasum":"20e6e3f5fd8a6d896f72c73cd49940c271622ab1","tarball":"https://registry.npmjs.org/@ali0113/accessibility-mcp-server/-/accessibility-mcp-server-1.1.3.tgz","fileCount":65,"integrity":"sha512-1ZNvNvc9P1lFJxUGEsGqMq0l1KpBlEUgudULkkkAacCETZ2krDsYFnYNlM6vzWkyiCDRBNCktloakVKv4JFvfQ==","signatures":[{"sig":"MEYCIQCJ8KfI1XiKMDs3oJ9WT453H4MxJ8iF43OdgVTg8l46zgIhAKKOpywueiCD6emIIhEq5aHxzvD7F33lXCseR5U90zZ3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":896824},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=18.0.0"},"gitHead":"ab0c744e46b85f0c90e798942bbc88145c818ad5","scripts":{"dev":"tsx watch src/server.ts","build":"tsc","start":"node dist/server.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"ali0113","email":"shekhaliul44@gmail.com"},"repository":{"url":"git+https://github.com/alii13/accessibility-audit.git","type":"git","directory":"accessibility-mcp-server"},"_npmVersion":"11.3.0","description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","directories":{},"_nodeVersion":"24.2.0","dependencies":{"xlsx":"^0.18.5","playwright":"^1.40.0","@modelcontextprotocol/sdk":"^0.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/accessibility-mcp-server_1.1.3_1768048905584_0.6496070433528676","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@ali0113/accessibility-mcp-server","version":"1.1.4","keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"author":"","license":"MIT","_id":"@ali0113/accessibility-mcp-server@1.1.4","maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"homepage":"https://github.com/alii13/accessibility-audit#readme","bugs":{"url":"https://github.com/alii13/accessibility-audit/issues"},"bin":{"accessibility-mcp-server":"bin/server.js"},"dist":{"shasum":"c7fb680a1f7344e8c7ac60c76df33dbd5d7ff5e1","tarball":"https://registry.npmjs.org/@ali0113/accessibility-mcp-server/-/accessibility-mcp-server-1.1.4.tgz","fileCount":65,"integrity":"sha512-dTmSUqEbQcx1VP73Bbb/TGV6UKpblCaJ6A8XZ5/Qobmnddz9PBW4Q0dLuQeeDAd2f5EjpoKIgJtYGJQb+TAF3g==","signatures":[{"sig":"MEQCIBIWrlU/HotKNHOmoSbCoFn+k5GN9Y0qivX4rnIwwVLnAiBEf7lpTOYUhw3snGanJX7Yk4I3lBIy9hHNo7jTaGECCw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":900286},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=18.0.0"},"gitHead":"ab0c744e46b85f0c90e798942bbc88145c818ad5","scripts":{"dev":"tsx watch src/server.ts","build":"tsc","start":"node dist/server.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"ali0113","email":"shekhaliul44@gmail.com"},"repository":{"url":"git+https://github.com/alii13/accessibility-audit.git","type":"git","directory":"accessibility-mcp-server"},"_npmVersion":"11.3.0","description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","directories":{},"_nodeVersion":"24.2.0","dependencies":{"xlsx":"^0.18.5","playwright":"^1.40.0","@modelcontextprotocol/sdk":"^0.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/accessibility-mcp-server_1.1.4_1768049404287_0.6688171758907944","host":"s3://npm-registry-packages-npm-production"}},"1.1.5":{"name":"@ali0113/accessibility-mcp-server","version":"1.1.5","keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"author":"","license":"MIT","_id":"@ali0113/accessibility-mcp-server@1.1.5","maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"homepage":"https://github.com/alii13/accessibility-audit#readme","bugs":{"url":"https://github.com/alii13/accessibility-audit/issues"},"bin":{"accessibility-mcp-server":"bin/server.js"},"dist":{"shasum":"15518ad99a7ff6a0a716fef258a56673a88d2942","tarball":"https://registry.npmjs.org/@ali0113/accessibility-mcp-server/-/accessibility-mcp-server-1.1.5.tgz","fileCount":65,"integrity":"sha512-udMm8PTDhlNn47/5alEKQO+FRgqMobVv3pCQ0t6Im/xlEjMv734KdcyeS88WT1NHmBsaFXaCVQ0ISuTRUBeUow==","signatures":[{"sig":"MEUCIERBT4fCD0t5VdUC0utL/DeM8wLPuf8LHHFcctLZ6x19AiEAi6IImoiFsLS93qPP31WnmfCWKmb77GBjyQcAqUxydHc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":902162},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=18.0.0"},"gitHead":"ab0c744e46b85f0c90e798942bbc88145c818ad5","scripts":{"dev":"tsx watch src/server.ts","build":"tsc","start":"node dist/server.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"ali0113","email":"shekhaliul44@gmail.com"},"repository":{"url":"git+https://github.com/alii13/accessibility-audit.git","type":"git","directory":"accessibility-mcp-server"},"_npmVersion":"11.3.0","description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","directories":{},"_nodeVersion":"24.2.0","dependencies":{"xlsx":"^0.18.5","playwright":"^1.40.0","@modelcontextprotocol/sdk":"^0.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/accessibility-mcp-server_1.1.5_1768049667093_0.5317754559708576","host":"s3://npm-registry-packages-npm-production"}},"1.1.6":{"name":"@ali0113/accessibility-mcp-server","version":"1.1.6","keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"author":"","license":"MIT","_id":"@ali0113/accessibility-mcp-server@1.1.6","maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"homepage":"https://github.com/alii13/accessibility-audit#readme","bugs":{"url":"https://github.com/alii13/accessibility-audit/issues"},"bin":{"accessibility-mcp-server":"bin/server.js"},"dist":{"shasum":"0e62e1f5053c426c4665ce3a10e386369ae77c87","tarball":"https://registry.npmjs.org/@ali0113/accessibility-mcp-server/-/accessibility-mcp-server-1.1.6.tgz","fileCount":65,"integrity":"sha512-SWybCWzfjJwmAwUETBfl66Lwy72gRWyW6wGrmFuAWiW1y0tCtxc7GhciuiB/23MM6QX8mz64HFs3+tDGqxhssw==","signatures":[{"sig":"MEUCIEN3syBjzjipAjRyY36daA2I6bsDEBrenQUeDHbAP9UtAiEAiWHDAyePVtDg7iIth80cP3A1EaqHXVFXMdCRKAyxRns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":902162},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=18.0.0"},"gitHead":"ab0c744e46b85f0c90e798942bbc88145c818ad5","scripts":{"dev":"tsx watch src/server.ts","build":"tsc","start":"node dist/server.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"ali0113","email":"shekhaliul44@gmail.com"},"repository":{"url":"git+https://github.com/alii13/accessibility-audit.git","type":"git","directory":"accessibility-mcp-server"},"_npmVersion":"11.3.0","description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","directories":{},"_nodeVersion":"24.2.0","dependencies":{"xlsx":"^0.18.5","playwright":"^1.40.0","@modelcontextprotocol/sdk":"^0.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/accessibility-mcp-server_1.1.6_1768049749969_0.005337066070560725","host":"s3://npm-registry-packages-npm-production"}},"1.1.7":{"name":"@ali0113/accessibility-mcp-server","version":"1.1.7","keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"author":"","license":"MIT","_id":"@ali0113/accessibility-mcp-server@1.1.7","maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"homepage":"https://github.com/alii13/accessibility-audit#readme","bugs":{"url":"https://github.com/alii13/accessibility-audit/issues"},"bin":{"accessibility-mcp-server":"bin/server.js"},"dist":{"shasum":"786ed6ab1b14db5cf1a011727db164e49e088240","tarball":"https://registry.npmjs.org/@ali0113/accessibility-mcp-server/-/accessibility-mcp-server-1.1.7.tgz","fileCount":65,"integrity":"sha512-1KNyYTafSEbE97sRQT4JvVUcd3hrzPgHtZ0oxQz9AHP4Ahvt5whhaqlNtMORD4XwqNuavWK8In7nVz2pGTkSmw==","signatures":[{"sig":"MEQCICmOnfRYdoaNZqGast6BdF6PlJ4d+ZQO+jrDO5I/aG9NAiBs0BPeiiaSM5xoYmGw9rfDjwKtN+h1bReecWlN6XkTsw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":890192},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=18.0.0"},"gitHead":"83ed8f117d16147eff0f93f0a1a09922cc77dff0","scripts":{"dev":"tsx watch src/server.ts","build":"tsc","start":"node dist/server.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"ali0113","email":"shekhaliul44@gmail.com"},"repository":{"url":"git+https://github.com/alii13/accessibility-audit.git","type":"git","directory":"accessibility-mcp-server"},"_npmVersion":"11.3.0","description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","directories":{},"_nodeVersion":"24.2.0","dependencies":{"xlsx":"^0.18.5","playwright":"^1.40.0","@modelcontextprotocol/sdk":"^0.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/accessibility-mcp-server_1.1.7_1768050697023_0.5800251405593877","host":"s3://npm-registry-packages-npm-production"}},"1.1.8":{"name":"@ali0113/accessibility-mcp-server","version":"1.1.8","description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","main":"dist/server.js","type":"module","bin":{"accessibility-mcp-server":"bin/server.js"},"scripts":{"build":"tsc","dev":"tsx watch src/server.ts","start":"node dist/server.js","prepublishOnly":"npm run build"},"keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"author":"","license":"MIT","repository":{"type":"git","url":"git+https://github.com/alii13/accessibility-mcp-server.git"},"dependencies":{"@modelcontextprotocol/sdk":"^0.5.0","playwright":"^1.40.0","xlsx":"^0.18.5"},"devDependencies":{"@types/node":"^20.0.0","typescript":"^5.0.0","tsx":"^4.7.0"},"engines":{"node":">=18.0.0"},"_id":"@ali0113/accessibility-mcp-server@1.1.8","gitHead":"063c411ba2c8e7f1bf460d7f30eae0d011ef60e4","types":"./dist/server.d.ts","bugs":{"url":"https://github.com/alii13/accessibility-mcp-server/issues"},"homepage":"https://github.com/alii13/accessibility-mcp-server#readme","_nodeVersion":"24.2.0","_npmVersion":"11.3.0","dist":{"integrity":"sha512-8vS7u8m/gyWxasKSWs1SvkSVpo4VHXtL5vA2fT+HsOpahzw7H2/EcxiooJiA0wHtykXIHglZ5Z/mgH1DtG9pag==","shasum":"f3418ff718d908be58e7a65c860aef0aa020591d","tarball":"https://registry.npmjs.org/@ali0113/accessibility-mcp-server/-/accessibility-mcp-server-1.1.8.tgz","fileCount":65,"unpackedSize":890152,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDaZE1wnghofeb8OQk5qLCOLicfabqwbl5mlg5GGrRJiAIhAJmC6phifCiBzBytMB8sZLQjGAi3poddD/BvlIHho0I3"}]},"_npmUser":{"name":"ali0113","email":"shekhaliul44@gmail.com"},"directories":{},"maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/accessibility-mcp-server_1.1.8_1768051624370_0.8096570614258531"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-10T11:03:32.522Z","modified":"2026-01-10T13:27:04.725Z","1.1.0":"2026-01-10T11:03:32.811Z","1.1.1":"2026-01-10T11:37:13.471Z","1.1.2":"2026-01-10T11:44:35.198Z","1.1.3":"2026-01-10T12:41:45.783Z","1.1.4":"2026-01-10T12:50:04.497Z","1.1.5":"2026-01-10T12:54:27.265Z","1.1.6":"2026-01-10T12:55:50.117Z","1.1.7":"2026-01-10T13:11:37.192Z","1.1.8":"2026-01-10T13:27:04.544Z"},"bugs":{"url":"https://github.com/alii13/accessibility-mcp-server/issues"},"license":"MIT","homepage":"https://github.com/alii13/accessibility-mcp-server#readme","keywords":["mcp","accessibility","a11y","audit","wcag","export","csv","excel","dashboard"],"repository":{"type":"git","url":"git+https://github.com/alii13/accessibility-mcp-server.git"},"description":"MCP server for accessibility auditing with export, filter, aggregation, and visualization tools","maintainers":[{"name":"ali0113","email":"shekhaliul44@gmail.com"}],"readme":"# ♿ Accessibility MCP Server\n\nA Model Context Protocol (MCP) server that provides conversational, actionable accessibility testing. This server exposes accessibility auditing tools that can be used by AI agents and chat interfaces.\n\n## ✨ Features\n\n- **Conversational Results**: Results formatted for natural language understanding, not raw data\n- **Session Management**: Reusable authenticated sessions for testing protected pages\n- **Tag Filtering**: Filter results by specific WCAG levels (wcag2a, wcag2aa, wcag21a, etc.)\n- **Educational Focus**: Tools that explain issues in plain language with code examples\n- **Code-Level Fixes**: Actual before/after code examples, not just descriptions\n- **Progress Updates**: Streaming progress for long-running batch operations\n- **Smart Prioritization**: AI-powered issue prioritization with quick wins identification\n- **Compliance Reports**: Automated VPAT/WCAG/ADA compliance documentation\n- **Trend Tracking**: Historical data and predictions for accessibility improvements\n\n## 📋 Prerequisites\n\n- **Node.js 18+** (for `npx` command)\n- That's it! Everything else is handled automatically.\n\n## 🚀 Quick Start (Using Published Package)\n\n### Step 1: Add to Your MCP Client Configuration\n\nAdd this server to your MCP client configuration (e.g., Claude Desktop, Cursor):\n\n#### Claude Desktop Configuration\n\nEdit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\\Claude\\claude_desktop_config.json` (Windows):\n\n```json\n{\n  \"mcpServers\": {\n    \"accessibility-audit\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@ali0113/accessibility-mcp-server\"]\n    }\n  }\n}\n```\n\n#### Cursor Configuration\n\nAdd to your Cursor MCP settings (`~/.cursor/mcp.json` or Cursor Settings → MCP):\n\n```json\n{\n  \"mcpServers\": {\n    \"accessibility-audit\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@ali0113/accessibility-mcp-server\"]\n    }\n  }\n}\n```\n\n### Step 2: Restart Your MCP Client\n\nRestart Claude Desktop or Cursor to load the new MCP server configuration.\n\n### Step 3: Start Using It!\n\nThat's it! You're ready to use all 25+ accessibility tools. The package will be automatically downloaded and cached by `npx` on first use.\n\n**How it works:**\n- `npx` automatically downloads and runs the package if needed\n- The `-y` flag answers \"yes\" to prompts (non-interactive)\n- Playwright browsers install automatically on first run\n- No manual installation, building, or configuration needed!\n\n## 🎉 Awesome Things You Can Do\n\n### 🔍 **Comprehensive Accessibility Auditing**\n- **Audit any website** - Single URLs, multiple pages, or entire sites\n- **Test protected pages** - Authenticated session management for login-protected content\n- **Batch processing** - Test multiple URLs in parallel with progress tracking\n- **WCAG compliance** - Check against WCAG 2.0, 2.1 (Levels A, AA, AAA) and best practices\n\n### 🎯 **Smart Prioritization & Quick Wins**\n- **Identify critical blockers** - Find must-fix issues that block users\n- **Quick wins detection** - Easy fixes with high impact\n- **Intelligent prioritization** - Sort by impact, WCAG level, fixability, or user impact\n- **Focus your efforts** - Know exactly what to fix first\n\n### 💻 **Code-Level Fixes**\n- **Before/after code examples** - See exactly what needs to change\n- **Copy-paste ready solutions** - Actual code, not just descriptions\n- **Multiple formats** - Markdown, HTML, or JSON output\n- **Specific fix suggestions** - Targeted solutions for each issue\n\n### 📚 **Educational Resources**\n- **Plain language explanations** - Understand what each issue means\n- **Why it matters** - Learn the user impact\n- **How to fix** - Step-by-step guidance with examples\n- **WCAG references** - Direct links to accessibility standards\n- **Common mistakes** - Learn from typical errors\n\n### 📊 **Compliance & Reporting**\n- **VPAT reports** - Generate Voluntary Product Accessibility Template documentation\n- **WCAG compliance reports** - Detailed compliance breakdowns\n- **ADA reports** - Americans with Disabilities Act compliance\n- **Section 508 reports** - Federal accessibility compliance\n- **Executive summaries** - High-level reports for stakeholders\n\n### 📈 **Tracking & Comparison**\n- **Before/after comparison** - Track improvements over time\n- **Trend analysis** - Historical data and predictions\n- **Score tracking** - Monitor accessibility scores\n- **Visual diffs** - See what changed between audits\n\n### 📤 **Export & Share**\n- **CSV export** - Import into Excel for analysis\n- **Excel export** - Professional reports with charts and formatting\n- **JSON export** - For API integration and data processing\n- **HTML reports** - Standalone web reports with visualizations\n- **Dashboard generation** - Visual summaries with charts\n\n### 🔎 **Filtering & Search**\n- **Filter by criteria** - Rule IDs, categories, impact levels, WCAG levels\n- **Search issues** - Find specific problems quickly\n- **Include/exclude modes** - Focus on what matters\n- **Element type filtering** - Find issues in specific HTML elements\n\n### 📊 **Statistics & Aggregation**\n- **Site-wide analysis** - Combine multiple audit results\n- **Detailed statistics** - Breakdowns by category, impact, WCAG level\n- **Aggregated summaries** - Overall site accessibility metrics\n- **Grouping options** - Organize by URL, category, rule, or impact\n\n### 🎨 **Visualization**\n- **Dashboards** - Visual summaries with key metrics\n- **Charts** - Score trends and category breakdowns\n- **Multiple formats** - Text, Markdown, HTML, JSON\n- **Executive reports** - High-level summaries for stakeholders\n\n## 💡 Real-World Use Cases\n\n### For Developers\n- Get code-level fixes for accessibility issues\n- Learn accessibility concepts with educational explanations\n- Integrate into CI/CD pipelines\n- Export results for team sharing\n\n### For QA Teams\n- Batch test multiple pages efficiently\n- Track accessibility over time\n- Generate compliance reports\n- Compare before/after deployments\n\n### For Product Managers\n- Executive summary reports\n- Compliance documentation (VPAT, ADA)\n- Dashboard visualizations\n- Track accessibility scores over time\n\n### For Compliance Teams\n- Generate VPAT reports automatically\n- WCAG compliance documentation\n- Section 508 compliance checks\n- Detailed remediation plans\n\n## 🎬 Quick Usage Example\n\nOnce configured, you can immediately start using the accessibility tools in your AI assistant:\n\n**Example: Audit a website**\n```\n\"Audit https://example.com for accessibility issues\"\n```\n\n**Example: Get quick fixes**\n```\n\"Show me quick fixes for the accessibility issues on cursor.com\"\n```\n\n**Example: Generate compliance report**\n```\n\"Generate a VPAT report for docs.atlan.com\"\n```\n\n**Example: Compare before/after**\n```\n\"Compare the accessibility of example.com before and after the redesign\"\n```\n\nThe AI assistant will automatically use the appropriate tools to fulfill your requests!\n\n## 🛠️ Available Tools\n\n### Tier 1: Core Audit Tools\n\n#### `audit_url` - Single URL Audit\n\nTest a single URL for accessibility issues with conversational, actionable results.\n\n**Inputs:**\n- `url` (required): Full URL or relative path\n- `domain` (optional): Base domain if URL is relative\n- `tags` (optional): Array of accessibility tags to check (e.g., `[\"wcag2a\", \"wcag2aa\", \"wcag21a\", \"best-practice\"]`). If not provided, all tags are checked.\n- `waitForLoad` (optional): Wait strategy - `\"networkidle\"` (default) | `\"load\"` | `\"domcontentloaded\"`\n- `timeout` (optional): Timeout in seconds (default: 30)\n\n**Example:**\n```json\n{\n  \"url\": \"https://example.com\",\n  \"tags\": [\"wcag21aa\"],\n  \"timeout\": 45\n}\n```\n\n**Output:** Structured JSON with summary, prioritized violations, WCAG compliance breakdown, quick fix suggestions, and conversational explanation.\n\n#### `audit_multiple_urls` - Batch Audit\n\nTest multiple URLs efficiently with progress updates.\n\n**Inputs:**\n- `urls` (required): Array of URLs or comma-separated string\n- `domain` (optional): Base domain\n- `tags` (optional): Array of accessibility tags\n- `parallel` (optional): Number of parallel tests (default: 1)\n- `continueOnError` (optional): Continue if one fails (default: true)\n\n**Example:**\n```json\n{\n  \"urls\": [\"/home\", \"/about\", \"/contact\"],\n  \"domain\": \"https://example.com\",\n  \"tags\": [\"wcag2aa\"],\n  \"parallel\": 2\n}\n```\n\n**Output:** Per-URL results, aggregated summary, and progress updates (streaming).\n\n#### `audit_site` - Smart Site Audit\n\nIntelligent site-wide audit with prioritization.\n\n**Inputs:**\n- `domain` (required): Base domain\n- `tags` (optional): Array of accessibility tags. Applied to all pages.\n- `strategy` (optional): `\"critical\"` | `\"comprehensive\"` | `\"custom\"` (default: `\"comprehensive\"`)\n- `maxPages` (optional): Maximum pages to test (default: 50)\n- `priorityPaths` (optional): Array of high-priority paths to test first\n\n**Example:**\n```json\n{\n  \"domain\": \"https://example.com\",\n  \"strategy\": \"critical\",\n  \"priorityPaths\": [\"/\", \"/login\", \"/checkout\"],\n  \"tags\": [\"wcag21aa\"],\n  \"maxPages\": 20\n}\n```\n\n**Output:** Prioritized results (critical pages first), site-wide score, and trend analysis if previous audits exist.\n\n### Tier 2: Session Management\n\n#### `create_session` - Authenticated Session\n\nCreate a reusable authenticated session for testing protected pages.\n\n**Inputs:**\n- `domain` (required): Base domain\n- `username` (required): Login username\n- `password` (required): Login password\n- `loginUrl` (optional): Custom login URL (default: `{domain}/login`)\n- `loginSelectors` (optional): Custom selectors for login form:\n  - `usernameSelector` (default: `\"input[type='email'], input[name='username'], input[id='username']\"`)\n  - `passwordSelector` (default: `\"input[type='password']\"`)\n  - `submitSelector` (default: `\"button[type='submit'], input[type='submit']\"`)\n- `sessionId` (optional): Custom session identifier (auto-generated if not provided)\n\n**Example:**\n```json\n{\n  \"domain\": \"https://app.example.com\",\n  \"username\": \"user@example.com\",\n  \"password\": \"password123\",\n  \"loginUrl\": \"https://app.example.com/auth/login\"\n}\n```\n\n**Output:**\n- `sessionId`: Reusable session identifier\n- `expiresAt`: Session expiration time (ISO 8601)\n- `testUrl`: Test URL to verify session\n\n**Differentiator**: Only MCP with reusable session management for authenticated pages.\n\n#### `audit_with_session` - Authenticated Audit\n\nRun an audit using an existing authenticated session.\n\n**Inputs:**\n- `sessionId` (required): Session from `create_session`\n- `url` (required): URL to test (can be relative)\n- `domain` (optional): Base domain\n- `tags` (optional): Array of accessibility tags\n- `waitForLoad` (optional): Wait strategy (default: `\"networkidle\"`)\n- `timeout` (optional): Timeout in seconds (default: 30)\n\n**Example:**\n```json\n{\n  \"sessionId\": \"session-abc123\",\n  \"url\": \"/dashboard\",\n  \"domain\": \"https://app.example.com\",\n  \"tags\": [\"wcag21aa\"]\n}\n```\n\n**Output:** Same as `audit_url` but for authenticated pages.\n\n### Tier 3: Analysis & Reporting\n\n#### `get_accessibility_score` - Calculate Score\n\nCalculate accessibility score (0-100) with detailed breakdowns.\n\n**Inputs:**\n- `results` (required): Audit result object or URL string\n- `weights` (optional): Custom weights for different issue types:\n  - `errors` (default: 10)\n  - `contrast` (default: 8)\n  - `alerts` (default: 5)\n  - `features` (default: 3)\n  - `structural` (default: 6)\n\n**Example:**\n```json\n{\n  \"results\": \"https://example.com\",\n  \"weights\": {\n    \"errors\": 15,\n    \"contrast\": 10\n  }\n}\n```\n\n**Output:**\n- Overall score (0-100)\n- Breakdown by category (contrast, navigation, forms, etc.)\n- WCAG level compliance (A, AA, AAA)\n- Trend if historical data available\n\n#### `prioritize_issues` - Smart Prioritization\n\nIntelligently prioritize issues, identifying quick wins and critical blockers.\n\n**Inputs:**\n- `results` (required): Audit result object\n- `criteria` (optional): `\"impact\"` | `\"wcag\"` | `\"fixability\"` | `\"user-impact\"` (default: `\"impact\"`)\n- `limit` (optional): Top N issues to return (default: 10)\n\n**Example:**\n```json\n{\n  \"results\": { /* audit result object */ },\n  \"criteria\": \"fixability\",\n  \"limit\": 5\n}\n```\n\n**Output:**\n- Prioritized list with reasoning\n- Quick wins (easy fixes with high impact)\n- Critical blockers\n\n#### `explain_issue` - Educational Tool\n\nExplain what an accessibility issue means in plain language.\n\n**Inputs:**\n- `ruleId` (required): Accessibility rule ID (e.g., `\"alt_missing\"`, `\"contrast\"`, `\"label_missing\"`)\n- `context` (optional): Additional context about the issue (HTML element, page URL, etc.)\n\n**Example:**\n```json\n{\n  \"ruleId\": \"alt_missing\",\n  \"context\": \"Image on homepage hero section\"\n}\n```\n\n**Output:**\n- Plain language explanation\n- Why it matters (user impact)\n- How to fix (with code examples)\n- WCAG reference\n- Common mistakes\n\n**Differentiator**: Educational focus - helps users learn accessibility.\n\n#### `get_quick_fixes` - Actionable Fixes\n\nGet specific fix suggestions with before/after code examples.\n\n**Inputs:**\n- `results` (required): Audit result object or URL string\n- `format` (optional): `\"markdown\"` | `\"html\"` | `\"json\"` (default: `\"json\"`)\n- `includeCode` (optional): Include code examples (default: true)\n\n**Example:**\n```json\n{\n  \"results\": \"https://example.com\",\n  \"format\": \"markdown\",\n  \"includeCode\": true\n}\n```\n\n**Output:**\n- List of fixes with:\n  - Current code (if available)\n  - Fixed code\n  - Explanation\n  - Impact estimate\n\n**Differentiator**: Code-level fixes, not just descriptions.\n\n#### `generate_compliance_report` - Compliance Documentation\n\nGenerate compliance reports in various formats.\n\n**Inputs:**\n- `results` (required): Audit result object\n- `format` (optional): `\"VPAT\"` | `\"WCAG\"` | `\"ADA\"` | `\"Section508\"` (default: `\"WCAG\"`)\n- `level` (optional): `\"A\"` | `\"AA\"` | `\"AAA\"` (default: `\"AA\"`)\n- `includeRemediation` (optional): Include fix suggestions (default: true)\n\n**Example:**\n```json\n{\n  \"results\": { /* audit result object */ },\n  \"format\": \"VPAT\",\n  \"level\": \"AA\",\n  \"includeRemediation\": true\n}\n```\n\n**Output:**\n- Formatted compliance report\n- WCAG mapping\n- Remediation plan\n- Executive summary\n\n#### `get_wcag_compliance` - WCAG Status\n\nCheck WCAG compliance status with per-criterion breakdown.\n\n**Inputs:**\n- `results` (required): Audit result object or URL string\n- `level` (optional): `\"A\"` | `\"AA\"` | `\"AAA\"` (default: `\"AA\"`)\n\n**Example:**\n```json\n{\n  \"results\": \"https://example.com\",\n  \"level\": \"AA\"\n}\n```\n\n**Output:**\n- Compliance status (pass/fail/partial)\n- Per-criterion breakdown\n- Missing requirements\n- Compliance percentage\n\n### Tier 4: Comparison & Tracking\n\n#### `compare_accessibility` - Before/After Comparison\n\nCompare two audits to track improvements.\n\n**Inputs:**\n- `before` (required): Previous audit result or URL\n- `after` (required): Current audit result or URL\n- `format` (optional): `\"summary\"` | `\"detailed\"` | `\"diff\"` (default: `\"summary\"`)\n\n**Example:**\n```json\n{\n  \"before\": \"https://example.com/v1\",\n  \"after\": \"https://example.com/v2\",\n  \"format\": \"detailed\"\n}\n```\n\n**Output:**\n- Issues fixed\n- Issues introduced\n- Score improvement\n- Remaining issues\n- Visual diff (if applicable)\n\n#### `track_accessibility` - Historical Tracking\n\nTrack accessibility over time with trend analysis.\n\n**Inputs:**\n- `url` (required): URL to track\n- `timeframe` (optional): `\"7d\"` | `\"30d\"` | `\"90d\"` | `\"all\"` (default: `\"30d\"`)\n- `metric` (optional): `\"score\"` | `\"issues\"` | `\"wcag-compliance\"` (default: `\"score\"`)\n\n**Example:**\n```json\n{\n  \"url\": \"https://example.com\",\n  \"timeframe\": \"90d\",\n  \"metric\": \"score\"\n}\n```\n\n**Output:**\n- Historical data\n- Trend visualization (text-based)\n- Predictions\n- Recommendations\n\n### Tier 5: Export & Data Management\n\n#### `export_to_csv` - Export to CSV\n\nExport audit results to CSV format for spreadsheet analysis, including metadata and violation rows.\n\n**Inputs:**\n- `results` (required): Audit result object or URL string\n- `includeMetadata` (optional): Include test information and environment data (default: `true`)\n- `includeViolations` (optional): Include detailed violation rows (default: `true`)\n- `format` (optional): `\"standard\"` | `\"detailed\"` | `\"minimal\"` (default: `\"standard\"`)\n\n**Example:**\n```json\n{\n  \"results\": \"https://example.com\",\n  \"format\": \"detailed\",\n  \"includeMetadata\": true,\n  \"includeViolations\": true\n}\n```\n\n**Output:**\n- CSV content as string with metadata section and violation rows\n- Format type used\n- Total issues count\n\n**Use case**: Import into Excel, share with stakeholders, data analysis\n\n#### `export_to_excel` - Export to Excel\n\nExport audit results to Excel/XLSX format with formatting. Requires `xlsx` package.\n\n**Inputs:**\n- `results` (required): Audit result object or URL string\n- `includeCharts` (optional): Generate charts for score trends and category breakdown (default: `false`)\n- `formatting` (optional): Apply colors, headers, and styling (default: `true`)\n\n**Example:**\n```json\n{\n  \"results\": { /* audit result object */ },\n  \"includeCharts\": true,\n  \"formatting\": true\n}\n```\n\n**Output:**\n- Excel file content (base64 encoded)\n- Format type (`xlsx`)\n- Total issues count\n\n**Use case**: Professional reports, presentations, stakeholder sharing\n\n**Note**: Requires `xlsx` package. Install with `npm install xlsx`.\n\n#### `export_to_json` - Export to JSON\n\nExport audit results as structured JSON with optional raw results.\n\n**Inputs:**\n- `results` (required): Audit result object or URL string\n- `pretty` (optional): Pretty-print JSON (default: `true`)\n- `includeRaw` (optional): Include raw accessibility engine results (default: `false`)\n\n**Example:**\n```json\n{\n  \"results\": \"https://example.com\",\n  \"pretty\": true,\n  \"includeRaw\": false\n}\n```\n\n**Output:**\n- JSON string with audit results\n- Pretty-print status\n- Raw results inclusion status\n\n**Use case**: API integration, data processing, backup\n\n#### `export_to_html_report` - Generate HTML Report\n\nGenerate standalone HTML report with styling and optional visual charts.\n\n**Inputs:**\n- `results` (required): Audit result object or URL string\n- `template` (optional): `\"default\"` | `\"minimal\"` | `\"detailed\"` (default: `\"default\"`)\n- `includeCharts` (optional): Include visual charts (default: `true`)\n\n**Example:**\n```json\n{\n  \"results\": \"https://example.com\",\n  \"template\": \"detailed\",\n  \"includeCharts\": true\n}\n```\n\n**Output:**\n- HTML string with embedded CSS/JS\n- Template used\n- Charts inclusion status\n\n**Use case**: Web sharing, email reports, documentation\n\n### Tier 6: Filtering & Search\n\n#### `filter_issues` - Filter Issues\n\nFilter issues from audit results by various criteria (rule IDs, categories, impact levels, WCAG levels, etc.). Supports include/exclude modes.\n\n**Inputs:**\n- `results` (required): Audit result object\n- `filters` (required): Object with filter criteria:\n  - `ruleIds` (optional): Array of rule IDs to include/exclude\n  - `categories` (optional): Array of categories (error, contrast, etc.)\n  - `impactLevels` (optional): Array of impact levels (`\"critical\"`, `\"serious\"`, `\"moderate\"`, `\"minor\"`)\n  - `wcagLevels` (optional): Array of WCAG levels (`\"A\"`, `\"AA\"`, `\"AAA\"`)\n  - `minCount` (optional): Minimum occurrence count\n  - `elementTypes` (optional): Filter by HTML element types (e.g., `[\"img\", \"input\", \"button\"]`)\n- `mode` (optional): `\"include\"` | `\"exclude\"` (default: `\"include\"`)\n\n**Example:**\n```json\n{\n  \"results\": { /* audit result object */ },\n  \"filters\": {\n    \"impactLevels\": [\"critical\", \"serious\"],\n    \"wcagLevels\": [\"A\", \"AA\"]\n  },\n  \"mode\": \"include\"\n}\n```\n\n**Output:**\n- Filtered audit result object\n- Original issue count\n- Filtered issue count\n- Filters applied\n\n**Use case**: Focus on specific issue types, exclude false positives\n\n#### `search_issues` - Search Issues\n\nSearch issues by text content, selector, XPath, or description. Supports case-sensitive and case-insensitive search.\n\n**Inputs:**\n- `results` (required): Audit result object\n- `query` (required): Search query string\n- `fields` (optional): Array of fields to search (`\"description\"`, `\"element\"`, `\"xpath\"`, `\"selector\"`, `\"ruleId\"`, `\"userImpact\"`, `\"fix\"`, `\"all\"`) (default: `[\"all\"]`)\n- `caseSensitive` (optional): Case-sensitive search (default: `false`)\n\n**Example:**\n```json\n{\n  \"results\": { /* audit result object */ },\n  \"query\": \"missing alt\",\n  \"fields\": [\"description\", \"userImpact\"],\n  \"caseSensitive\": false\n}\n```\n\n**Output:**\n- Array of matching issues\n- Total matches count\n- Fields searched\n\n**Use case**: Find specific issues, locate elements\n\n### Tier 7: Aggregation & Statistics\n\n#### `aggregate_audit_results` - Aggregate Results\n\nCombine and aggregate multiple audit results. Groups issues by URL, category, rule, or none, and provides aggregated summary statistics.\n\n**Inputs:**\n- `results` (required): Array of audit result objects\n- `groupBy` (optional): `\"url\"` | `\"category\"` | `\"rule\"` | `\"none\"` (default: `\"url\"`)\n- `includeSummary` (optional): Include aggregated summary statistics (default: `true`)\n\n**Example:**\n```json\n{\n  \"results\": [\n    { /* audit result 1 */ },\n    { /* audit result 2 */ }\n  ],\n  \"groupBy\": \"category\",\n  \"includeSummary\": true\n}\n```\n\n**Output:**\n- Aggregated audit result with combined statistics\n- Grouping strategy used\n- Total results aggregated\n- Grouped issues (if applicable)\n\n**Use case**: Site-wide reports, batch analysis, trend identification\n\n#### `get_statistics` - Generate Statistics\n\nGenerate detailed statistics from audit results with breakdowns by category, impact, WCAG level, or rule ID. Supports single or multiple audit results.\n\n**Inputs:**\n- `results` (required): Audit result object or array of audit results\n- `breakdown` (optional): Array of breakdown dimensions (`\"category\"`, `\"impact\"`, `\"wcag\"`, `\"rule\"`) (default: all dimensions)\n\n**Example:**\n```json\n{\n  \"results\": [\n    { /* audit result 1 */ },\n    { /* audit result 2 */ }\n  ],\n  \"breakdown\": [\"category\", \"impact\", \"wcag\"]\n}\n```\n\n**Output:**\n- Total issues count\n- Average accessibility score\n- WCAG compliance breakdown\n- Statistics by category, impact, WCAG level, and rule ID\n- Counts, percentages, and distributions\n\n**Use case**: Dashboard data, reporting, analysis\n\n### Tier 8: Visualization & Reporting\n\n#### `generate_dashboard` - Generate Dashboard\n\nCreate a visual dashboard summary of audit results with key metrics, charts, and summaries. Supports multiple formats and optional charts.\n\n**Inputs:**\n- `results` (required): Audit result object, array of audit results, URL string, or array of URL strings\n- `format` (optional): `\"text\"` | `\"markdown\"` | `\"html\"` | `\"json\"` (default: `\"markdown\"`)\n- `includeCharts` (optional): Include ASCII/text charts (default: `true`)\n\n**Example:**\n```json\n{\n  \"results\": [\"https://example.com/page1\", \"https://example.com/page2\"],\n  \"format\": \"markdown\",\n  \"includeCharts\": true\n}\n```\n\n**Output:**\n- Formatted dashboard with key metrics, charts, and summaries\n- Format used\n- Total results processed\n\n**Use case**: Quick overview, presentations, status reports\n\n#### `generate_summary_report` - Generate Summary Report\n\nGenerate executive summary report with key findings and recommendations. Supports multiple formats and detail levels.\n\n**Inputs:**\n- `results` (required): Audit result object, array of audit results, URL string, or array of URL strings\n- `format` (optional): `\"text\"` | `\"markdown\"` | `\"html\"` (default: `\"markdown\"`)\n- `level` (optional): `\"executive\"` | `\"detailed\"` | `\"technical\"` (default: `\"executive\"`)\n\n**Example:**\n```json\n{\n  \"results\": \"https://example.com\",\n  \"format\": \"markdown\",\n  \"level\": \"executive\"\n}\n```\n\n**Output:**\n- Summary report with key findings and recommendations\n- Format used\n- Detail level used\n- Total results processed\n\n**Use case**: Stakeholder communication, documentation\n\n## 🏷️ Supported Accessibility Tags\n\nFilter results by specific WCAG levels or best practices:\n\n- `wcag2a` - WCAG 2.0 Level A\n- `wcag2aa` - WCAG 2.0 Level AA\n- `wcag2aaa` - WCAG 2.0 Level AAA\n- `wcag21a` - WCAG 2.1 Level A\n- `wcag21aa` - WCAG 2.1 Level AA (most common requirement)\n- `wcag21aaa` - WCAG 2.1 Level AAA\n- `best-practice` - Best practice recommendations\n\n**Example Usage:**\n```json\n// Only check WCAG 2.1 AA compliance\n{\n  \"url\": \"https://example.com\",\n  \"tags\": [\"wcag21aa\"]\n}\n\n// Check multiple WCAG levels\n{\n  \"url\": \"https://example.com\",\n  \"tags\": [\"wcag2a\", \"wcag2aa\", \"best-practice\"]\n}\n```\n\n## 📊 Result Format\n\nAll audit tools return structured results in the following format:\n\n```typescript\n{\n  summary: {\n    totalIssues: number\n    score: number\n    wcagCompliance: { A: number, AA: number, AAA: number }\n    byCategory: Record<string, number>\n    byImpact: Record<string, number>\n  }\n  prioritizedIssues: Array<{\n    ruleId: string\n    impact: 'critical' | 'serious' | 'moderate' | 'minor'\n    description: string\n    wcagLevel: string\n    tags: string[] // Array of tags this violation matches\n    element: string\n    xpath: string\n    fix: {\n      current: string\n      suggested: string\n      explanation: string\n    }\n    userImpact: string\n    priority: number\n  }>\n  conversationalSummary: string\n  quickWins: Array<{\n    ruleId: string\n    description: string\n    impact: string\n    fix: string\n  }>\n  criticalBlockers: Array<{\n    ruleId: string\n    description: string\n    impact: string\n  }>\n  appliedFilters?: {\n    tags?: string[]\n    originalIssueCount?: number\n  }\n}\n```\n\n## 📝 Usage Examples\n\n### Basic URL Audit\n\n```json\n{\n  \"tool\": \"audit_url\",\n  \"arguments\": {\n    \"url\": \"https://example.com\",\n    \"tags\": [\"wcag21aa\"]\n  }\n}\n```\n\n### Authenticated Audit Flow\n\n**Step 1: Create Session**\n```json\n{\n  \"tool\": \"create_session\",\n  \"arguments\": {\n    \"domain\": \"https://app.example.com\",\n    \"username\": \"user@example.com\",\n    \"password\": \"password123\"\n  }\n}\n```\n\n**Step 2: Audit Protected Page**\n```json\n{\n  \"tool\": \"audit_with_session\",\n  \"arguments\": {\n    \"sessionId\": \"<session-id-from-step-1>\",\n    \"url\": \"/dashboard\",\n    \"tags\": [\"wcag21aa\"]\n  }\n}\n```\n\n### Batch Audit with Progress\n\n```json\n{\n  \"tool\": \"audit_multiple_urls\",\n  \"arguments\": {\n    \"urls\": [\"/home\", \"/about\", \"/contact\", \"/products\"],\n    \"domain\": \"https://example.com\",\n    \"parallel\": 2,\n    \"tags\": [\"wcag2aa\"]\n  }\n}\n```\n\n### Get Quick Fixes\n\n```json\n{\n  \"tool\": \"get_quick_fixes\",\n  \"arguments\": {\n    \"results\": \"https://example.com\",\n    \"format\": \"markdown\",\n    \"includeCode\": true\n  }\n}\n```\n\n### Compare Before/After\n\n```json\n{\n  \"tool\": \"compare_accessibility\",\n  \"arguments\": {\n    \"before\": \"https://example.com/v1\",\n    \"after\": \"https://example.com/v2\",\n    \"format\": \"detailed\"\n  }\n}\n```\n\n### Generate Compliance Report\n\n```json\n{\n  \"tool\": \"generate_compliance_report\",\n  \"arguments\": {\n    \"results\": { /* audit result object */ },\n    \"format\": \"VPAT\",\n    \"level\": \"AA\",\n    \"includeRemediation\": true\n  }\n}\n```\n\n### Export to CSV\n\n```json\n{\n  \"tool\": \"export_to_csv\",\n  \"arguments\": {\n    \"results\": \"https://example.com\",\n    \"format\": \"detailed\",\n    \"includeMetadata\": true,\n    \"includeViolations\": true\n  }\n}\n```\n\n### Export to Excel\n\n```json\n{\n  \"tool\": \"export_to_excel\",\n  \"arguments\": {\n    \"results\": { /* audit result object */ },\n    \"includeCharts\": true,\n    \"formatting\": true\n  }\n}\n```\n\n### Export to JSON\n\n```json\n{\n  \"tool\": \"export_to_json\",\n  \"arguments\": {\n    \"results\": \"https://example.com\",\n    \"pretty\": true,\n    \"includeRaw\": false\n  }\n}\n```\n\n### Generate HTML Report\n\n```json\n{\n  \"tool\": \"export_to_html_report\",\n  \"arguments\": {\n    \"results\": \"https://example.com\",\n    \"template\": \"detailed\",\n    \"includeCharts\": true\n  }\n}\n```\n\n### Filter Issues\n\n```json\n{\n  \"tool\": \"filter_issues\",\n  \"arguments\": {\n    \"results\": { /* audit result object */ },\n    \"filters\": {\n      \"impactLevels\": [\"critical\", \"serious\"],\n      \"wcagLevels\": [\"A\", \"AA\"]\n    },\n    \"mode\": \"include\"\n  }\n}\n```\n\n### Search Issues\n\n```json\n{\n  \"tool\": \"search_issues\",\n  \"arguments\": {\n    \"results\": { /* audit result object */ },\n    \"query\": \"missing alt\",\n    \"fields\": [\"description\", \"userImpact\"],\n    \"caseSensitive\": false\n  }\n}\n```\n\n### Aggregate Audit Results\n\n```json\n{\n  \"tool\": \"aggregate_audit_results\",\n  \"arguments\": {\n    \"results\": [\n      { /* audit result 1 */ },\n      { /* audit result 2 */ }\n    ],\n    \"groupBy\": \"category\",\n    \"includeSummary\": true\n  }\n}\n```\n\n### Get Statistics\n\n```json\n{\n  \"tool\": \"get_statistics\",\n  \"arguments\": {\n    \"results\": [\n      { /* audit result 1 */ },\n      { /* audit result 2 */ }\n    ],\n    \"breakdown\": [\"category\", \"impact\", \"wcag\"]\n  }\n}\n```\n\n### Generate Dashboard\n\n```json\n{\n  \"tool\": \"generate_dashboard\",\n  \"arguments\": {\n    \"results\": [\"https://example.com/page1\", \"https://example.com/page2\"],\n    \"format\": \"markdown\",\n    \"includeCharts\": true\n  }\n}\n```\n\n### Generate Summary Report\n\n```json\n{\n  \"tool\": \"generate_summary_report\",\n  \"arguments\": {\n    \"results\": \"https://example.com\",\n    \"format\": \"markdown\",\n    \"level\": \"executive\"\n  }\n}\n```\n\n## 🐛 Error Handling\n\nThe server includes comprehensive error handling:\n\n- **Graceful degradation**: Partial results on batch failures\n- **Clear error messages**: Human-readable error descriptions\n- **Retry logic**: Automatic retries for transient failures\n- **Validation**: Input validation with helpful error messages\n\nCommon error scenarios:\n- Invalid URLs or unreachable pages\n- Session expiration (for authenticated audits)\n- Timeout errors (configurable)\n- Invalid tag combinations\n\n## 🏗️ Project Structure\n\n```\naccessibility-mcp-server/\n├── src/\n│   ├── server.ts           # Main MCP server entry point\n│   ├── tools/              # Tool implementations\n│   │   ├── audit.ts       # Core audit tools\n│   │   ├── session.ts     # Session management\n│   │   ├── analysis.ts    # Analysis & reporting\n│   │   ├── comparison.ts  # Comparison tools\n│   │   ├── export.ts      # Export tools (CSV, Excel, JSON, HTML)\n│   │   ├── filter.ts      # Filtering and search tools\n│   │   ├── aggregate.ts   # Aggregation and statistics tools\n│   │   └── visualize.ts   # Visualization and dashboard tools\n│   ├── core/              # Core accessibility functionality\n│   │   ├── accessibility-runner.ts      # Accessibility execution\n│   │   ├── session-manager.ts  # Session handling\n│   │   ├── result-processor.ts # Result formatting\n│   │   ├── error-handler.ts    # Error handling\n│   │   └── progress-streamer.ts # Progress updates\n│   └── types/             # TypeScript types\n├── dist/                  # Compiled JavaScript\n├── wave.min.js           # Accessibility engine script (required)\n├── package.json\n├── tsconfig.json\n└── README.md\n```\n\n## 🔨 Local Development (Optional)\n\nIf you want to contribute or modify the code, you can set up a local development environment:\n\n### Prerequisites for Local Development\n\n- Node.js 18+\n- npm or yarn\n\n### Setup Steps\n\n1. **Clone the repository**\n   ```bash\n   git clone <repository-url>\n   cd accessibility-mcp-server\n   ```\n\n2. **Install dependencies**\n   ```bash\n   npm install\n   ```\n\n3. **Install Playwright browsers**\n   ```bash\n   npx playwright install --with-deps chromium\n   ```\n\n4. **Build the project**\n   ```bash\n   npm run build\n   ```\n\n5. **Verify accessibility script**\n   - Ensure `wave.min.js` is present in the project root\n\n### Running Locally\n\n**Development Mode (with watch)**\n```bash\nnpm run dev\n```\n\n**Production Mode**\n```bash\nnpm start\n```\n\n### Using Local Version in MCP Client\n\nIf you want to use the local version instead of the published package:\n\n```json\n{\n  \"mcpServers\": {\n    \"accessibility-audit\": {\n      \"command\": \"node\",\n      \"args\": [\"/absolute/path/to/accessibility-mcp-server/dist/server.js\"]\n    }\n  }\n}\n```\n\n**Note**: Use absolute paths in your configuration.\n\n## 🔑 Key Differentiators\n\n1. **Zero Setup Required** - Just add config and use! No installation, building, or manual setup needed\n2. **Conversational Interface** - Results formatted for natural language understanding\n3. **Session Management** - Only MCP with reusable authenticated sessions for protected pages\n4. **Educational Focus** - `explain_issue` teaches accessibility concepts, not just reports problems\n5. **Code-Level Fixes** - Actual before/after code examples, not just descriptions\n6. **Progress Updates** - Streaming progress for long-running batch operations\n7. **Smart Prioritization** - AI-powered issue prioritization with quick wins identification\n8. **Compliance Reports** - Automated VPAT/WCAG/ADA/Section 508 documentation\n9. **Tag Filtering** - Filter by specific WCAG levels to reduce noise and focus on what matters\n10. **25+ Tools** - Comprehensive suite covering auditing, analysis, reporting, export, and more\n\n## 📄 License\n\nMIT License - feel free to use in your projects!\n\n## 🤝 Contributing\n\nContributions are welcome! Please ensure all code follows the existing style and includes appropriate tests.\n\n## 🆘 Support\n\nFor issues, questions, or contributions, please open an issue on the repository.\n\n---\n\n**Happy accessibility testing! ♿✨**\n","readmeFilename":"README.md"}