← 返回目录
J

JS Reverse MCP

社区
面向 AI Agent 的 JavaScript 逆向调试 MCP Server。
分类
浏览器自动化 第 8 / 32
Stars
★ 3.0k 非常热门
传输方式
stdio(本地进程)
运行环境
Node.js 20.19+ · 预编译二进制
凭据
无需凭据
许可证
Apache-2.0
最近提交
工具数
24
59FMRS · C

来源显示该项目是 Apache-2.0 许可、运行于仓库根目录的 stdio MCP Server,提供 24 个面向 JavaScript 逆向与浏览器调试的工具。README 未提供服务器 manifest;项目也不是其上游浏览器或协议维护者的官方服务器。

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

可靠性
10/20
安全与权限
9/20
维护活跃度
11/20
文档质量
15/20
安装易用性
14/20
查看各项评分依据
可靠性 10/20
README 描述了较完整的启动、调试和错误提示流程,但服务器 manifest 未缓存,且用户提供的材料没有 CI、已提交测试或实际 MCP 初始化与工具列表握手证据。依赖系统 Chrome、Node.js、可选 CloakBrowser 下载以及外部 CDP 端点也增加了环境失败面,因此不超过静态评审上限 12 分。
安全与权限 9/20
文档明确披露浏览器内容、Cookie、脚本、网络数据和本地文件会暴露给 MCP 客户端,并提供 allowedRoots、路径越界检查、日志权限、显式确认清空网络数据等控制措施。但默认本地文件访问不受限制,持久化 profile 保留登录态,evaluate_script 可执行页面 JavaScript,且 allowedRoots 只是可选项,最小权限和敏感数据隔离仍不完整。未见材料支持红线级风险。
维护活跃度 11/20
仓库未归档,声明 Apache-2.0,且提供了维护者的离线路由评测命令和 30 条契约说明;但材料没有提交历史、发布记录、依赖更新策略、问题响应情况或安全漏洞报告渠道。9 个 open issues 只能作为有限的发现信号,不能证明持续维护,因此扣分。
文档质量 15/20
README 覆盖安装、主流 MCP 客户端配置、工具分类、工作流、参数、profile、文件访问、反检测模式、故障排除和安全警告,披露了 CloakBrowser 的下载规模及评测可能产生费用等限制。但 manifest 未缓存,认证说明、完整参数约束、平台兼容性和可验证实现证据仍不足,不能给满分。
安装易用性 14/20
提供 npx、本地构建以及 Claude Code、Codex、Cursor 和 VS Code Copilot 的配置示例,Node.js 与 Chrome 前置条件清晰。默认路径较短,但需要预装运行时和 Chrome;--cloak 会涉及额外二进制下载,--browserUrl、第三方浏览器 CDP 和本地文件权限配置也可能较脆弱,因此未给满分。

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

查看 FMRS 评分方法 →

选型与风险

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

适合谁

  • 需要 AI Agent 持续完成真实 JavaScript 逆向调试流程的开发者。
  • 需要有头浏览器、持久化登录态和可复盘本地材料的分析任务。
  • 需要检查脚本、断点、网络与 WebSocket 之间关系的研究工作。

不适合谁

  • 只需要通用网页浏览或简单自动化而不需要逆向调试的任务。
  • 希望获得泛用爬虫框架或绕过所有站点防护的用户。
  • 不愿让 MCP 客户端接触浏览器内容或宿主机文件的敏感环境。

所需权限

  • 可检查、调试和修改浏览器中的页面数据。
  • evaluate_script.localFilePath 以及 outputFile/filePath 参数可使 MCP 读取或写入宿主机文件。
  • 未配置 --allowedRoots 时,本地文件访问不受目录限制;配置后可限定允许读写的目录。
  • 默认 profile 会持久化 cookies 和 localStorage;--isolated 使用临时 profile。

风险与副作用

  • 浏览器内容会暴露给 MCP 客户端,不应在含敏感信息的页面上使用。
  • 不受限制的本地文件访问可能暴露或改写宿主机文件。
  • 详细调试日志可能泄露页面、Cookie、脚本和凭据;README 建议避免使用 DEBUG=*。
  • --cloak 首次启动可能静默下载约 200MB 二进制,且其 profile 与默认 profile 隔离。

安装接入

准备工作

运行环境:Node.js 20.19+ · 预编译二进制

MCP_ROUTING_EVAL_API_KEY 可选密钥 评测端点的 API 密钥,本地免认证端点可省略,远程端点必须使用 HTTPS。
其他可选配置项(5 个)
MCP_ROUTING_EVAL_ENDPOINT 可选 仅维护者评测路由时使用,指向 OpenAI 兼容 Chat Completions 端点,默认无需设置。
MCP_ROUTING_EVAL_MODEL 可选 评测路由使用的模型名,仅在运行真实模型评测时设置。
MCP_ROUTING_EVAL_TIMEOUT_MS 可选 评测中单条请求的超时毫秒数,可选。
MCP_ROUTING_EVAL_MIN_PASS_RATE 可选 评测最低通过率阈值 (0,1],默认要求 100%。
DEBUG 可选 设为 DEBUG=mcp:* 开启详细调试日志;切勿使用 DEBUG=* 以免泄露页面、Cookie 等敏感数据。

要求 Node.js v20.19 或更新版本及稳定版 Chrome。在 MCP 客户端配置中使用 npx 配置;也可克隆仓库后运行 npm install 和 npm run build,再以 node 启动 build/src/index.js。涉及本地文件时建议配置 --allowedRoots。

.mcp.json
{"mcpServers":{"js-reverse":{"command":"npx","args":["js-reverse-mcp"]}}}

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

.vscode/mcp.json
{
  "servers": {
    "js-reverse": {
      "command": "npx",
      "args": [
        "js-reverse-mcp"
      ]
    }
  }
}

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

Terminal
claude mcp add js-reverse -- npx js-reverse-mcp

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

验证是否装好

在 MCP 客户端的工具列表中应出现 24 个以 select_page、list_scripts、evaluate_script 为代表的工具;或输入“打开 https://example.com 并列出所有加载的 JS 脚本”,能返回脚本列表即说明连接成功。

常见排障

  1. 首次进入页面后先调用 list_network_requests 激活收集器,再 reload 并重新查看请求。
  2. 遇到反爬拦截时先尝试 --isolated,再考虑 --cloak。
  3. 使用 --cloak 前可运行 npx cloakbrowser install 预下载二进制。
  4. --browserUrl 必须是能响应 /json/version 的 CDP HTTP 端点,不是厂商私有 Local API。
  5. 本地文件读写问题可检查 --allowedRoots;连接问题可确认 Node.js、Chrome 和 CDP 端点。

试试这样问

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

  • 打开 https://example.com 并列出所有加载的 JS 脚本
  • 在所有脚本中搜索包含 "encrypt" 的代码,然后保存该脚本源码到本地文件
  • 在加密函数入口处设置断点,触发操作后检查参数、调用栈和作用域变量
  • 列出 WebSocket 连接并分析消息模式,查看特定类型的消息内容

工具能力 24

select_page 只读
列出打开的页面或选择调试上下文。
new_page 写入
创建页面并导航到 URL。
navigate_page 写入
导航、后退、前进或刷新页面。
select_frame 只读
列出或选择 iframe 执行上下文。
click_element 写入
严格匹配并点击当前 frame 中的单个可见元素。
take_screenshot 只读
截取页面截图。
list_scripts 只读
列出页面中加载的 JavaScript 脚本。
get_script_source 只读
按行范围或字符偏移获取脚本源码片段。
展开其余 16 个工具
save_script_source 写入
将完整脚本源码保存到本地文件。
search_in_sources 只读
在所有脚本中搜索字符串或正则表达式。
set_breakpoint_on_text 写入
通过搜索代码文本设置断点,适用于压缩代码。
break_on_xhr 写入
按 URL 模式设置 XHR/Fetch 断点。
remove_breakpoint 破坏性
按 ID、URL 或全部移除断点。
list_breakpoints 只读
列出活动断点。
get_paused_info 只读
获取暂停状态、调用栈和作用域变量。
pause_or_resume 写入
暂停或恢复执行。
step 写入
执行单步调试并返回位置和源码上下文。
list_network_requests 只读
列出网络请求、查看详情或导出原始请求材料。
clear_network_requests 破坏性
经显式确认后清空当前页面收集的请求和 body 缓存。
get_request_initiator 只读
获取网络请求的 JavaScript 调用栈。
get_websocket_messages 只读
列出 WebSocket 连接、分析消息模式或获取消息详情。
clear_site_data 破坏性
清理当前站点 cookies、origin storage 和 sessionStorage,可选清理全局 HTTP cache。
evaluate_script 写入
在页面或断点上下文执行 JavaScript,支持保存结果和读取本地输入文件。
list_console_messages 只读
列出控制台消息或获取单条消息详情。

使用场景

定位和分析网页中的 JavaScript 函数。
通过断点、调用栈、作用域变量和单步执行调查运行时行为。
捕获、检查和导出网络请求、Cookie、响应内容及 WebSocket 消息。
清理站点状态并重放 Cookie 或风控初始化流程。
在页面、浏览器网络数据与本地分析文件之间传递材料。

支持客户端

Claude Code
Cursor
VS Code
Codex

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

详细介绍

JS Reverse MCP 将有头 Chrome 调试、JavaScript 脚本分析、断点与调用帧执行、网络和 WebSocket 分析、浏览器状态重放及本地文件 I/O 组织为适合 AI Agent 连续推理的工具。默认使用 Patchright 协议层 stealth,并可选使用 CloakBrowser 源码层指纹模式。

同类可选方案

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