A side-by-side look at the CDPM and MCP Accessibility Scanner MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose CDPM for browser automation work as a local process; choose MCP Accessibility Scanner for browser automation as a local process. You can also run both side by side in one mcpServers block.
browser_status, browser_launch, browser_close.scan_page, audit_site, scan_page_matrix.Rows where the two servers differ are marked.
| Spec | C CDPM | |
|---|---|---|
| Category | Browser Automation | Browser Automation |
| Quality signal | 60/100 · Good | 61/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | No auth required | Not declared |
| Pricing | Free | Not declared |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 2 | 57 |
| Directory activity | 1 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 28 | 42 |
| Full listing | View CDPM | View MCP Accessibility Scanner |
browser_statusLive slots, tabs, openers, last actions, summaries, dialogsbrowser_launchStart a slot — only when the user asks; no `slot` = lowest free; `slots` (list) or `count` start several at once, lowest first; `url` / `urls` open a start page right away. Window or headless is the user's choice: if they didn't say, Claude asks first (without `headless`, a closed slot is not start…browser_closeClose gracefully (profile kept)browser_tabsList / open in background (returns ID) / close / bring to front (only when the user wants)browser_snapshotAccessibility text with refs; `page`, `find`, `refbrowser_textReadable text (main/article first, or one `ref`), paginatedbrowser_screenshotVisible area as PNG, background tabs included; no full-page capturebrowser_navigateWaits for load; slow servers are reported as "still loading", not as errorsbrowser_clickReal mouse click; reports covering elements, new tabs, form-validation failuresbrowser_typeReal key events per character (`clear`, `submit`, `fast`); verifies the value and does not press Enter for `submit` if the value differs (the site rejected or reformatted the input); date/time inputs are set after format validationbrowser_fillFill several inputs on one page in order, then optionally `submit` ("Enter" or a button ref); stops at the first failure, page change, dialog or a field whose value differs from what was typed (nothing is submitted then)browser_dialogAccept or dismiss an open alert/confirm/prompt/beforeunload (`text` for prompt). Claude decides from the messagescan_pagePerforms a comprehensive accessibility scan on the current page using Axe-core.audit_siteCrawls and scans multiple internal pages, then aggregates violations across the site.scan_page_matrixRuns Axe scans on the same page across viewport/media/zoom variants and compares deltas against baseline.audit_keyboardAudits real keyboard focus behavior by pressing Tab (and optional Shift+Tab) with practical heuristics.audit_screen_readerInspects the browser's accessibility tree (`page.ariaSnapshot`), accessible names and element geometry for potential accessibility issues. No actual screen reader is installed or driven, and its announcements and interactions are not tested.browser_navigateNavigate to a URL.browser_navigate_backGo back to the previous page.browser_navigation_timeoutSet default navigation timeout for existing tabs.browser_default_timeoutSet default operation timeout for existing tabs.browser_snapshotCapture accessibility snapshot of the current page (better than screenshot for analysis).browser_findSearch the current page accessibility snapshot without returning the full snapshot.browser_clickPerform click on a web page element.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"igelharine-cdpm": {
"command": "npx",
"args": [
"-y",
"cdpm-mcp"
]
}
}
}
{
"mcpServers": {
"mcp-accessibility-scanner": {
"command": "npx",
"args": [
"-y",
"--allow-scripts=re2",
"mcp-accessibility-scanner"
]
}
}
}