{"slug": "playwright-mcp", "name": "Playwright MCP", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "Microsoft's MCP server that lets LLM agents control a web browser through Playwright.", "recommenders": 5, "commenters": 10, "warners": 1, "score": 4.19, "rising": -1.64, "first": "2025-12-15", "latest": "2026-10-20", "why": "HN commenters use it to let coding agents like Claude Code drive a browser and take screenshots, closing the feedback loop so the agent can check its own work.", "why_is_quote": false, "has_verdict": true, "sentiment": {"recommend": 5, "neutral": 3, "compare": 1, "warn": 1}, "spark": [0, 1, 2, 0, 1, 1, 0, 0, 0, 0, 0, 0], "listed": true, "loved": ["Agent feedback loop", "Claude Code pairing"], "caveat": "Speed", "short_quote": "with playwright-mcp its completely absolved the need for UX designers in my workflow", "icon": true, "domain": null, "github_repo": "github.com/microsoft/playwright-mcp", "official_url": "https://github.com/microsoft/playwright-mcp", "pricing": "open source", "aliases": ["Playwright MCP", "playwright-mcp"], "verdict": [{"text": "HN commenters use it to let coding agents like Claude Code drive a browser and take screenshots", "cites": [{"id": 764103249, "item_id": 47756453, "url": "https://news.ycombinator.com/item?id=47756453", "by": "khasan222", "date": "2026-04-13", "stance": "recommend", "quote": "now I use playwright mcp for the screenshots and the browser interactions", "excerpt": "Hey, one thing I made with this technique is hartwork.life a simple Wordpress store for a friend. I used open ai to design it for me, and then used the techniques above to get Claude code to implement the proper designs. I am still trying to learn how to wrangle Claude properly, but I have this Claude.md[1] for that I used to make the website. In particular one of the last rules about using imageMagick for comparison", "context": "", "use_case": "screenshots and browser interaction", "switched_from": "ImageMagick", "story": "Why AI Sucks at Front End"}, {"id": 742866273, "item_id": 46429142, "url": "https://news.ycombinator.com/item?id=46429142", "by": "anonzzzies", "date": "2025-12-29", "stance": "recommend", "quote": "just my vanilla claude code with playwright mcp runs circles around it", "excerpt": "I wish I got out more. I used to go a lot to meetups and sit next to people 'closer to the hype' showing me the cutting edge stuff; often it was just a 'meh' experience vs the 'this is like seeing god' type of comments on hn/reddit and sometimes it is an eye opener (rarely). The 'meh' is usually when people claim it is 10000x more productive: I sit next to them and seeing them struggle to get even the basics done; af", "context": "", "use_case": "browser automation for agent", "switched_from": "", "story": "Karpathy on Programming"}, {"id": 748125266, "item_id": 46757829, "url": "https://news.ycombinator.com/item?id=46757829", "by": "yieldcrv", "date": "2026-01-25", "stance": "recommend", "quote": "with playwright-mcp its completely absolved the need for UX designers in my workflow", "excerpt": ".gitignore > # Claude Code > .claude/ Congratulations! I love seeing people express themselves to release things that were previously not economically viable to prioritize Forget worrying about a 10x dev, Claude Code with the Opus 4.5 model has turned me into a 100x developer even in software stacks I'm not even familiar with. And with playwright-mcp its completely absolved the need for UX designers in my workflow be", "context": "", "use_case": "UX reference for design", "switched_from": "", "story": "A macOS app that blurs your screen when you slouch"}]}, {"text": ", closing the feedback loop so the agent can check its own work.", "cites": [{"id": 748693888, "item_id": 46793368, "url": "https://news.ycombinator.com/item?id=46793368", "by": "theblazehen", "date": "2026-01-28", "stance": "recommend", "quote": "for web the playwright mcp", "excerpt": "It can. For android, I have it dump screenshots and uiautomator xml dumps, and for web the playwright mcp. I find that a critical step in agentic development is to close the loop for the LLM so it can get direct feedback without needing you to manually handle it.", "context": "", "use_case": "closing the loop for web testing with AI agents", "switched_from": "", "story": "Ask HN: Why can't Codex/Claude compile app and test that changes worked?"}, {"id": 774904549, "item_id": 48431534, "url": "https://news.ycombinator.com/item?id=48431534", "by": "nimonian", "date": "2026-06-06", "stance": "neutral", "quote": "validate (e.g. using playwright mcp)", "excerpt": "I do quite a lot of what this post describes in a reasonably large project. Here's what works for me: - write gherkin features for new features; update them for enhancements; don't touch them for refactors. Label your PRs with these nouns. - use pre-push hooks for type checks, linting, unit tests, and other quick, scriptable validations. - make a viteperess subsite in your repo, have the agents maintain it - document", "context": "works on a reasonably large project with agents", "use_case": "agent validation", "switched_from": "", "story": "Harness engineering: Leveraging Codex in an agent-first world"}]}, {"text": " The complaints are that it can be slow", "cites": [{"id": 802624848, "item_id": 50164053, "url": "https://news.ycombinator.com/item?id=50164053", "by": "ReservedSnow", "date": "2026-10-20", "stance": "warn", "quote": "I use playwright MCP and it's too slow, doesn't understand anything", "excerpt": "How are you making it fast? I use playwright MCP and it's too slow, doesn't understand anything, how to test it fully.", "context": "", "use_case": "agent browser testing", "switched_from": "", "story": "Show HN: Make AI coding agents verify its own work"}]}, {"text": " and that it uses more context than alternatives such as Playwriter.", "cites": [{"id": 740430641, "item_id": 46276915, "url": "https://news.ycombinator.com/item?id=46276915", "by": "xmorse", "date": "2025-12-15", "stance": "compare", "quote": "It consumes less context than playwright MCP", "excerpt": "https://playwriter.dev A browser automation Chrome extension and MCP. It consumes less context than playwright MCP and is more capable: it uses the playwright API directly, the Chrome extension is a CDP protocol proxy via WebSockets. I use it for automating workflows in development but also filing taxes and other boring tasks", "context": "", "use_case": "browser automation", "switched_from": "", "story": "Ask HN: What Are You Working On? (December 2025)"}]}], "praise": [{"label": "Agent feedback loop", "summary": "Gives the LLM direct browser feedback so it can validate its work without manual help.", "quotes": [{"id": 748693888, "item_id": 46793368, "url": "https://news.ycombinator.com/item?id=46793368", "by": "theblazehen", "date": "2026-01-28", "stance": "recommend", "quote": "for web the playwright mcp", "excerpt": "It can. For android, I have it dump screenshots and uiautomator xml dumps, and for web the playwright mcp. I find that a critical step in agentic development is to close the loop for the LLM so it can get direct feedback without needing you to manually handle it.", "context": "", "use_case": "closing the loop for web testing with AI agents", "switched_from": "", "story": "Ask HN: Why can't Codex/Claude compile app and test that changes worked?"}, {"id": 774904549, "item_id": 48431534, "url": "https://news.ycombinator.com/item?id=48431534", "by": "nimonian", "date": "2026-06-06", "stance": "neutral", "quote": "validate (e.g. using playwright mcp)", "excerpt": "I do quite a lot of what this post describes in a reasonably large project. Here's what works for me: - write gherkin features for new features; update them for enhancements; don't touch them for refactors. Label your PRs with these nouns. - use pre-push hooks for type checks, linting, unit tests, and other quick, scriptable validations. - make a viteperess subsite in your repo, have the agents maintain it - document", "context": "works on a reasonably large project with agents", "use_case": "agent validation", "switched_from": "", "story": "Harness engineering: Leveraging Codex in an agent-first world"}, {"id": 764103249, "item_id": 47756453, "url": "https://news.ycombinator.com/item?id=47756453", "by": "khasan222", "date": "2026-04-13", "stance": "recommend", "quote": "now I use playwright mcp for the screenshots and the browser interactions", "excerpt": "Hey, one thing I made with this technique is hartwork.life a simple Wordpress store for a friend. I used open ai to design it for me, and then used the techniques above to get Claude code to implement the proper designs. I am still trying to learn how to wrangle Claude properly, but I have this Claude.md[1] for that I used to make the website. In particular one of the last rules about using imageMagick for comparison", "context": "", "use_case": "screenshots and browser interaction", "switched_from": "ImageMagick", "story": "Why AI Sucks at Front End"}]}, {"label": "Claude Code pairing", "summary": "Commenters say plain Claude Code with Playwright MCP works well, even beating hyped setups.", "quotes": [{"id": 742866273, "item_id": 46429142, "url": "https://news.ycombinator.com/item?id=46429142", "by": "anonzzzies", "date": "2025-12-29", "stance": "recommend", "quote": "just my vanilla claude code with playwright mcp runs circles around it", "excerpt": "I wish I got out more. I used to go a lot to meetups and sit next to people 'closer to the hype' showing me the cutting edge stuff; often it was just a 'meh' experience vs the 'this is like seeing god' type of comments on hn/reddit and sometimes it is an eye opener (rarely). The 'meh' is usually when people claim it is 10000x more productive: I sit next to them and seeing them struggle to get even the basics done; af", "context": "", "use_case": "browser automation for agent", "switched_from": "", "story": "Karpathy on Programming"}, {"id": 748125266, "item_id": 46757829, "url": "https://news.ycombinator.com/item?id=46757829", "by": "yieldcrv", "date": "2026-01-25", "stance": "recommend", "quote": "with playwright-mcp its completely absolved the need for UX designers in my workflow", "excerpt": ".gitignore > # Claude Code > .claude/ Congratulations! I love seeing people express themselves to release things that were previously not economically viable to prioritize Forget worrying about a 10x dev, Claude Code with the Opus 4.5 model has turned me into a 100x developer even in software stacks I'm not even familiar with. And with playwright-mcp its completely absolved the need for UX designers in my workflow be", "context": "", "use_case": "UX reference for design", "switched_from": "", "story": "A macOS app that blurs your screen when you slouch"}]}, {"label": "Screenshots and interactions", "summary": "Used for screenshots and browser interactions, replacing an ImageMagick-based comparison step.", "quotes": [{"id": 764103249, "item_id": 47756453, "url": "https://news.ycombinator.com/item?id=47756453", "by": "khasan222", "date": "2026-04-13", "stance": "recommend", "quote": "now I use playwright mcp for the screenshots and the browser interactions", "excerpt": "Hey, one thing I made with this technique is hartwork.life a simple Wordpress store for a friend. I used open ai to design it for me, and then used the techniques above to get Claude code to implement the proper designs. I am still trying to learn how to wrangle Claude properly, but I have this Claude.md[1] for that I used to make the website. In particular one of the last rules about using imageMagick for comparison", "context": "", "use_case": "screenshots and browser interaction", "switched_from": "ImageMagick", "story": "Why AI Sucks at Front End"}]}, {"label": "Agent browser access", "summary": "Recommended as a way to give an agent browser control.", "quotes": [{"id": 760055507, "item_id": 47503469, "url": "https://news.ycombinator.com/item?id=47503469", "by": "hwartig", "date": "2026-03-24", "stance": "recommend", "quote": "https://github.com/microsoft/playwright-mcp", "excerpt": "I'd recommend chrome(ium) headless https://developer.chrome.com/docs/chromium/headless . It works with various drivers like puppeteer, selenium and playwright for some added convenience. At https://checklyhq.com we and our customers use it heavily and reliably through playwright for various monitoring, testing and automation use cases. As you want to use it from an Agent you also should take a look at https://develop", "context": "", "use_case": "agent browser control", "switched_from": "", "story": "What are the best headless browsers?"}]}, {"label": "UX reference", "summary": "One commenter points it at established websites to borrow their UX principles.", "quotes": [{"id": 748125266, "item_id": 46757829, "url": "https://news.ycombinator.com/item?id=46757829", "by": "yieldcrv", "date": "2026-01-25", "stance": "recommend", "quote": "with playwright-mcp its completely absolved the need for UX designers in my workflow", "excerpt": ".gitignore > # Claude Code > .claude/ Congratulations! I love seeing people express themselves to release things that were previously not economically viable to prioritize Forget worrying about a 10x dev, Claude Code with the Opus 4.5 model has turned me into a 100x developer even in software stacks I'm not even familiar with. And with playwright-mcp its completely absolved the need for UX designers in my workflow be", "context": "", "use_case": "UX reference for design", "switched_from": "", "story": "A macOS app that blurs your screen when you slouch"}]}], "caveats": [{"label": "Speed", "summary": "One user finds it too slow and says it doesn't understand enough to test fully.", "quotes": [{"id": 802624848, "item_id": 50164053, "url": "https://news.ycombinator.com/item?id=50164053", "by": "ReservedSnow", "date": "2026-10-20", "stance": "warn", "quote": "I use playwright MCP and it's too slow, doesn't understand anything", "excerpt": "How are you making it fast? I use playwright MCP and it's too slow, doesn't understand anything, how to test it fully.", "context": "", "use_case": "agent browser testing", "switched_from": "", "story": "Show HN: Make AI coding agents verify its own work"}]}, {"label": "Context usage", "summary": "Playwriter is said to consume less context and be more capable.", "quotes": [{"id": 740430641, "item_id": 46276915, "url": "https://news.ycombinator.com/item?id=46276915", "by": "xmorse", "date": "2025-12-15", "stance": "compare", "quote": "It consumes less context than playwright MCP", "excerpt": "https://playwriter.dev A browser automation Chrome extension and MCP. It consumes less context than playwright MCP and is more capable: it uses the playwright API directly, the Chrome extension is a CDP protocol proxy via WebSockets. I use it for automating workflows in development but also filing taxes and other boring tasks", "context": "", "use_case": "browser automation", "switched_from": "", "story": "Ask HN: What Are You Working On? (December 2025)"}]}], "who": [{"by": "nimonian", "context": "works on a reasonably large project with agents", "url": "https://news.ycombinator.com/item?id=48431534", "date": "2026-06-06"}], "tags": ["for AI coding agents", "for Claude Code users", "for UI validation"], "use_cases": ["browser automation", "agent browser testing", "agent validation", "screenshots and browser interaction", "agent browser control", "closing the loop for web testing with ai agents"], "compared": [{"slug": "claude-code", "name": "Claude Code", "co": 5, "switched_from": 0, "switched_to": 0}, {"slug": "imagemagick", "name": "ImageMagick", "co": 1, "switched_from": 1, "switched_to": 0}, {"slug": "claude-opus", "name": "Claude Opus", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=50163896", "title": "Show HN: Make AI coding agents verify its own work", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48416264", "title": "Harness engineering: Leveraging Codex in an agent-first world", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47738864", "title": "Why AI Sucks at Front End", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47503112", "title": "What are the best headless browsers?", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46792066", "title": "Ask HN: Why can't Codex/Claude compile app and test that changes worked?", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46754944", "title": "A macOS app that blurs your screen when you slouch", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {"compare": 1, "neutral": 1, "recommend": 1}, "2026-01": {"neutral": 1, "recommend": 2}, "2026-02": {}, "2026-03": {"recommend": 1}, "2026-04": {"recommend": 1}, "2026-05": {}, "2026-06": {"neutral": 1}, "2026-07": {}, "2026-08": {}, "2026-09": {}, "2026-10": {"warn": 1}}, "quotes": [{"id": 802624848, "item_id": 50164053, "url": "https://news.ycombinator.com/item?id=50164053", "by": "ReservedSnow", "date": "2026-10-20", "stance": "warn", "quote": "I use playwright MCP and it's too slow, doesn't understand anything", "excerpt": "How are you making it fast? I use playwright MCP and it's too slow, doesn't understand anything, how to test it fully.", "context": "", "use_case": "agent browser testing", "switched_from": "", "story": "Show HN: Make AI coding agents verify its own work"}, {"id": 774904549, "item_id": 48431534, "url": "https://news.ycombinator.com/item?id=48431534", "by": "nimonian", "date": "2026-06-06", "stance": "neutral", "quote": "validate (e.g. using playwright mcp)", "excerpt": "I do quite a lot of what this post describes in a reasonably large project. Here's what works for me: - write gherkin features for new features; update them for enhancements; don't touch them for refactors. Label your PRs with these nouns. - use pre-push hooks for type checks, linting, unit tests, and other quick, scriptable validations. - make a viteperess subsite in your repo, have the agents maintain it - document", "context": "works on a reasonably large project with agents", "use_case": "agent validation", "switched_from": "", "story": "Harness engineering: Leveraging Codex in an agent-first world"}, {"id": 764103249, "item_id": 47756453, "url": "https://news.ycombinator.com/item?id=47756453", "by": "khasan222", "date": "2026-04-13", "stance": "recommend", "quote": "now I use playwright mcp for the screenshots and the browser interactions", "excerpt": "Hey, one thing I made with this technique is hartwork.life a simple Wordpress store for a friend. I used open ai to design it for me, and then used the techniques above to get Claude code to implement the proper designs. I am still trying to learn how to wrangle Claude properly, but I have this Claude.md[1] for that I used to make the website. In particular one of the last rules about using imageMagick for comparison", "context": "", "use_case": "screenshots and browser interaction", "switched_from": "ImageMagick", "story": "Why AI Sucks at Front End"}, {"id": 760055507, "item_id": 47503469, "url": "https://news.ycombinator.com/item?id=47503469", "by": "hwartig", "date": "2026-03-24", "stance": "recommend", "quote": "https://github.com/microsoft/playwright-mcp", "excerpt": "I'd recommend chrome(ium) headless https://developer.chrome.com/docs/chromium/headless . It works with various drivers like puppeteer, selenium and playwright for some added convenience. At https://checklyhq.com we and our customers use it heavily and reliably through playwright for various monitoring, testing and automation use cases. As you want to use it from an Agent you also should take a look at https://develop", "context": "", "use_case": "agent browser control", "switched_from": "", "story": "What are the best headless browsers?"}, {"id": 748693888, "item_id": 46793368, "url": "https://news.ycombinator.com/item?id=46793368", "by": "theblazehen", "date": "2026-01-28", "stance": "recommend", "quote": "for web the playwright mcp", "excerpt": "It can. For android, I have it dump screenshots and uiautomator xml dumps, and for web the playwright mcp. I find that a critical step in agentic development is to close the loop for the LLM so it can get direct feedback without needing you to manually handle it.", "context": "", "use_case": "closing the loop for web testing with AI agents", "switched_from": "", "story": "Ask HN: Why can't Codex/Claude compile app and test that changes worked?"}, {"id": 748125266, "item_id": 46757829, "url": "https://news.ycombinator.com/item?id=46757829", "by": "yieldcrv", "date": "2026-01-25", "stance": "recommend", "quote": "with playwright-mcp its completely absolved the need for UX designers in my workflow", "excerpt": ".gitignore > # Claude Code > .claude/ Congratulations! I love seeing people express themselves to release things that were previously not economically viable to prioritize Forget worrying about a 10x dev, Claude Code with the Opus 4.5 model has turned me into a 100x developer even in software stacks I'm not even familiar with. And with playwright-mcp its completely absolved the need for UX designers in my workflow be", "context": "", "use_case": "UX reference for design", "switched_from": "", "story": "A macOS app that blurs your screen when you slouch"}, {"id": 744251264, "item_id": 46515704, "url": "https://news.ycombinator.com/item?id=46515704", "by": "zjimy82", "date": "2026-01-06", "stance": "neutral", "quote": "Using Playwright MCP a lot", "excerpt": "Upstream means Shiftleft in better words, we follow from while back , but yet not get solid success to automate mundane flows, Using Playwright MCP a lot , but always worried about unknown unknown zone before every release.", "context": "", "use_case": "automating QA flows", "switched_from": "", "story": "Ask HN: What's the future of software testing and QA?"}, {"id": 742866273, "item_id": 46429142, "url": "https://news.ycombinator.com/item?id=46429142", "by": "anonzzzies", "date": "2025-12-29", "stance": "recommend", "quote": "just my vanilla claude code with playwright mcp runs circles around it", "excerpt": "I wish I got out more. I used to go a lot to meetups and sit next to people 'closer to the hype' showing me the cutting edge stuff; often it was just a 'meh' experience vs the 'this is like seeing god' type of comments on hn/reddit and sometimes it is an eye opener (rarely). The 'meh' is usually when people claim it is 10000x more productive: I sit next to them and seeing them struggle to get even the basics done; af", "context": "", "use_case": "browser automation for agent", "switched_from": "", "story": "Karpathy on Programming"}, {"id": 741544945, "item_id": 46346559, "url": "https://news.ycombinator.com/item?id=46346559", "by": "yoan9224", "date": "2025-12-21", "stance": "neutral", "quote": "tools like Claude Code and Playwright MCP", "excerpt": "The security concerns here are valid, but I think people are missing the practical reality: we've already crossed the Rubicon with tools like Claude Code and Playwright MCP. I've been running Claude Code with full system access for months - it can already read files, execute bash, git commit, push code. Adding browser automation via an extension is actually less risky than what we're already doing with terminal acces", "context": "", "use_case": "browser automation", "switched_from": "", "story": "Claude in Chrome"}, {"id": 740430641, "item_id": 46276915, "url": "https://news.ycombinator.com/item?id=46276915", "by": "xmorse", "date": "2025-12-15", "stance": "compare", "quote": "It consumes less context than playwright MCP", "excerpt": "https://playwriter.dev A browser automation Chrome extension and MCP. It consumes less context than playwright MCP and is more capable: it uses the playwright API directly, the Chrome extension is a CDP protocol proxy via WebSockets. I use it for automating workflows in development but also filing taxes and other boring tasks", "context": "", "use_case": "browser automation", "switched_from": "", "story": "Ask HN: What Are You Working On? (December 2025)"}]}