使用说明
剧作家MCP Docker(CDP桥)
运行以下命令的Docker镜像 剧作家MCP 服务器,并通过Chrome DevTools协议(CDP)连接到Windows浏览器。设计用于 Docker MCP网关 以便任何连接的AI代理(Claude Code、Cursor、Codex等)都可以控制浏览器。
为什么
当浏览器在Windows上运行时,在WSL2中运行Claude Code(或其他AI代理)会给浏览器自动化带来网络挑战。此图像通过以下方式解决了这个问题:
- 解决
host.docker.internal运行时连接到Windows主机IP - 直接将IP用作CDP端点(Edge/Chrome要求Host标头是IP或
localhost) - 以stdio模式运行,与Docker MCP网关无缝集成
先决条件
- Docker 桌面版 在Windows上使用WSL2后端
- 微软边缘 以所有三面旗帜启动:
"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --remote-debugging-port=9222 --remote-debugging-address=0.0.0.0 --remote-allow-origins=*--remote-debugging-port=9222--启用CDP--remote-debugging-address=0.0.0.0--绑定所有接口,以便Docker可以访问它--remote-allow-origins=*--允许来自任何来源的CDP连接(从Edge v136+开始需要)
- 防火墙规则 允许9222上的入站TCP(管理员PowerShell,一次性):
New-NetFirewallRule -DisplayName "CDP 9222" -Direction Inbound -LocalPort 9222 -Protocol TCP -Action Allow
不要使用
netsh portproxy--它与上的Edge绑定冲突0.0.0.0:9222并导致连接挂起。如果您有一个设置,请将其删除:netsh interface portproxy delete v4tov4 listenport=9222 listenaddress=0.0.0.0
构建
docker build -t playwright-mcp .
用法
使用Docker MCP网关(推荐)
-
在以下位置创建自定义目录文件
~/.docker/mcp/catalogs/custom-tools.yaml(参见playwright-catalog.yaml模板) -
将服务器添加到注册表(
~/.docker/mcp/registry.yaml):browser-cdp: ref: "" -
启用服务器:
docker mcp server enable browser-cdp -
添加
--additional-catalog custom-tools.yaml到客户端MCP配置中的网关参数(例如。,.mcp.json):{ "mcpServers": { "MCP_DOCKER": { "command": "docker", "args": ["mcp", "gateway", "run", "--additional-catalog", "custom-tools.yaml"], "type": "stdio" } } }
独立(HTTP/SSE)
docker run -d --name playwright-mcp -p 8931:8931 playwright-mcp --port 8931 --host 0.0.0.0
然后将任何MCP客户端连接到 http://localhost:8931/mcp.
边缘快捷方式
要始终在启用CDP的情况下启动Edge,请将任务栏快捷方式Target修改为:
"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --remote-debugging-port=9222 --remote-debugging-address=0.0.0.0 --remote-allow-origins=*
在首次使用这些标志启动之前,必须关闭所有Edge进程。如果Edge已在运行,则这些标志将被自动忽略。
文件
| 文件 | 描述 |
|---|---|
Dockerfile |
使用以下内容构建图像 @playwright/mcp |
entrypoint.sh |
决议 host.docker.internal IP并推出Playwright MCP |
playwright-catalog.yaml |
Docker MCP网关自定义目录条目的模板 |
