← 返回目录
Z

ZeroToken

社区
录制一次,永久自动化。轻量级 AI Agent 浏览器自动化 MCP,支持轨迹录制与低 Token 脚本回放。
分类
浏览器自动化 第 15 / 32
Stars
★ 453 热门
传输方式
stdio(本地进程) · Streamable HTTP
运行环境
Python · 预编译二进制
凭据
无需凭据
许可证
MIT
最近提交
工具数
33
54FMRS · D

ZeroToken 是一个 MIT 许可、社区维护的轻量级浏览器自动化 MCP 引擎,以「录制一次、永久自动化」为核心,轨迹录制 + 脚本回放可显著降低重复任务的 Token 消耗。它提供 26 个 browser_* 原子操作,具备多标签页/iframe 管理、SmartSelector/SmartWait/ErrorRecovery 稳定性机制、元素指纹自适应重定位、录制探索模式与 SQLite 持久化,同时支持 stdio 与 Streamable HTTP 双 transport。OpenClaw 用户须使用 HTTP 模式以保持浏览器状态,并需自行安装 Playwright Chromium。它不是官方产品,无商业支持;使用者需自负目标网站条款与本地数据安全责任。

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

可靠性
10/20
安全与权限
8/20
维护活跃度
12/20
文档质量
13/20
安装易用性
11/20
查看各项评分依据
可靠性 10/20
服务路径 server.json 声明版本 2.0.0,但 packages 中 pypi 标识符 zerotoken 固定为 0.2.0,且未提供完整性/哈希校验,清单与包版本明显不一致,属于可验证的矛盾,需扣分。README 描述了 stdio 与 Streamable HTTP 双 transport、五层架构、26 个 browser_* 工具、Script Engine 与 pause/resolution 机制,happy path 描述较完整;同时仓库自称有 CI 徽章与 tests/ 目录,但本次仅静态阅读供给材料,未包含任何 workflow 文件或测试源码,无法确认真实执行证据,按校准规则 reliability 上限 12。错误处理方面有 code/retryable、SmartWait/ErrorRecovery 等描述,也有 process-per-call 导致 browser 状态丢失这类明确已知限制,但缺少可复核的错误码清单、超时与并发行为说明。综合:happy path 可信度中等,清单版本矛盾与测试不可见拉低到 10。
安全与权限 8/20
未触发红线:材料中无恶意代码、无凭据窃取、无隐蔽外传、无未确认的破坏性默认操作,示例中未出现真实 token/密钥,用户名口令为占位示例。但安全设计披露不足:browser_init(stealth=true) 明确提供指纹伪装与反爬规避能力,这在目标站点条款/合规层面存在滥用空间且文档未给出任何使用边界或授权提示;browser_evaluate 允许任意 JS 求值,browser_click/input/upload/download 具备真实副作用,README 未说明危险操作的确认机制;HTTP 模式默认监听 0.0.0.0:8000/mcp,且示例配置无任何认证/令牌要求,属网络暴露面扩大;无权限最小化、数据落盘范围(截图 base64、页面状态、SQLite zerotoken.db)与保留策略的披露。扣分主要在于权限范围、确认机制与数据流披露均不完整。
维护活跃度 12/20
有 MIT 许可、有语义化版本号(清单 2.0.0 / 包 0.2.0)、README 提到 CONTRIBUTING.md、CI 徽章、PyPI 与 Downloads 徽章、QQ 群社区渠道,属于有明确发布与更新路径的信号。但静态材料未包含提交历史、发布节奏、issue 响应记录、依赖更新策略(Dependabot 等)或安全响应渠道说明;454 stars、0 open issues 仅作发现信号,按规则不加分。且清单版本与 PyPI 版本不一致本身即为版本治理缺口。综合为“活跃但治理/版本一致性存在缺口”,给 12。
文档质量 13/20
文档层次较丰富:中文为主并含英文标语,覆盖安装(pip/uv + playwright install chromium)、两种 transport 的运行方式、OpenClaw 完整接入五步流程、Cursor 配置示例、工具调用示例(browser_*/trajectory_*/script_*)、OperationRecord 与 fuzzy_point 的 JSON 结构、五层架构图与 Mermaid 图、项目目录结构、Python API 片段、常见问题排障(browser 状态丢失、连接失败)。不足:工具参数未给出完整 schema/默认值/超时/返回字段清单;Token 成本与会话数据保留策略完全未量化(而项目核心卖点恰是省 Token);stealth 与 browser_evaluate 的能力边界和合规风险未说明;嵌套 iframe/多标签的层级限制、SQLite 并发限制等隐含假设未披露;文档自身存在版本口径不一致。属“可用但存在隐藏假设与排障缺口”,给 13。
安装易用性 11/20
安装路径清晰度尚可:pip install zerotoken 或 uv sync,随后必须执行 playwright install chromium,提供 zerotoken-mcp(stdio)与 zerotoken-mcp-http(HTTP,默认 0.0.0.0:8000/mcp,支持 --port 与 ZEROTOKEN_HTTP_PORT)两个入口,并给出 openclaw.json 与 Cursor 的客户端配置示例。但流程偏手工且脆弱:HTTP 模式需用户自行在终端常驻后台进程,无 systemd/容器/守护进程方案;OpenClaw 路径需额外 npm 安装 mcporter、再安装 Skill、再在客户端启用,步骤多且依赖第三方;Playwright 浏览器下载为平台相关额外负担;README 未给出 macOS/Linux/Windows 差异说明,也未给出 Python 版本要求与最小可验证连接检查。按静态校准,setup 上限 15,结合上述脆弱性给 11。

静态评测 · 未实际运行收录于 2026-09-10

查看 FMRS 评分方法 →

选型与风险

能访问什么读取本地文件写入 / 删除本地文件访问网络控制浏览器连接数据库

适合谁

  • 需要「录制一次、重复执行」的定时或重复任务(如每日登录、定时抓取)
  • 希望降低 Token 消耗、避免每次都由 LLM 逐步推理的 Agent 场景
  • 需要多标签页、iframe、文件上传下载、拖拽等丰富浏览器原子操作的项目
  • 需要元素指纹与自适应重定位来应对页面改版的自动化流程

不适合谁

  • 无法运行 Playwright/Chromium 或无法安装浏览器的环境
  • 只使用 stdio 却又需要跨调用保持浏览器状态的客户端(README 明确指出 command 模式每次工具调用会新建进程、导致 browser 实例被销毁)
  • 需要官方商业支持或 SLA 的生产关键系统
  • 不接受本地 SQLite 落盘存储轨迹、截图与会话数据的场景

所需权限

  • 本地文件系统读写(SQLite 数据库 zerotoken.db、文件上传与下载路径)
  • 网络访问(访问目标网站、Playwright/Chromium 下载)
  • 启动并控制本地 Chromium 浏览器进程
  • OpenClaw 场景需运行本地 HTTP 服务并监听端口(默认 8000)

风险与副作用

  • 脚本会以真实浏览器身份访问目标网站并执行点击、输入、上传下载等操作,误操作可能造成数据变更或误提交
  • 轨迹记录会保存页面状态与截图(base64 截图可能包含敏感信息),落盘于 SQLite,存在隐私与凭据泄露风险
  • browser_init(stealth=true) 的指纹伪装可能违反目标网站的服务条款
  • 依赖目标页面结构:选择器失效仍是主要不稳定因素(README 称占 60%),改版后脚本可能失败
  • HTTP 模式默认监听 0.0.0.0,若暴露到非受信网络可能被他人调用

安装接入

准备工作

运行环境:Python · 预编译二进制

其他可选配置项(1 个)
ZEROTOKEN_HTTP_PORT 可选 可选环境变量,用于指定 zerotoken-mcp-http HTTP 服务的监听端口,不设置时默认 8000。
  1. 安装:pip install zerotoken 或 uv add zerotoken
  2. 安装浏览器:playwright install chromium(必须)
  3. OpenClaw 场景在后台常驻运行 zerotoken-mcp-http(默认监听 http://0.0.0.0:8000/mcp,可用 --port 或 ZEROTOKEN_HTTP_PORT 指定端口)
  4. 在 ~/.openclaw/openclaw.json 的 mcpServers 中将 zerotoken 配置为 url: "http://localhost:8000/mcp",不要用 command
  5. 安装 zerotoken-openclaw Skill(clawhub install zerotoken-openclaw 或复制 skills/zerotoken-openclaw)
  6. 在 OpenClaw 中启用该 MCP server 并确保 Skill 已加载。Cursor 等 IDE 使用 stdio 模式,配置 command: "zerotoken-mcp"(或 command: "uv", args: ["run", "zerotoken-mcp"])。
.cursor/mcp.json
{
  "mcpServers": {
    "zerotoken": {
      "url": "http://localhost:8000/mcp"
    }
  }
}

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

.vscode/mcp.json
{
  "servers": {
    "zerotoken": {
      "url": "http://localhost:8000/mcp"
    }
  }
}

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

Terminal
claude mcp add --transport http zerotoken http://localhost:8000/mcp

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

验证是否装好

先运行 zerotoken-mcp-http 并确认监听 http://localhost:8000/mcp,客户端连接后在工具列表中应出现 browser_init、trajectory_start、script_run 等工具;调用 browser_list_tabs 若返回成功即证明连接正常。

常见排障

  1. browser 状态丢失、每次操作都像第一次:说明仍在使用 command(stdio)模式,需确认已后台运行 zerotoken-mcp-http,且 openclaw.json 中 zerotoken 配置为 url 而非 command
  2. 连接失败 / MCP 不可用:确认 zerotoken-mcp-http 已启动且端口正确(默认 8000),URL 与配置一致
  3. 浏览器无法启动:确认已执行 playwright install chromium
  4. 响应体积过大:browser 类工具可传 include_screenshot: false 减少体积
  5. 记录过多:用 trajectory_list 查看已保存轨迹,对不需要的调用 trajectory_delete(task_id)
  6. 元素定位失败:对关键元素传 auto_save: true 保存指纹,改版后传 adaptive: true 自动重定位
  7. 脚本连续失败:用 script_health 查看成功率,必要时 script_deprecate 再 script_restore

试试这样问

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

  • 打开 https://example.com/login,输入用户名和密码并点击登录按钮,同时录制这次操作轨迹
  • 把 login_task 这条轨迹转成脚本,并绑定到定时任务 job_id 上
  • 查看 zerotoken 里所有已保存的轨迹列表
  • 运行绑定为 daily-report 的脚本,回放之前录制的登录操作

工具能力 33

browser_init 写入
初始化浏览器,遇反爬/云盾可传 stealth=true 启用隐蔽启动与指纹伪装
browser_open 写入
打开指定 URL 页面
browser_click 写入
点击页面元素
browser_input 写入
向输入框填写文本
browser_hover 写入
鼠标悬停在元素上
browser_keyboard 写入
发送键盘按键组合(如 Control+S)
browser_scroll 写入
按方向与距离滚动页面
browser_drag_drop 写入
将源元素拖拽到目标元素
展开其余 25 个工具
browser_upload 写入
上传本地文件到 file 类型输入框
browser_download 写入
触发并完成文件下载,返回保存路径
browser_evaluate 只读
在页面中执行 JavaScript 表达式
browser_new_tab 写入
新建标签页并返回 tab_id
browser_list_tabs 只读
列出当前所有标签页
browser_switch_tab 写入
切换到指定标签页
browser_close_tab 写入
关闭指定标签页
browser_enter_iframe 写入
进入指定 iframe 上下文
browser_exit_iframe 写入
退出当前 iframe 上下文
trajectory_start 写入
开始记录操作轨迹(task_id、goal)
trajectory_complete 写入
结束轨迹记录,可 export_for_ai=true 导出含模糊点标记的 AI 提示
trajectory_list 只读
查看已保存的轨迹列表
trajectory_delete 破坏性
删除指定轨迹,避免记录过多
trajectory_to_script 写入
将指定 task_id 的轨迹转换为可回放脚本
trajectory_explore_start 写入
开启录制探索模式,隔离 AI 试错路径,避免污染正式轨迹
trajectory_explore_stop 写入
结束探索模式,keep 可选 none / last / all
script_generate 写入
根据轨迹生成脚本
script_run 写入
确定性回放脚本,可传 vars;失败或需判断时暂停生成 session
script_resume 写入
恢复暂停的脚本会话,resolution 可选 retry / skip / patch / abort
script_health 只读
查看脚本连续失败情况与成功率
script_deprecate 写入
将脚本标记为废弃(如改版失效)
script_restore 写入
恢复被废弃的脚本
script_bind 写入
把外部 job_id 绑定到脚本,支持 default_vars
script_binding_set 写入
将 OpenClaw 的 job_id 与脚本 task_id 绑定
run_script_by_job_id 写入
按绑定 key(job_id)一步执行脚本,无需 LLM 逐步推理

使用场景

AI Agent 浏览器自动化(OpenClaw、LLM Agent)
RPA 重复性网页操作录制回放
定时抓取网页数据
记录测试步骤并回放的自动化测试
将轨迹导出为 AI 提示供 Skills 或其他模块分析

支持客户端

OpenClaw
Cursor

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

详细介绍

ZeroToken 是一个面向 AI Agent 的轻量化浏览器自动化 MCP 引擎。AI 通过 ReAct 模式分步调用 MCP 原子能力完成浏览器操作,系统完整记录操作轨迹(页面状态、截图、执行结果与模糊点标记),可将轨迹导出为 AI 友好格式或转为可回放的确定性脚本。回放阶段无需 LLM 逐步推理,Token 消耗低、执行速度快。项目采用 Transport → Handler → Service → Domain → Repository/Infrastructure 五层分层架构,基于 Pydantic v2 强类型模型,使用 SQLite 存储脚本、轨迹、会话、指纹、绑定与运行时状态,并通过 Playwright/Chromium 驱动真实浏览器。

同类可选方案

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