End to End testing MCP Server
by m2rads
This is a Model Context Protocol (MCP) server powered by Playwright for automated end-to-end testing with LLM-driven validation. It separates testing concerns from the MCP client and is optimized for end-to-end testing.
Last updated: N/A
End to End testing MCP Server
https://github.com/user-attachments/assets/b801f239-dc66-4b3b-bcf2-42e2a9a68721
A Model Context Protocol (MCP) server powered by Playwright that provides automated end-to-end testing with dedicated LLM-driven test validation, separating testing concerns from the MCP client.
Note: This MCP is forked from Microsoft's Playwright MCP. We optimized Playwright MCP for automated end to end testing.
Key Features
- Fast and lightweight: Uses Playwright's accessibility tree, not pixel-based input.
- LLM-friendly: No vision models needed, operates purely on structured data.
- Deterministic tool application: Avoids ambiguity common with screenshot-based approaches.
Use Cases
- Automated testing driven by LLMs
Example config
After cloning this repo, build and add the E2E MCP server to your MCP Client as such: Notice that you need OpenAI API key to run this MCP server in end to end mode.
npm install
npx playwright install
npm run build
Then:
{
"mcpServers": {
"e2e": {
"command": "node",
"args": [
"/Users/Documents/projects/e2e-mcp/lib/program.js",
"--endtoend",
"--api-key=<your openai api key>"
]
}
}
}
User data directory
E2E MCP will launch Chrome browser with the new profile, located at
- `%USERPROFILE%\AppData\Local\ms-playwright\mcp-chrome-profile` on Windows
- `~/Library/Caches/ms-playwright/mcp-chrome-profile` on macOS
- `~/.cache/ms-playwright/mcp-chrome-profile` on Linux
All the logged in information will be stored in that profile, you can delete it between sessions if you'dlike to clear the offline state.