Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
The Playwright MCP server is the closest thing browser automation has to a standard right now. Built and maintained by Microsoft on top of the Playwright test framework, it gives your assistant a real Chromium, Firefox or WebKit instance to work with — and, unusually, it works from the accessibility tree rather than pixels. That means the model reads the page the way a screen reader would: structured, labelled elements it can reference precisely, instead of guessing coordinates on a screenshot.
In practice that design choice matters a lot. Vision-based automation breaks the moment a layout shifts a few pixels; accessibility-tree automation keeps working because it targets elements by role and name. It's also dramatically cheaper on tokens, since a structured snapshot is a fraction of the size of a base64 screenshot.
Typical session: ask your assistant to open your staging site, fill the signup form with test data, submit it, and report any console errors. The server handles navigation, form filling, tab management, file uploads and dialog handling, and can save a full trace for debugging. For anything you'd normally write a Playwright script for, you can now just describe the workflow in plain language first — then have the assistant generate the durable test script once the flow works.
One honest caveat: it launches a real browser locally, so it needs a machine with a display stack (headless works fine on servers). For fully cloud-hosted browsing, look at Browserbase instead — the two pair nicely.
browser_snapshot before every click. Element references are tied to the snapshot they came from, and a stale ref after a re-render is the single most common cause of a step failing for no obvious reason.--isolated when you want a throwaway profile per run, or --user-data-dir when you want cookies and logins to survive between sessions. The default sits between the two and surprises people.--caps (pdf, vision, tracing) only when a task needs them. A smaller toolset keeps the model focused and the context noticeably lighter.browser_console_messages paired with browser_network_requests answers most "why did the page break?" questions faster than any screenshot will.Describe the signup or checkout flow and let the assistant walk through it, reporting broken steps and console errors.
Prototype a flow interactively, then ask for the equivalent Playwright test file once it passes.
Pages that render client-side and defeat plain HTTP fetchers are readable through a real browser session.
Form submissions, dashboard exports and multi-step admin tasks that have no API.
| Tool | What it does |
|---|---|
| browser_navigate | Open a URL in the controlled browser |
| browser_snapshot | Capture an accessibility-tree snapshot of the current page — the primary way the model 'sees' |
| browser_click | Click an element referenced from the snapshot |
| browser_type | Type text into a field, with optional submit |
| browser_take_screenshot | Take a visual screenshot when pixels actually matter |
| browser_fill_form | Fill multiple form fields in one call |
| browser_tabs | List, open, switch and close browser tabs |
| browser_console_messages | Read the page's console output — invaluable for debugging |
claude mcp add playwright -- npx @playwright/mcp@latestRuns headless by default in most setups; pass --headless=false to watch the browser work.
Node.js 18+. First run downloads a browser binary (~130 MB) unless one is already installed via Playwright.
Industrial-strength web extraction — render, scrape, crawl and search entire sites into clean markdown.
The original Chromium automation reference server — simple, screenshot-driven browser control.
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Puppeteer-powered browser control that drives pages from the accessibility tree instead of pixels.
Cloud browsers for AI agents — automation sessions that run in Browserbase's fleet, not on your machine.
Put 6,000+ pre-built scrapers at your assistant's fingertips through one MCP endpoint.