io.github.JustasMonkev/mcp-accessibility-scanner · version 5.0.0 · 2,305 weekly npm downloads · audited 2026-11-03
Notes
No hidden-instruction or invisible-character findings in any tool, prompt, or resource description.
Checks the directory's published tool requirements that are visible from tools/list. Passing them does not guarantee acceptance.
browser_navigate, browser_navigate_back, browser_network_requestbrowser_dropNot a vulnerability by itself. It tells you what an injected prompt could ask this server to do, so you can decide which tools need approval.
| Name | Title | Hint | Description |
|---|---|---|---|
browser_close | Close browser | read-only | Close the page |
browser_resize | Resize browser window | read-only | Resize the browser window |
browser_emulate_media | Emulate media features | writes | Emulate CSS media features for the page. Omitted parameters keep their current state. |
browser_console_messages | Get console messages | read-only | Returns all console messages |
browser_handle_dialog | Handle a dialog | destructive | Handle a dialog |
browser_evaluate | Evaluate JavaScript | destructive | Evaluate JavaScript expression on page or element |
browser_file_upload | Upload files | destructive | Upload one or multiple files |
browser_fill_form | Fill form | destructive | Fill multiple form fields |
browser_press_key | Press a key | destructive | Press a key on the keyboard |
browser_type | Type text | destructive | Type text into editable element |
browser_navigate | Navigate to a URL | destructive | Navigate to a URL |
browser_navigate_back | Go back | read-only | Go back to the previous page |
browser_network_requests | List network requests | read-only | Returns network requests since the last explicit navigation, optionally including up to 200 requests from earlier navigations in this tab |
browser_network_request | Get network request details | read-only | Returns credential-redacted headers and body metadata for a single network request listed by browser_network_requests |
browser_take_screenshot | Take a screenshot | read-only | Take a screenshot of the current page. You can't perform actions based on the screenshot, use browser_snapshot for actions. |
browser_session_open | Open browser session | writes | Open a separate browser session — its own browser context with its own tabs, cookies and storage — and return its browserSessionId. Pass that id as the optional browserSessionId argument of the non-session browser tools … |
browser_session_close | Close browser session | destructive | Close a browser session previously opened with browser_session_open and release its browser resources. The default session cannot be closed this way. |
browser_snapshot | Page snapshot | read-only | Capture accessibility snapshot of the current page, this is better than screenshot |
browser_find | Find in page snapshot | read-only | Search the accessibility snapshot of the current page for text or a regular expression. Returns matching snapshot nodes with a few lines of surrounding context, each shown under its path from the root of the tree. |
browser_click | Click | destructive | Perform click on a web page |
browser_drag | Drag mouse | destructive | Perform drag and drop between two elements |
browser_drop | Drop onto element | destructive | Simulate an external drag and drop of files or clipboard-like data onto an element |
browser_hover | Hover mouse | read-only | Hover over element on page |
browser_select_option | Select option | destructive | Select an option in a dropdown |
scan_page | Scan page for accessibility violations | destructive | Scan the current page for accessibility violations using Axe |
browser_tabs | Manage tabs | destructive | List, create, close, or select a browser tab. |
browser_navigation_timeout | Navigation timeout | destructive | Sets the timeout for navigation and page load actions. Only affects existing tabs and does not persist across browser context recreation. |
browser_default_timeout | Default timeout | destructive | Sets the default timeout for all Playwright operations (clicks, fills, etc). Only affects existing tabs and does not persist across browser context recreation. |
browser_wait_for | Wait for | read-only | Wait for text to appear or disappear or a specified time to pass. When both text and textGone are provided, waits for the first one to happen |
audit_site | Audit multiple pages | destructive | Crawl internal pages and aggregate accessibility violations across the site. |
scan_page_matrix | Scan accessibility variants | destructive | Run accessibility scans across viewport/media/zoom variants and compare with baseline. |
audit_keyboard | Audit keyboard focus flow | destructive | Audit keyboard tab order, focus visibility, jumps, skip links, and focus traps. |
audit_screen_reader | Audit screen reader experience | read-only | Audit accessible name quality and reading order using the browser accessibility tree and element geometry. |
npx mcpvetter scan --liveAdd this to a README:
[](https://mcpvetter.com/servers/mcp-accessibility-scanner)Get the MCPVetter verified badge, a re-audit within 24 hours of every npm release, and an email whenever tools, findings, or Claude directory readiness change. $29 per server per month. You prove ownership first, free.