Playwright
MCP Tutorial
2026
Connect an AI assistant to a real browser and let it navigate, click, type, inspect, test and investigate web applications using Playwright and the Model Context Protocol.
What exactly is Playwright MCP?
Playwright MCP is a Model Context Protocol server that exposes browser automation capabilities to AI assistants.
Instead of an AI assistant merely telling you how to interact with a web application, it can use Playwright MCP to actually open a browser, navigate to the application, inspect the page and interact with it.
Playwright MCP primarily works from structured accessibility snapshots. These describe elements such as headings, textboxes, buttons, checkboxes and links together with references that the AI can use for subsequent actions.
How MCP connects AI to the browser
AI Client
You describe what you want in natural language.
Playwright MCP
Exposes browser capabilities as tools that the AI can call.
Browser
Playwright performs the real browser actions against the application.
Normal AI assistant vs AI with Playwright MCP
Without browser tools
- AI explains what you should click
- AI writes sample automation code
- You execute the instructions
- AI cannot see current application state
- Debugging depends on what you provide
With Playwright MCP
- AI can navigate the application
- AI reads the current page structure
- AI can click and type
- AI can inspect updated state
- AI can perform multi-step browser tasks
Accessibility snapshots: how the AI “sees” the page
Playwright MCP does not need to rely solely on screenshots or guessed screen coordinates. It can receive structured information describing accessible page elements.
textbox "What needs to be done?" [ref=e5]
listitem
↳ checkbox "Toggle Todo" [ref=e10]
↳ text: Buy groceries
The model can identify that e5 is the textbox and then pass that reference to the next browser action.
browser_type {
target: "e5",
text: "Run regression tests"
}
Step 1 — Check the prerequisites
At the time of writing, Playwright's official MCP documentation requires Node.js 20 or newer plus an MCP-compatible client.
- Node.js 20+
- VS Code, Cursor, Windsurf, Claude Code, Claude Desktop or another MCP client
- An application or website to interact with
Step 2 — Add the Playwright MCP server
The standard MCP configuration is:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
}
}
}
Your MCP client determines where this configuration should be placed. Some clients also provide a UI for installing MCP servers.
Example client setup
VS Code
Playwright's documentation provides a command-line MCP installation option for VS Code.
Claude Code
The MCP server can be registered directly using Claude Code's MCP configuration command.
Cursor
Cursor lets you add an MCP server from its MCP settings using the Playwright npx command.
Claude Code example
claude mcp add playwright npx @playwright/mcp@latest
VS Code CLI example
code --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}'
Step 3 — Let the AI operate a real browser
Once MCP is connected, give your assistant a concrete browser task.
Navigate to https://demo.playwright.dev/todomvc, add “Run smoke tests”, add “Review defect report”, complete the first task and tell me how many active tasks remain.
Behind the scenes, the interaction follows a repeated loop.
Navigate
Playwright opens the requested application in a browser.
Receive a snapshot
The MCP server returns a structured representation of the current page state.
Reason
The AI identifies the relevant textbox, checkbox, button or link.
Interact
The AI calls the corresponding Playwright MCP tool using the relevant element reference.
Observe the new state
The next snapshot shows the changed application state, allowing the agent to continue.
The MCP browser interaction loop
What can QA engineers actually use it for?
Exploratory testing
Ask the agent to explore a workflow, identify unusual states or walk through critical user journeys.
Form testing
Populate fields, select options, submit data and inspect resulting behaviour.
Navigation testing
Follow links, verify navigation flows and check whether important user paths remain reachable.
Evidence capture
Capture screenshots where useful while retaining structured state for reasoning.
Network investigation
Inspect requests and investigate client-server behaviour during browser workflows.
API mocking
Mock selected network responses to investigate UI behaviour under controlled backend conditions.
Authenticated journeys
Persist or restore browser state so authenticated workflows can be reused across sessions where appropriate.
Debugging
Combine browser state, console information and network activity to investigate failures.
Better prompts produce better testing
The agent still needs a useful testing objective. “Test this website” is usually a weak instruction.
Test the checkout page.
Explore the checkout flow from basket to confirmation. Focus on required-field validation, quantity changes, invalid discount codes and preserving the basket after validation errors. Do not submit a real order. Summarise any unexpected behaviour with reproduction steps.
Headed vs headless browser
Playwright MCP currently opens the browser in headed mode by default, which is particularly useful while learning because you can watch the agent perform actions.
For headless execution, add the headless argument:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest",
"--headless"
]
}
}
}
Choose another browser
You can also specify a browser.
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest",
"--browser=firefox"
]
}
}
}
Current documented browser options include Chrome, Firefox, WebKit and Microsoft Edge.
Persistent vs isolated sessions
Persistent profile
- Default mode
- Cookies can survive between sessions
- Login state can persist
- Useful for repeated workflows
Isolated profile
- Start with a clean session
- Useful for repeatable testing
- Avoid hidden state influencing results
- Can load predefined storage state
Playwright MCP is not the same as a regression test suite
| Use case | Playwright MCP | Playwright Test |
|---|---|---|
| Interactive AI exploration | Excellent fit | Not its primary purpose |
| Natural-language browser task | Excellent fit | Requires test/code creation |
| Repeatable CI regression suite | Possible supporting role | Excellent fit |
| Version-controlled test cases | Not the main model | Excellent fit |
| Exploratory investigation | Excellent fit | More scripted |
| Deterministic release gate | Use carefully | Preferred approach |
Be careful when giving an AI browser access
An MCP-enabled agent can perform real browser actions, so the same care you apply to automation credentials and test environments should apply here.
Use dedicated test users, restricted permissions and controlled environments whenever possible.
- Prefer test environments where possible
- Use least-privilege accounts
- Do not expose secrets unnecessarily
- Be cautious with destructive actions
- Review prompts before allowing purchases or data deletion
- Understand which browser profile and credentials are active
A particularly important advanced option
Playwright documents an unsafe code-execution capability for running arbitrary Playwright JavaScript in the MCP server process. Because this is effectively equivalent to remote code execution, it should only be enabled for trusted clients and trusted workflows.
A practical 6-step MCP testing approach
Define the mission
Specify the workflow, business risk and boundaries of the exploration.
Use controlled data
Choose safe test accounts and avoid accidental production changes.
Let the agent explore
Allow MCP to navigate, inspect and interact while you observe the reasoning outcome.
Challenge the happy path
Explicitly ask for negative, boundary and state-transition scenarios.
Review evidence
Check page state, screenshots, network behaviour and reported findings.
Convert valuable findings into tests
Where repeatability matters, turn proven scenarios into maintainable Playwright regression tests.
Frequently asked questions
What does MCP stand for?
Does Playwright MCP require screenshots?
Can Playwright MCP click and type on websites?
Can it work with Firefox or WebKit?
Is Playwright MCP a replacement for Playwright Test?
Can I use authenticated browser sessions?
Should testers learn MCP?
You have now connected AI reasoning to a real browser.
Playwright MCP demonstrates a major shift in automation: instead of only generating test code, AI systems can inspect current application state, choose browser actions and perform interactive workflows.
The next step is even more important for QA professionals: learning how to test AI agents themselves.
NEXT: HOW TO TEST AI AGENTS →