← 返回目录
F

Firefox DevTools MCP

官方
让 AI 助手自动化 Firefox 浏览器。
分类
浏览器自动化 第 10 / 32
Stars
★ 502 非常热门
传输方式
stdio(本地进程)
运行环境
Node.js 20.19.0+ · 预编译二进制 Firefox 100+ · Docker
凭据
无需凭据
许可证
其他 / 未声明
最近提交
工具数
28
58FMRS · C

官方 Mozilla 项目,适合本地 Firefox 自动化与开发调试。能力覆盖面较广,但浏览器会话和特权模块带来明显安全风险,应使用专用配置文件并限制工具模块。

最强项 · 文档质量 14/20 最弱项 · 安全与权限 8/20

可靠性
10/20
安全与权限
8/20
维护活跃度
13/20
文档质量
14/20
安装易用性
13/20
查看各项评分依据
可靠性 10/20
README提供了启动、客户端连接和工具模块信息,并提到CI与测试入口,但本次未提供清单、源代码、测试或工作流内容,无法验证MCP初始化、工具列表握手、错误处理和关键路径。README还包含未解决的Git合并冲突,且工具概览存在不一致,因此扣分。
安全与权限 8/20
文档明确披露了专用Firefox配置、Cookie/会话暴露、页面提示注入、Marionette以及高权限模块的风险,并支持按模块缩小权限;但默认basic预设权限范围较广,connect-existing可接入真实浏览会话,且脚本、下载、扩展、偏好设置和文件写入能力的确认与隔离证据不足。未见提示中的红线风险,因此不按红线评分。
维护活跃度 13/20
项目由Mozilla维护,README显示MIT或Apache 2.0许可证、CI入口、贡献指南、安全报告入口和npm版本路径,且仓库未归档;但未提供提交历史、发布频率、依赖更新、问题响应或实际安全响应细节,元数据还显示许可证为NOASSERTION,因此扣分。
文档质量 14/20
README覆盖运行时要求、多个客户端安装方式、CLI参数、工具模块、预设、Android、已有浏览器连接、保存路径限制、故障排除、版本和安全注意事项,内容较完整;但缺少可审阅的manifest和实现证据,存在未解决合并冲突,并对认证、实际参数模式、错误边界和测试覆盖说明不足,因此未给满分。
安装易用性 13/20
提供Node.js和Firefox要求、npx命令、Claude Code配置、Inspector示例、平台路径和常见Windows故障排除,主流客户端路径清晰;但必须准备本地Firefox,连接已有会话和Android还需额外配置,且没有源文件级执行证据,安装仍可能受环境与驱动发现影响,因此扣分。

静态评测 · 未实际运行收录于 2026-07-29

查看 FMRS 评分方法 →

选型与风险

能访问什么写入 / 删除本地文件执行命令或代码访问网络控制浏览器

适合谁

  • 本地 Firefox 自动化
  • 网页调试和开发工作流
  • 使用 Claude Code、Claude Desktop、Cursor 或 Cline 的用户

不适合谁

  • 没有本地 Firefox 安装的环境
  • 无法接受代理访问浏览器可访问内容的场景
  • 需要云端托管运行的场景
  • 不适合在日常浏览配置文件上直接运行

所需权限

  • 需要访问本地 Firefox 浏览器及其可访问的网站。
  • 建议使用专用 Firefox 配置文件;连接现有浏览器时代理可接触 cookies、登录状态和打开的标签页。
  • `prefs` 和 `privileged` 模块需要 `MOZ_REMOTE_ALLOW_SYSTEM_ACCESS=1`,且仅在 Mozilla 内部构建中可用。
  • Firefox for Android 模式需要 PATH 中存在 adb,并需要连接的 Android 设备。

风险与副作用

  • 浏览器代理天然具有较高风险,可能接触 cookies、保存的会话和浏览器可访问的内容。
  • 网页内容可能包含用于操纵代理的提示注入;应只访问自己控制或信任的网站。
  • developer 预设会启用脚本和调试工具,mozilla 预设还会扩大到特权上下文,代理能力更强。
  • 连接现有 Firefox 会使用真实浏览会话;启用 Marionette 进行日常浏览可能暴露 navigator.webdriver 并触发反机器人检测。

安装接入

准备工作

运行环境:Node.js 20.19.0+ · 预编译二进制 Firefox 100+ · Docker

其他可选配置项(9 个)
START_URL 可选 服务器启动时打开的 URL,如 about:blank
FIREFOX_HEADLESS 可选 设为 true 时无界面运行 Firefox
ACCEPT_INSECURE_CERTS 可选 设为 true 时忽略 TLS 证书错误
CONNECT_EXISTING 可选 设为 true 时连接到已运行的 Firefox 而非新启动
MARIONETTE_PORT 可选 connect-existing 模式下的 Marionette 端口,默认 2828
TOOL_PRESET 可选 选择工具模块预设:slim/basic/developer/mozilla/all
ANDROID_PACKAGE 可选 Android 上的 Firefox 应用包名,默认 org.mozilla.firefox
MOZ_REMOTE_ALLOW_SYSTEM_ACCESS 可选 设为 1 才能使用 privileged 模块和 evaluate_privileged_script
DEBUG 可选 设为 * 可启用详细调试日志

需要 Node.js ≥ 20.19.0 和 Firefox 100+。推荐使用 npx:运行 npx @mozilla/firefox-devtools-mcp@latest,或将提供的 Claude Code 配置加入配置文件。可通过 --firefox-path 指定 Firefox 路径,并使用 --headless 等选项。

.mcp.json
{"mcpServers":{"firefox-devtools":{"command":"npx","args":["-y","@mozilla/firefox-devtools-mcp@latest","--headless","--viewport","1280x720"],"env":{"START_URL":"about:blank"}}}}

以 Claude Code 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

.vscode/mcp.json
{
  "servers": {
    "firefox-devtools": {
      "command": "npx",
      "args": [
        "-y",
        "@mozilla/firefox-devtools-mcp@latest",
        "--headless",
        "--viewport",
        "1280x720"
      ],
      "env": {
        "START_URL": "about:blank"
      }
    }
  }
}

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add firefox-devtools -e START_URL=about:blank -- npx -y @mozilla/firefox-devtools-mcp@latest --headless --viewport 1280x720

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

在客户端工具列表中应能看到 list_pages、take_snapshot、navigate_page 等工具;调用 list_pages 能返回打开的页面即证明连接成功。

常见排障

  1. Firefox 未被发现时,使用 `--firefox-path` 指定正确的 Firefox 可执行文件路径。
  2. 首次运行较慢可能是 Selenium 建立 BiDi 会话所致。
  3. 导航后 UID 可能失效,应重新调用 `take_snapshot`。
  4. Windows 10 出现连接关闭时,可按 README 使用 `cmd /c` 包装 npx,或指定 npx 的绝对路径。
  5. 连接现有 Firefox 时必须同时启用 `--marionette` 和 `--remote-debugging-port`。

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 打开 https://example.com 并列出当前所有打开的页面
  • 给页面截图并把结果保存到文件
  • 列出 network 中包含 api 的请求
  • 在页面上执行一段脚本获取 performance.getEntries()

工具能力 28

list_pages 只读
列出页面。
select_page 只读
选择要操作的页面。
navigate_page 写入
导航到指定页面。
take_snapshot 只读
获取页面快照,可保存到文件。
click_by_uid 写入
按快照中的 UID 点击元素。
fill_by_uid 写入
按 UID 填写表单元素。
list_network_requests 只读
列出网络请求,支持筛选和保存结果。
get_network_request 只读
按 ID 获取网络请求详情。
展开其余 20 个工具
list_downloads 只读
列出下载记录。
set_download_behavior 写入
设置下载行为为允许、拒绝或默认。
screenshot_page 只读
截取页面截图,可保存到文件。
screenshot_by_uid 只读
截取指定 UID 元素的截图。
list_console_messages 只读
列出控制台消息。
evaluate_script 写入
在页面中执行脚本。
evaluate_privileged_script 写入
在特权上下文中执行脚本;需要相应系统访问权限。
install_extension 写入
安装浏览器扩展。
uninstall_extension 破坏性
卸载浏览器扩展。
list_extensions 只读
列出浏览器扩展;需要相应系统访问权限。
get_firefox_info 只读
获取 Firefox 信息。
get_firefox_output 只读
获取 Firefox 输出。
restart_firefox 写入
重启 Firefox。
set_firefox_prefs 写入
设置 Firefox 首选项。
get_firefox_prefs 只读
获取 Firefox 首选项。
profiler_is_active 只读
检查性能分析器是否运行。
profiler_start 写入
启动性能分析器。
profiler_stop 写入
停止性能分析并保存分析文件。
screencast_start 写入
开始录制页面视口视频。
screencast_stop 写入
停止页面视口视频录制;需要 Firefox 154 或更高版本。

使用场景

自动化 Firefox 页面导航和交互
检查页面快照、网络请求和控制台消息
执行页面脚本、截图和性能分析
录制页面视口并管理下载

支持客户端

Claude Code
Claude Desktop
Cursor
Cline

依据项目文档列出,未经本站实测。

详细介绍

Mozilla 维护的 Model Context Protocol 服务器,通过 Selenium WebDriver 使用 WebDriver BiDi 自动化 Firefox。它支持页面检查与控制、网络和控制台观测、截图、脚本执行、性能分析及录制等能力。服务器需要本地安装 Firefox,不能直接运行在 glama.ai 等云托管服务上。

同类可选方案

源版本 2eb2cb2c84bd 数据同步于 2026-10-19 查看 FMRS 评分方法