Max Schmitt
6c3f3b6576
feat: add MCP Chrome extension ( #325 )
...
Instructions:
1. `git clone https://github.com/mxschmitt/playwright-mcp && git
checkout extension-drafft`
2. `npm ci && npm run build`
3. `chrome://extensions` in your normal Chrome, "load unpacked" and
select the extension folder.
4. `node cli.js --port=4242 --extension` - The URL it prints at the end
you can put into the extension popup.
5.
Put either this into Claude Desktop (it does not support SSE yet hence
wrapping it or just put the URL into Cursor/VSCode)
```json
{
"mcpServers": {
"playwright": {
"command": "bash",
"args": [
"-c",
"source $HOME/.nvm/nvm.sh && nvm use --silent 22 && npx supergateway --streamableHttp http://127.0.0.1:4242/mcp "
]
}
}
}
```
Things like `Take a snapshot of my browser.` should now work in your
Prompt Chat.
----
- SSE only for now, since we already have a http server with a port
there
- Upstream "page tests" can be executed over this CDP relay via
https://github.com/microsoft/playwright/pull/36286
- Limitations for now are everything what happens outside of the tab its
session is shared with -> `window.open` / `target=_blank`.
---------
Co-authored-by: Yury Semikhatsky <yurys@chromium.org>
2025-06-13 13:15:17 -07:00
Pavel Feldman
0fb9646c4d
chore: experimental agent mode ( #516 )
2025-06-04 09:14:50 -07:00
Pavel Feldman
656779531c
chore: respect server settings from config ( #502 )
2025-05-30 18:17:51 -07:00
Pavel Feldman
eec177d3ac
chore: reuse browser in server mode ( #495 )
2025-05-30 15:15:37 -07:00
Pavel Feldman
9e5ffd2ccf
fix(cursor): allow enforcing images for cursor --image-responses=allow ( #478 )
...
Fixes https://github.com/microsoft/playwright-mcp/issues/449
2025-05-27 10:25:09 +02:00
Simon Knott
13cd1b4bd9
fix: respect browserName in config ( #461 )
...
Resolves https://github.com/microsoft/playwright-mcp/issues/458
2025-05-23 15:13:34 -07:00
Pavel Feldman
aa6ac51f92
feat(trace): allow saving trajectory as trace ( #426 )
2025-05-14 18:08:44 -07:00
Pavel Feldman
fea50e6840
chore: introduce resolved config ( #425 )
2025-05-14 16:01:08 -07:00
Pavel Feldman
ee33097abe
chore: normalize --no- options ( #413 )
2025-05-13 16:17:45 -07:00
Pavel Feldman
c506027aec
chore: run w/ sandbox by default ( #412 )
2025-05-13 15:30:02 -07:00
Pavel Feldman
7be0c8872e
feat(args): allow configuring proxy, UA, viewport, https errors ( #410 )
2025-05-13 14:40:03 -07:00
Pavel Feldman
ce72367208
feat(storage): allow passing storage state for isolated contexts ( #409 )
...
Fixes https://github.com/microsoft/playwright-mcp/issues/403
Ref https://github.com/microsoft/playwright-mcp/issues/367
2025-05-13 13:14:04 -07:00
Pavel Feldman
949f956378
feat(ephemeral): allow for non-persistent context operation ( #405 )
...
Ref: https://github.com/microsoft/playwright-mcp/issues/367
Ref: https://github.com/microsoft/playwright-mcp/issues/393
2025-05-12 18:18:53 -07:00
Pavel Feldman
445170a76b
chore: roll playwright 5/9 ( #394 )
2025-05-09 18:01:17 -07:00
Max Schmitt
95ca08fdb7
fix: use of wrong launchOptions type in public API ( #385 )
2025-05-09 14:16:04 +02:00
Pavel Feldman
e95b5b1dd6
chore: get rid of connection factory ( #362 )
...
Drive-by User-Agent sniffing and disabling of image type in Cursor.
2025-05-06 14:27:28 -07:00
Ross Wollman
42faa3ccf8
feat: add --(allowed|blocked)-origins ( #319 )
...
Useful to limit the agent when using the playwright-mcp server with an
agent in auto-invocation mode.
Not intended to be a security feature.
2025-05-05 11:28:14 -07:00
Pavel Feldman
4694d60fc5
fix(config): allow specifying user data dir in config ( #342 )
...
Fixes https://github.com/microsoft/playwright-mcp/issues/340
2025-05-05 08:23:24 -07:00
おがどら
5df011ad4b
feat(cli): set outputDir
via cli options ( #338 )
2025-05-03 20:11:17 -07:00
Simon Knott
a15f0f301b
chore: save downloads to outputDir ( #310 )
2025-05-02 10:57:31 +02:00
Max Schmitt
685dea9e19
chore: migrate to ESM ( #303 )
...
- [Why do I need `.js`
extension?](https://stackoverflow.com/a/77150985/6512681 )
- [Why setting `rootDir` in the
`tsconfig.json`?](https://stackoverflow.com/a/58941798/6512681 )
- [How to ensure that we add the `.js` extension via
ESLint](https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/extensions.md#importextensions )
Fixes https://github.com/microsoft/playwright-mcp/issues/302
2025-04-30 23:06:56 +02:00
Pavel Feldman
6d6b1a384b
chore: fix merge config ( #311 )
2025-04-30 08:41:19 -07:00
Simon Knott
1c760b3826
fix: default to headful ( #305 )
...
See https://github.com/microsoft/playwright-mcp/issues/304
Regressed in
69703cc882
.
2025-04-30 12:23:30 +02:00
Pavel Feldman
3f72fe53ec
chore: add support for device ( #300 )
...
Fixes https://github.com/microsoft/playwright-mcp/issues/294
2025-04-29 19:51:00 -07:00
Pavel Feldman
21d2f80fef
chore: store channel profiles separately ( #297 )
2025-04-29 13:34:56 -07:00
Pavel Feldman
69703cc882
chore: follow up to exposing playwright config options ( #289 )
2025-04-29 08:53:03 -07:00
Pavel Feldman
80c9b93b72
chore: allow configuring raw Playwright options ( #287 )
...
Fixes: https://github.com/microsoft/playwright-mcp/issues/272
2025-04-28 20:17:16 -07:00
Pavel Feldman
697a69a8c2
chore: allow specifying output dir ( #285 )
...
Ref: https://github.com/microsoft/playwright-mcp/issues/279
2025-04-28 16:35:33 -07:00
Pavel Feldman
6e76d5e550
chore: split context.ts into files ( #284 )
2025-04-28 16:14:16 -07:00