diff --git a/README.md b/README.md index 9cb8fdc..5c773c5 100644 --- a/README.md +++ b/README.md @@ -539,6 +539,13 @@ npx @playwright/mcp@latest --config path/to/config.json initScript?: string[]; }, + /** + * Connect to a running browser instance (Edge/Chrome only). If specified, `browser` + * config is ignored. + * Requires the "Playwright MCP Bridge" browser extension to be installed. + */ + extension?: boolean; + server?: { /** * The port to listen on for SSE or MCP transport. @@ -562,6 +569,7 @@ npx @playwright/mcp@latest --config path/to/config.json * - 'core': Core browser automation features. * - 'pdf': PDF generation and manipulation. * - 'vision': Coordinate-based interactions. + * - 'devtools': Developer tools features. */ capabilities?: ToolCapability[]; @@ -615,11 +623,19 @@ npx @playwright/mcp@latest --config path/to/config.json network?: { /** * List of origins to allow the browser to request. Default is to allow all. Origins matching both `allowedOrigins` and `blockedOrigins` will be blocked. + * + * Supported formats: + * - Full origin: `https://example.com:8080` - matches only that origin + * - Wildcard port: `http://localhost:*` - matches any port on localhost with http protocol */ allowedOrigins?: string[]; /** * List of origins to block the browser to request. Origins matching both `allowedOrigins` and `blockedOrigins` will be blocked. + * + * Supported formats: + * - Full origin: `https://example.com:8080` - matches only that origin + * - Wildcard port: `http://localhost:*` - matches any port on localhost with http protocol */ blockedOrigins?: string[]; }; diff --git a/package-lock.json b/package-lock.json index 512842a..925fcba 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ ], "devDependencies": { "@modelcontextprotocol/sdk": "^1.25.2", - "@playwright/test": "1.59.0-alpha-1770338664000", + "@playwright/test": "1.59.0-alpha-1770400094000", "@types/node": "^24.3.0" } }, @@ -806,13 +806,13 @@ "link": true }, "node_modules/@playwright/test": { - "version": "1.59.0-alpha-1770338664000", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.59.0-alpha-1770338664000.tgz", - "integrity": "sha512-GRgwREMJ36Ici5lV/16ZHMd+HEh4XuT4jSHPlvOyNBcefPi8JsBFI/kMl7BChjOpitrDOxhZJAgdHvQkPeQu0w==", + "version": "1.59.0-alpha-1770400094000", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.59.0-alpha-1770400094000.tgz", + "integrity": "sha512-P0Jv0WouOb4dOhi6hrl6qa/3hszJp/RliFE1PzCd+Gw0k+aPiEFBzh8qVmur3P32kszv+pG9UPsivcsMcTpHNg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright": "1.59.0-alpha-1770338664000" + "playwright": "1.59.0-alpha-1770400094000" }, "bin": { "playwright": "cli.js" @@ -2562,12 +2562,12 @@ } }, "node_modules/playwright": { - "version": "1.59.0-alpha-1770338664000", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.59.0-alpha-1770338664000.tgz", - "integrity": "sha512-YKR5ko/eQFtcvlZPTJN3BmVFRrIxuzKw8sqZgP9XY+JvQEDlAsGDNsBd7/TxWLZYzCC8HHETB7cW6Ru2DEkTWA==", + "version": "1.59.0-alpha-1770400094000", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.59.0-alpha-1770400094000.tgz", + "integrity": "sha512-49P817plxhSzZfn3lvB6G92KGgj7jb7cO39sqDQhqlI9mTJWM+slZrfokw1vL1H4ZZkYMoedRE14rUcn8cNl9g==", "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.59.0-alpha-1770338664000" + "playwright-core": "1.59.0-alpha-1770400094000" }, "bin": { "playwright": "cli.js" @@ -2584,9 +2584,9 @@ "link": true }, "node_modules/playwright-core": { - "version": "1.59.0-alpha-1770338664000", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.0-alpha-1770338664000.tgz", - "integrity": "sha512-Qlaafyf5T1GN/ynNJVVdJyD26HjzqvgRC62jNdfaFoMkTvqSlV4of9O6BV7c1x5ZJpplKXHecAPWKSWNdea7Dw==", + "version": "1.59.0-alpha-1770400094000", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.0-alpha-1770400094000.tgz", + "integrity": "sha512-hfQOLT2s7cKLvOx8BT4IB9CFAFAxsxKuZokmyESf6vWQesQ+lbeNCo8ogGJYYszTK1ojm9pNKNBM961QNqZ4+w==", "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" @@ -3329,8 +3329,8 @@ "license": "Apache-2.0", "dependencies": { "minimist": "^1.2.5", - "playwright": "1.59.0-alpha-1770338664000", - "playwright-core": "1.59.0-alpha-1770338664000" + "playwright": "1.59.0-alpha-1770400094000", + "playwright-core": "1.59.0-alpha-1770400094000" }, "bin": { "playwright-cli": "playwright-cli.js" @@ -3353,8 +3353,8 @@ "version": "0.0.64", "license": "Apache-2.0", "dependencies": { - "playwright": "1.59.0-alpha-1770338664000", - "playwright-core": "1.59.0-alpha-1770338664000" + "playwright": "1.59.0-alpha-1770400094000", + "playwright-core": "1.59.0-alpha-1770400094000" }, "bin": { "playwright-mcp": "cli.js" diff --git a/package.json b/package.json index b000603..42998ce 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ ], "devDependencies": { "@modelcontextprotocol/sdk": "^1.25.2", - "@playwright/test": "1.59.0-alpha-1770338664000", + "@playwright/test": "1.59.0-alpha-1770400094000", "@types/node": "^24.3.0" } } diff --git a/packages/playwright-cli/package.json b/packages/playwright-cli/package.json index 9083193..45deab3 100644 --- a/packages/playwright-cli/package.json +++ b/packages/playwright-cli/package.json @@ -21,8 +21,8 @@ }, "dependencies": { "minimist": "^1.2.5", - "playwright": "1.59.0-alpha-1770338664000", - "playwright-core": "1.59.0-alpha-1770338664000" + "playwright": "1.59.0-alpha-1770400094000", + "playwright-core": "1.59.0-alpha-1770400094000" }, "bin": { "playwright-cli": "playwright-cli.js" diff --git a/packages/playwright-mcp/config.d.ts b/packages/playwright-mcp/config.d.ts index 13a4a12..36dbfc4 100644 --- a/packages/playwright-mcp/config.d.ts +++ b/packages/playwright-mcp/config.d.ts @@ -17,16 +17,18 @@ import type * as playwright from 'playwright'; export type ToolCapability = + 'config' | 'core' | - 'core-input' | 'core-navigation' | 'core-tabs' | - 'core-install' | 'core-input' | - 'vision' | + 'core-install' | + 'network' | 'pdf' | + 'storage' | 'testing' | - 'tracing'; + 'vision' | + 'devtools'; export type Config = { /** @@ -96,6 +98,13 @@ export type Config = { initScript?: string[]; }, + /** + * Connect to a running browser instance (Edge/Chrome only). If specified, `browser` + * config is ignored. + * Requires the "Playwright MCP Bridge" browser extension to be installed. + */ + extension?: boolean; + server?: { /** * The port to listen on for SSE or MCP transport. @@ -119,6 +128,7 @@ export type Config = { * - 'core': Core browser automation features. * - 'pdf': PDF generation and manipulation. * - 'vision': Coordinate-based interactions. + * - 'devtools': Developer tools features. */ capabilities?: ToolCapability[]; @@ -172,11 +182,19 @@ export type Config = { network?: { /** * List of origins to allow the browser to request. Default is to allow all. Origins matching both `allowedOrigins` and `blockedOrigins` will be blocked. + * + * Supported formats: + * - Full origin: `https://example.com:8080` - matches only that origin + * - Wildcard port: `http://localhost:*` - matches any port on localhost with http protocol */ allowedOrigins?: string[]; /** * List of origins to block the browser to request. Origins matching both `allowedOrigins` and `blockedOrigins` will be blocked. + * + * Supported formats: + * - Full origin: `https://example.com:8080` - matches only that origin + * - Wildcard port: `http://localhost:*` - matches any port on localhost with http protocol */ blockedOrigins?: string[]; }; diff --git a/packages/playwright-mcp/package.json b/packages/playwright-mcp/package.json index 23611eb..fede209 100644 --- a/packages/playwright-mcp/package.json +++ b/packages/playwright-mcp/package.json @@ -34,8 +34,8 @@ } }, "dependencies": { - "playwright": "1.59.0-alpha-1770338664000", - "playwright-core": "1.59.0-alpha-1770338664000" + "playwright": "1.59.0-alpha-1770400094000", + "playwright-core": "1.59.0-alpha-1770400094000" }, "bin": { "playwright-mcp": "cli.js"