Chrome DevTools MCP服务器

一个基于Docker的持久化Chrome DevTools MCP服务器,用于AI编码助手,支持会话持久性、移动测试和本地交互。

  • by null-runner
  • JavaScript
  • 本地部署
  • 8 星标
  • 更新于
在 GitHub 查看 null-runner/chrome-mcp-docker

使用说明

Chrome MCP Docker

持久化Chrome DevTools MCP服务器

用于AI编码助手的稳定、持久的Chrome DevTools。


为什么选择Docker?

功能 官方MCP 这
会话持久性 ❌ ✅
Docker稳定性❌ ✅
移动测试 ❌ ✅
本地交互 ❌ ✅
控制台日志 ❌ ✅
主机标头旁路 ❌ ✅

安装

选项A:独立(推荐)

仅适用于Docker,无需额外依赖。

# 1. Start Chrome container
docker run -d --name chrome-persistent --restart unless-stopped \
  -p 9222:9222 --shm-size=2g \
  zenika/alpine-chrome:with-puppeteer \
  --no-sandbox --remote-debugging-address=0.0.0.0 \
  --remote-debugging-port=9222 --disable-gpu --headless

# 2. Add to Claude Code (~/.claude.json)
{
  "mcpServers": {
    "chrome": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "--network", "host",
               "-e", "CHROME_HOST=localhost", "-e", "CHROME_PORT=9222",
               "nullrunner/chrome-mcp-docker:latest"]
    }
  }
}

选项B:Docker MCP网关

警告:官方的Docker MCP网关存在影响自定义服务器的错误。 看 已知问题.使用选项A或下面的修补叉。

# Use patched fork (recommended if you want Gateway)
git clone https://github.com/null-runner/mcp-gateway.git
cd mcp-gateway && go build -o docker-mcp ./cmd/docker-mcp

# Then setup chrome-mcp-docker
git clone https://github.com/null-runner/chrome-mcp-docker.git
cd chrome-mcp-docker
./setup.sh

工具

工具 它做什么
navigate 转到URL,等待加载
screenshot 捕获视口
click 点击元素
type 输入
scroll 滚动页面/元素
wait_for_selector 等待元素
get_computed_styles CSS调试
get_network_errors 失败的请求
get_console_logs JS控制台输出
mobile_mode iPhone X视口

需求

  • 码头工人 (其中之一):
  • 任何兼容MCP的客户端(Claude Code、Cursor、Windsurf、Cline等)

文档


运作原理

AI Coding Assistant (Claude, Cursor, etc.)
    ↓
chrome-mcp-docker (MCP Server)
    ↓
Chrome DevTools Protocol
    ↓
Persistent Chrome Browser (Docker)

关键创新: 主机头旁路.Chrome拒绝来自Docker容器的连接,因为 host.docker.internal 不是 localhost。此服务器会伪造标头。


已知问题

Docker MCP网关 有几个影响自定义服务器的开放错误:

推荐:在合并这些PR之前,使用独立安装(选项A)。


许可证

麻省理工学院


报告Bug · 请求功能

由以下材料制成☕ 通过 空转轮