Token导航 LogoToken导航TokenDH.com
Drissionpage Devtools MCP logo
浏览器工具stdio官方级别未说明来源级核验

Drissionpage Devtools MCP

MCP Server

将DrissionPage和js-reverse-mcp集成为单一MCP服务,提供浏览器启动/接管和DevTools能力代理功能,适用于浏览器自动化和反逆向工程场景。

工具数

0

提示词数

0

GitHub Stars

2

资源数

0
浏览器自动化Python网页抓取

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

asidExxX

提供方

asidExxX

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -m venv .venv

详细介绍

drissionpage-devtools-mcp

单一 MCP 服务,内部把 DrissionPagejs-reverse-mcp 合成到一起:

  • DrissionPage 负责启动或接管浏览器
  • js-reverse-mcp 负责 devtools 工具能力
  • 对外只暴露一个 MCP server

客户端只需要连接这一个服务,不需要再分别调用两个 MCP。

运行方式

启动时会按这个顺序工作:

  1. DrissionPage 在指定端口启动或接管 Chrome
  2. 在服务内部启动 vendored js-reverse-mcp
  3. 将子 MCP 的 devtools 工具原样代理出来

仓库内容

  • src/drissionpage_devtools_mcp/:统一 MCP 服务
  • vendor/js-reverse-mcp/build/js-reverse-mcp 运行时产物
  • vendor/js-reverse-mcp/package.json:运行时元数据

仓库已经内置 js-reverse-mcp 的运行时文件,默认不需要额外 clone 它的源码仓库,也不需要额外执行 npm install

环境要求

  • Python 3.11+
  • Node.js 20+
  • Chrome 或兼容 Chromium 浏览器

默认会优先寻找 macOS 上的 Chrome / Edge。其他系统或自定义路径请传 --browser-path,或设置环境变量 DRISSIONPAGE_BROWSER_PATH

安装

从 GitHub 拉取并安装:

git clone https://github.com/asidExxX/drissionpage-devtools-mcp.git
cd drissionpage-devtools-mcp
chmod +x install.sh
./install.sh

一键安装:

chmod +x install.sh
./install.sh

等价的手动安装:

python3 -m venv .venv
./.venv/bin/python -m pip install --upgrade pip
./.venv/bin/python -m pip install -e .
(
  cd vendor/js-reverse-mcp
  npm install --ignore-scripts --no-package-lock
)

安装完成后可执行命令为:

./.venv/bin/drissionpage-devtools-mcp

install.sh 会同时处理两件事:

  • 创建 Python 虚拟环境并安装当前包
  • vendor/js-reverse-mcp/ 下补齐运行时所需的 Node 依赖

mcpServers 配置

推荐这样写:

{
  "mcpServers": {
    "drissionpage-devtools": {
      "command": "/absolute/path/to/drissionpage-devtools-mcp/.venv/bin/drissionpage-devtools-mcp",
      "args": [
        "--port",
        "9222",
        "--chrome-arg=--fingerprinting-canvas-image-data-noise",
        "--chrome-arg=--webrtc-ip-handling-policy=disable_non_proxied_udp",
        "--chrome-arg=--force-webrtc-ip-handling-policy"
      ]
    }
  }
}

如果你只要最基础的浏览器接管能力,也可以只保留:

{
  "mcpServers": {
    "drissionpage-devtools": {
      "command": "/absolute/path/to/drissionpage-devtools-mcp/.venv/bin/drissionpage-devtools-mcp",
      "args": [
        "--port",
        "9222"
      ]
    }
  }
}

如果还要把其他参数继续转发给内部的 js-reverse-mcp,再在最后加 --,例如:

{
  "mcpServers": {
    "drissionpage-devtools": {
      "command": "/absolute/path/to/drissionpage-devtools-mcp/.venv/bin/drissionpage-devtools-mcp",
      "args": [
        "--port",
        "9222",
        "--",
        "--no-category-network"
      ]
    }
  }
}

参数说明

  • --fingerprinting-canvas-image-data-noise

作用:给 Canvas 指纹加噪,降低基于 canvas 渲染结果做指纹识别的稳定性。

  • --webrtc-ip-handling-policy=disable_non_proxied_udp

作用:限制 WebRTC 的非代理 UDP,避免走代理时通过 WebRTC 直连泄露真实 IP。

  • --force-webrtc-ip-handling-policy

作用:强制应用上面的 WebRTC 策略。

上面这三项是当前这套集成里推荐的写法,因为浏览器是由 DrissionPage 先启动的。

js-reverse-mcp 原本也支持下面两个参数:

  • --hideCanvas
  • --blockWebrtc

但它们只在 js-reverse-mcp 自己负责启动浏览器时才真正生效。当前模式下浏览器已经由 DrissionPage 拉起,所以更推荐把等价能力直接写成 --chrome-arg 放在启动器这一层。

启动

直接启动:

./.venv/bin/drissionpage-devtools-mcp

传浏览器端口和 Chrome 启动参数:

./.venv/bin/drissionpage-devtools-mcp \
  --port 9222 \
  --chrome-arg=--fingerprinting-canvas-image-data-noise \
  --chrome-arg=--webrtc-ip-handling-policy=disable_non_proxied_udp \
  --chrome-arg=--force-webrtc-ip-handling-policy \
  -- --no-category-network

检查安装是否正常:

./.venv/bin/drissionpage-devtools-mcp --help

MCP 配置示例

mcp-config.example.json

注意

  • --chrome-arg 是传给 DrissionPage 启动的浏览器实例本身的。
  • --chrome-arg 的值本身以 -- 开头时,推荐写成 --chrome-arg=--xxx
  • -- 后面的参数会继续转发给内部的 js-reverse-mcp
  • MCP 进程启动后不会立刻拉起浏览器;会在第一次真正调用工具时再懒启动浏览器和子 MCP。
  • 不要再额外传 --browserUrl--wsEndpoint,统一服务会自动设置。
  • 如果 vendor/js-reverse-mcp/build/src/index.js 缺失,服务会尝试在 vendor/js-reverse-mcp 下执行一次 npm run build
  • 当前实现默认不会在退出时主动关闭已存在的浏览器实例,避免误关你正在使用的窗口。

目录标签

目录标签

浏览器自动化Python网页抓取本地部署开发工具代理反指纹识别WebRTC防护MCP服务

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP