MCPVault

annotateScreenshot

MCP tool from MCP Accessibility Scanner by JustasMonkev

(default false): capture an annotated screenshot of the violations

How to use it

annotateScreenshot is exposed by the MCP Accessibility Scanner MCP server. Add the server to your MCP client (Claude Desktop, Cursor, Windsurf and others), and the annotateScreenshot tool becomes available to the model automatically. See the full listing for setup details and every tool this server provides.

Install MCP Accessibility Scanner

$claude mcp add mcp-accessibility-scanner -s user -- docker run -i --rm justasmonkev/mcp-accessibility-scanner
FULL MCP ACCESSIBILITY SCANNER LISTING

Other tools in MCP Accessibility Scanner (39)

audit_keyboard

Audits real keyboard focus behavior by pressing Tab (and optional Shift+Tab) with practical heuristics.

audit_screen_reader

Audits what a screen reader actually announces, using the browser's own accessibility tree (page.ariaSnapshot) plus element geometry. No screen reader is installed or driven; this is a static reading of the exposed tree.

audit_site

Crawls and scans multiple internal pages, then aggregates violations across the site.

browser_click

Perform click on a web page element.

browser_close

Close the page.

browser_default_timeout

Set default operation timeout for existing tabs.

browser_drag

Perform drag and drop between two elements.

browser_drop

Simulate an external drag and drop of files or clipboard-like data onto an element, for testing drop zones that never see a drag start inside the page.

browser_evaluate

Evaluate a JavaScript expression on the page, or on a specific element when a ref is provided. The function's return value is serialized back as the result.

browser_fill_form

Fill multiple fields with one call.

browser_find

Search the current page accessibility snapshot without returning the full snapshot.

browser_hover

Hover over element on page.

browser_install

Install the configured browser engine (use when browser executable is missing).

browser_navigate

Navigate to a URL.

browser_navigate_back

Go back to the previous page.

browser_navigation_timeout

Set default navigation timeout for existing tabs.

browser_pdf_save

Save page as PDF.

browser_press_key

Press a key on the keyboard.

browser_resize

Resize the browser window.

browser_select_option

Select an option in a dropdown.

browser_snapshot

Capture accessibility snapshot of the current page (better than screenshot for analysis).

browser_tabs

Manage browser tabs in one tool.

browser_take_screenshot

Take a screenshot of the current page.

browser_type

Type text into editable element.

duplicate-accessible-name

sibling links with the same name that lead to different URLs (WCAG 2.4.4)

element

and ref must be supplied together, or not at all; supplying one without the other is rejected.

filename-as-accessible-name

image alt text that is a file name, e.g. IMG1234.jpg, DSC00123 (WCAG 1.1.1). Only images are checked: a link or button legitimately named after the file it downloads (logo.png) is not a defect.

includeIncomplete

(default true): also report Axe "incomplete" results

includeSelectors

/ excludeSelectors: CSS selectors that scope the scan

label-in-name-mismatch

the accessible name does not contain the visible label, which breaks voice control (WCAG 2.5.3). The visible label of <input type="submitbuttonreset"> is read from its value, and a web component's label is read from its open shadow root.

maxNodesPerViolation

(default 10): cap on nodes reported per rule

missing-accessible-name

controls and images exposed with no accessible name (WCAG 4.1.2)

paths

are read from the filesystem of the machine running the server, exactly as browserfileupload does, and a relative path resolves against the server's working directory. Unlike browserfileupload this needs no file chooser to be open, so any page with a dragover handler is a valid target — treat it as

reading-order-mismatch

accessibility tree order (what is read) versus visual position (WCAG 1.3.2), i.e. order, flex-direction: row-reverse, absolute positioning

scan_page

Performs a comprehensive accessibility scan on the current page using Axe-core.

scan_page_matrix

Runs Axe scans on the same page across viewport/media/zoom variants and compares deltas against baseline.

uninformative-accessible-name

names such as "click here", "read more", "image" that mean nothing out of context (WCAG 2.4.4)

violationsTag

Array of WCAG/violation tags to check

withRules

/ disableRules: Axe rule ids that narrow which rules run