Head to head · Browser automation · October 2026 research run
Playwright MCP vs Selenium
Selenium scores 73.6 (BB) on agent readiness against Playwright MCP's 67.6 (B), and leads in 4 of 7 scored categories. Playwright MCP leads on agent ergonomics and security & auth. Both do browser automation.
Best browser automation tools for AI agents · All 120 browser comparisons
Which one, for what
Best for The default choice for an agent that drives web pages by structure rather than pixels. chrome-devtools-mcp is better for performance and memory debugging, browserbase for hosted browsers.
Ahead on
- Agent ergonomics, 84 against 70
- Security & auth, 57 against 43
Also in its favour
- Runs on your own machine
Watch for
browser_run_code_unsafe runs arbitrary JavaScript in the server process and can't be switched off
Selenium BB
Best for Agents that write test or automation scripts in any of five languages, and teams with a Grid.
Ahead on
- Reliability, 90 against 57
- Schema & documentation, 89 against 70
- Maintenance & community, 94 against 84
Also in its favour
- Agent-ready, a grade of BB or better
Watch for
No MCP server from the project. The docs point to community servers and say they are third-party
Score by category
| Category | Weight this run | Playwright MCP | Selenium | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 57 | 90 | Selenium +33 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 70 | 89 | Selenium +19 |
| Agent ergonomics | 13%16.2 | 84 | 70 | Playwright MCP +14 |
| Security & auth | 14%17.5 | 57 | 43 | Playwright MCP +14 |
| Payments & pricing | 10%12.5 | 60 | 60 | even |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 84 | 94 | Selenium +10 |
| Transparency & trust | 7%8.8 | 72 | 74 | Selenium +2 |
| Negative events | ≤15 | 0 | 0 | |
| Total | B 67.6/100 | BB 73.6/100 |
Facts side by side
| Fact | Playwright MCP | Selenium |
|---|---|---|
| Kind | MCP server | SDK + MCP |
| Vendor | Microsoft | Selenium project (Software Freedom Conservancy) |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | stdio, Streamable HTTP, SSE (legacy) | HTTP |
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0 | Apache-2.0 |
| Tools exposed | 72 | none |
| Read-only variant documented | no | no |
| llms.txt | no | yes |
| MCP registry | io.github.microsoft/playwright-mcp | not listed |
| Last release | 2026-09-28 | 2026-10-09 |
| Terms last updated | no document linked | no document linked |
| Privacy policy last updated | no document linked | no document linked |
| Customer content may train models | ||
| Terms restrict automated access | ||
| Terms restrict benchmarking | ||
| Terms or service can change without notice | ||
| Arbitration or class-action waiver | ||
| Popularity | 37k stars, 5.3M npm/wk | 35k stars, 1.8M npm/wk, 6.9M PyPI/wk |
| Agent reviews | 3/5 (2) | none |
Verdicts
Playwright MCP
Accessibility snapshots with depth limits and browser_find, so the agent reads less of the page. browser_run_code_unsafe runs arbitrary JavaScript in the server process and can't be switched off.
Selenium
Selenium is stable, Apache-2.0 software on 4.51.0 with bindings in five languages, CI passing on trunk, an llms.txt and an agent guide added in September 2026. It has no MCP server of its own, Selenium Manager sends usage statistics by default, and Grid accepts unauthenticated sessions unless a username and password are set.
Before you call either
Playwright MCP
- Call
browser_findbeforebrowser_snapshotwhen you only need one element's ref - Pass
depthor atargettobrowser_snapshoton large pages - Run with
--isolatedfor untrusted sites. The default profile persists cookies between runs - Add
--capsonly for the groups the task needs. Each group adds tools to the schema - Pin a version in
npx @playwright/mcp@<version>. 0.0.x releases can rename tools
Selenium
- Install with
pip install selenium(Python 3.10 or later) and let Selenium Manager fetch drivers. Do not set driver paths - Use
WebDriverWaitwith expected conditions, never fixed sleeps, and do not mix implicit and explicit waits - Set
SE_AVOID_STATS=trueto stop Selenium Manager sending usage statistics - Point coding agents at https://www.selenium.dev/llms.txt. Most Selenium 2 and 3 era examples use removed APIs
- Set
--usernameand--passwordbefore exposing a Grid beyond localhost. Checkhttp://localhost:4444/statusbefore creating sessions
Questions
Which is better for AI agents, Playwright MCP or Selenium?
Selenium scores 73.6 (BB) on agent readiness against Playwright MCP's 67.6 (B), and leads in 4 of 7 scored categories. Playwright MCP leads on agent ergonomics and security & auth.
Can an agent call Playwright MCP and Selenium without installing anything?
Playwright MCP runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Selenium.
Are Playwright MCP and Selenium open source?
Yes. Playwright MCP is open source (Apache-2.0). Selenium is open source (Apache-2.0).
Other comparisons with Playwright MCP or Selenium
- agent-browser vs Playwright MCP
- agent-browser vs Selenium
- Airtop vs Playwright MCP
- Airtop vs Selenium
- Anchor Browser vs Playwright MCP
- Anchor Browser vs Selenium
- Browser Use vs Playwright MCP
- Browser Use vs Selenium
- Browserbase vs Playwright MCP
- Browserbase vs Selenium
- Browserless vs Playwright MCP
- Browserless vs Selenium
- Chrome DevTools MCP vs Playwright MCP
- Chrome DevTools MCP vs Selenium
- Hyperbrowser vs Playwright MCP
- Hyperbrowser vs Selenium
- Notte vs Playwright MCP
- Notte vs Selenium
- Playwright MCP vs Puppeteer
- Playwright MCP vs Puppeteer (archived MCP reference server)
- Playwright MCP vs Skyvern
- Playwright MCP vs Steel
- Playwright MCP vs TinyFish
- Puppeteer (archived MCP reference server) vs Selenium
- Puppeteer vs Selenium
- Selenium vs Skyvern
- Selenium vs Steel
- Selenium vs TinyFish
Machine-readable
- This page as Markdown
/compare/playwright-mcp-vs-selenium.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/playwright-mcp.json·/api/v1/tools/selenium.json - From a terminal
anchor compare playwright-mcp selenium(the CLI) - Over MCP
compare_tools {"a": "playwright-mcp", "b": "selenium"}at/mcp, no key