feat(mcp): support python, java and csharp in --codegen - #42106
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Tools emit structured actions rendered with the recorder language generators at serialization time. Operations without an action representation keep their JavaScript snippets. Secrets render as idiomatic environment lookups per language. Fixes: microsoft/playwright-mcp#1696
f0492eb to
7750dcb
Compare
Test results for "tests 1"3 flaky51196 passed, 1188 skipped Merge workflow run. |
Test results for "MCP"1 failed 8049 passed, 1284 skipped Merge workflow run. |
|
Hi, I'm the Playwright bot and I took a first look at the CI failures here. 🟡 One MCP failure — uncertain, can't prove it either way
DetailsOverall: the only real failure is a single MCP test on one bot. This PR does touch the tools that test exercises ( Uncertain
Run history on …🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟥 Triaged by the Playwright bot - agent run |
273c8aa
into
microsoft:main
## What's New ### Tool Improvements - **`browser_take_screenshot` — WebP format** — New `type` option to pick the image format (`png`, `jpeg` or `webp`); when unset, the format is inferred from the filename extension ([#41152](microsoft/playwright#41152)) - **`--codegen` — more languages** — Code generation now supports `python`, `java` and `csharp` in addition to `typescript` ([#42106](microsoft/playwright#42106)) - **Configurable settle delay** — New `--timeout-settle` flag (and `timeouts.settle` config option) to control how long to wait after each action for triggered work (navigations, requests) to settle, defaults to 500ms ([#41924](microsoft/playwright#41924)) ## Fixes - Aria snapshot capture is skipped when the response discards it ([#41923](microsoft/playwright#41923)) - New `--snapshot-boxes` flag (and `snapshot.boxes` config option) to enable bounding boxes in snapshots globally — previously this was only available per command ([#42102](microsoft/playwright#42102)) - Reconnect to the browser after a disconnect ([#41966](microsoft/playwright#41966)) - Report malformed JSON config instead of silently falling back to INI parsing ([#41909](microsoft/playwright#41909)) - Clear the dialog modal state when a dialog is closed out of band ([#42032](microsoft/playwright#42032)) - Detect downloads via the download event instead of guessing from `net::ERR_ABORTED` navigation errors ([#41933](microsoft/playwright#41933)) - Surface the missing executable path when a browser isn't installed ([#41941](microsoft/playwright#41941)) - Escape user input in codegen output ([#41962](microsoft/playwright#41962)) - Removed the stale `--output-mode` CLI option ([#41833](microsoft/playwright#41833)) ### Browser Extension - Validate `Host` and `Origin` headers on CDP relay WebSocket upgrades ([#42103](microsoft/playwright#42103)) - Launch the Chrome profile that has the extension installed ([#41939](microsoft/playwright#41939)) - Pass `noDefaults` for extension CDP connections ([#42119](microsoft/playwright#42119)) - Mention `PLAYWRIGHT_MCP_EXECUTABLE_PATH` in the error shown when the browser executable is not found ([#42122](microsoft/playwright#42122)) - Removed support for extension protocol v1 ([#41857](microsoft/playwright#41857))
Summary
--codegennow acceptspython,javaandcsharpin addition totypescriptandnone@isomorphic/codegen/actions) rendered with the recorder language generators when serializing the response; operations without an action representation keep their JavaScript snippetsprocess.env[...],os.environ[...],System.getenv(...),Environment.GetEnvironmentVariable(...)), with aSECRET_<NAME>placeholder fallbackFixes microsoft/playwright-mcp#1696