mirror of
https://github.com/microsoft/playwright-mcp.git
synced 2026-01-30 06:22:03 +00:00
This adds a new step for the `release` event to publish to the Official MCP Registry. Summary of changes: - Add `server.json` which is the MCP Server manifest - Used metadata from the GH MCP Registry - Used the name `com.microsoft/playwright-mcp` - Add `publish-release-mcp-registry` job that runs manually - Install Microsoft Go for compliant Go crypto - Log in to Azure for Key Vault access - Publish to the MCP Registry in the `microsoft.com` namespace. - Add `mcpName` to the `package.json` which the MCP Registry validates. The publishing requires some secret variables: - `AZURE_MCP_REGISTRY_CLIENT_ID` - service principal client ID (app ID) with Get Key and Sign access to a Key Vault - `AZURE_MCP_REGISTRY_TENANT_ID` - tenant ID for the service principal (should be a production tenant) - `AZURE_MCP_REGISTRY_SUBSCRIPTION_ID` - Azure subscription ID holding the Key Vault - `KV_NAME` - the Key Vault name, e.g. `mykeyvault` - `KV_KEY_NAME` - the name of a Key in the Key Vault, needs to be ECDSA P-384. I can provide internal documentation for how to set up the service principal (managed identity is easiest), vault, and key as well as registering the key so it can be used for the `microsoft.com` namespace. **Note:** after the new job is proven to work as expected, we can switch it to automatically running after the `publish-release-npm` job on the `release` event.
54 lines
1.8 KiB
JSON
54 lines
1.8 KiB
JSON
{
|
|
"name": "@playwright/mcp",
|
|
"version": "0.0.47",
|
|
"description": "Playwright Tools for MCP",
|
|
"mcpName": "com.microsoft/playwright-mcp",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/microsoft/playwright-mcp.git"
|
|
},
|
|
"homepage": "https://playwright.dev",
|
|
"engines": {
|
|
"node": ">=18"
|
|
},
|
|
"author": {
|
|
"name": "Microsoft Corporation"
|
|
},
|
|
"license": "Apache-2.0",
|
|
"scripts": {
|
|
"lint": "npm run update-readme",
|
|
"update-readme": "node update-readme.js",
|
|
"docker-build": "docker build --no-cache -t playwright-mcp-dev:latest .",
|
|
"docker-rm": "docker rm playwright-mcp-dev",
|
|
"docker-run": "docker run -it -p 8080:8080 --name playwright-mcp-dev playwright-mcp-dev:latest",
|
|
"test": "playwright test",
|
|
"ctest": "playwright test --project=chrome",
|
|
"ftest": "playwright test --project=firefox",
|
|
"wtest": "playwright test --project=webkit",
|
|
"dtest": "MCP_IN_DOCKER=1 playwright test --project=chromium-docker",
|
|
"npm-publish": "npm run clean && npm run test && npm publish",
|
|
"copy-config": "cp ../playwright/packages/playwright/src/mcp/config.d.ts . && perl -pi -e \"s|import type \\* as playwright from 'playwright-core';|import type * as playwright from 'playwright';|\" ./config.d.ts",
|
|
"roll": "npm run copy-config && npm run lint"
|
|
},
|
|
"exports": {
|
|
"./package.json": "./package.json",
|
|
".": {
|
|
"types": "./index.d.ts",
|
|
"default": "./index.js"
|
|
}
|
|
},
|
|
"dependencies": {
|
|
"playwright": "1.57.0-alpha-2025-11-14",
|
|
"playwright-core": "1.57.0-alpha-2025-11-14"
|
|
},
|
|
"bin": {
|
|
"mcp-server-playwright": "cli.js"
|
|
},
|
|
"devDependencies": {
|
|
"@modelcontextprotocol/sdk": "^1.17.5",
|
|
"@playwright/test": "1.57.0-alpha-2025-11-14",
|
|
"@types/node": "^24.3.0",
|
|
"zod-to-json-schema": "^3.24.6"
|
|
}
|
|
}
|