mcpField
N
newton-browser

newton-browser

本地服务
github.com/Koala-Studios浏览器自动化04 周前更新

关于 newton-browser

newton-browser 是供 Agent 使用 Chrome 或 Edge 的本地浏览器控制 MCP 服务。它创建隔离的浏览器会话,并通过私有 CDP 管道操作;默认运行无需扩展或中继,每次页面操作都会返回回执。

主要功能

  1. 01隔离的 Chrome 和 Edge 会话
  2. 02通过私有 CDP 管道控制浏览器
  3. 03观察页面并读取文档
  4. 04执行操作并返回结果回执
  5. 05管理标签页、会话和屏幕截图
  6. 06可选记录控制台和网络活动

适用场景

  1. 01让 Agent 检查并操作网页
  2. 02使浏览器会话与登录源相互隔离
  3. 03分多次调用读取页面文档

MCP 相关

它通过换行分隔的 stdio JSON 实现无状态 MCP 2026-07-28,并提供浏览器会话、观察、操作、文档和捕获工具。客户端需支持该协议版本、本地 stdio 服务及图像内容。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"koala-studios-newton-browser": {
"command": "npx",
"args": [
"-y",
"newton-browser"
]
}
}
}
启动命令npx -y newton-browser

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmnewton-browser0.4.1

工具

11

收录的工具列表 · 更新于 2 周前

参数类型必填说明
transportenum否auto | local_ephemeral | local_dev_durable

详细介绍

Newton Browser

Newton Browser 是一款面向 Agent 的本地 MCP 浏览器控制产品。每个会话都会启动一个隔离的 Chrome 或 Edge 进程,并通过继承的专用 CDP 管道控制它。 默认情况下,浏览器流量使用 Chromium 的常规网络连接,不经过 Newton 代理,也不设来源允许列表、请求拦截或资源过滤。

默认运行时无需浏览器扩展、转发器、守护进程、调试 TCP 端口、数据库、遥测、托管服务或模型提供商集成。

状态

默认源码运行时现已采用替换后的共享引擎,并使用来自共享 Newton 登录源的隔离工作进程,还提供可选的轻量现有浏览器适配器。原生操作、精准编辑、上下文控件、记录/文档、截图、标签页所有权和更新基础机制均已实现。这是一个尚未发布的开发检查点,并非已完成真实场景验收。

旧版直接运行时已退役(2026-09-25):会话引擎是唯一的操作、回执和引用权威来源。构建、类型检查、边界 lint 和完整测试套件均已通过。反馈/阅读方面的改进、平台和已认证任务的 QA,以及 3 项尚未变更的打包发布门槛仍未完成。请参阅当前进度账本、剩余路线图和整合记录。

版本 0.7.2 已以 GitHub 预发布 tarball 的形式发布,并已在 macOS Chrome 上验证;该版本在 Windows 和 Linux 上的回执仍待完成。尚无 npm 或浏览器商店版本发布。

Newton 仅实现无状态 MCP 2026-07-28,通过以换行符分隔的 stdio JSON 通信。 客户端在每个请求中发送协议版本和能力。Newton 不提供旧版握手或帧格式模式。

要求

  • Node.js 24 或更高版本。
  • 当前版本的本地 Chrome 或 Edge 安装。
  • 支持 MCP 2026-07-28、本地 stdio 服务和图像内容的 MCP 客户端。

构建并连接

pnpm install --frozen-lockfile
pnpm build
node apps/mcp-server/dist/index.js doctor --live

这些步骤足以启动临时会话:Newton 会查找 Chrome 或 Edge,并为每个会话创建全新的隔离身份。可选设置仅用于选择默认浏览器:

node apps/mcp-server/dist/index.js setup --browser chrome

每个受管理的会话都是共享登录源的隔离副本(除非会话指定了其他来源,否则使用 default)。若要登录一次,供后续会话使用,请打开来源对应的可见浏览器,亲自登录,然后确认:

node apps/mcp-server/dist/index.js source login --id default --browser chrome

Newton 绝不会要求 Agent 输入或获取凭据。已发布的登录状态会成为该来源的新一代状态;运行中的会话保留各自的副本,且会话执行的任何操作都不会合并回来源。

MCP 配置

{
  "mcpServers": {
    "newton-browser": {
      "command": "node",
      "args": ["C:\\absolute\\path\\newton-browser\\apps\\mcp-server\\dist\\index.js"]
    }
  }
}

本地安装程序可以更新 Codex 配置,也可以打印通用条目:

node apps/mcp-server/dist/index.js install codex --dry-run
node apps/mcp-server/dist/index.js install generic

Codex 安装会启用 Codex 的 mcp_2026_07_28 功能,固定 CODEX_MCP_PROTOCOL_VERSION=2026-07-28,并在原子替换配置前,验证准确候选项的实时无状态发现结果、自报的软件包版本以及必需的浏览器工具目录。生成的入口点/版本对会被固定;不兼容或过时的候选项无法取代正常工作的安装。

Agent 工作流

工具(tools/list 为权威):browser.session.start、browser.observe、 browser.act、browser.command、browser.document.read、browser.document.continue、 browser.screenshot、browser.console、browser.network、browser.pages.list、 browser.page.select、browser.sessions.list、browser.session.stop,以及由 操作员选择的现有浏览器工具 browser.existing.discover 和 browser.existing.setup。

常规循环:

  1. 使用完整 URL 调用 browser.session.start,返回会话、首个页面及 nextCommandId。
  2. browser.observe 返回带有引用的受限控件;记录模式会读取链接、表格和表单; browser.document.read 则通过续读游标读取文本。
  3. browser.act 执行一个指定类型的操作或一系列操作,并返回回执:派发情况、 后置条件,以及状态发生变化时的下一状态。仅当命令完全相同时才重用 commandId;如果回执存在不确定性,请使用 browser.command 进行核对, 不要重放操作。
  4. browser.session.stop 会独立于队列结束会话。

弹出窗口和新标签页会作为会话页面附加,不会更改所选页面;可使用 browser.pages.list 和 browser.page.select 在这些页面间切换。渲染器无响应时, 系统会在同一页面上重新打开,并在回执中说明。控制台和网络记录默认不启用, 因为启用后页面可以看到这一操作。

身份和不透明配置文件导入

身份是存储中的不透明浏览器配置文件;登录来源和会话副本均基于这些配置文件 构建。操作员工具:

newton-browser identity create --browser chrome
newton-browser identity list
newton-browser identity lease-inspect --id nbi_<opaque-id>
newton-browser identity lease-recover --id nbi_<opaque-id>
newton-browser identity delete --id nbi_<opaque-id>
newton-browser identity import --browser chrome `
  --user-data-root "C:\path\to\User Data" `
  --profile-directory Default

导入操作会从已关闭且稳定的本地配置文件中,对严格限定的身份验证文件允许列表 进行字节级复制,且绝不会修改源文件。密码、自动填充、历史记录、下载内容、 扩展程序、会话、Service Worker 和缓存均不包含在内。浏览器加密可能导致复制的 身份验证信息无法继续使用;Newton 不会绕过这种保护。

安全边界

  • 浏览器通过继承的私有 CDP 管道运行:在自有模式下,不使用调试端口、中继或扩展程序。
  • 宿主进程可以将自有浏览器限制为只能访问公共互联网地址(NEWTON_BROWSER_EGRESS=public);否则网络行为与普通 Chromium 网络行为相同。
  • 页面内容是不可信数据;它不能授权执行操作,也不能选择本地文件。
  • 截图会遮盖跨框架和影子根中的密码字段与敏感自动补全字段,以及任何明确标记的敏感区域。
  • 网络响应正文仅以受限文本形式提供,且只能来自页面自身的源;不会保留请求头。

请参阅安全性、隐私和 MCP 客户端。

开发与发布

pnpm build
pnpm lint
pnpm typecheck
pnpm test
pnpm eval
pnpm eval:agent-cost
pnpm pack:check
pnpm eval:real-sites
pnpm release:check

对每种要求的浏览器/平台运行一次 pnpm eval:real-sites。随后,只有在 Windows 和 Linux 上,使用完全相同的打包候选版本连续三次通过 pnpm release:check,且没有跳过任何关键测试, 并通过固定版本的 Linux Chrome for Testing 矩阵检查、跨平台压缩包哈希值一致,才能发布。

仓库结构

apps/mcp-server/      stateless stdio MCP host and owned-browser runtime
packages/core/        schemas, redaction, provenance, and safety policy
packages/driver/      strict TypeScript CDP driver
scripts/              builds, release checks, and live harnesses
skills/newton-browser agent operating guidance
test/                 fixtures, regressions, and bounded evidence

许可证

源代码采用 MIT 许可证授权。发布或分发 Newton Browser 版本仍是由维护者单独控制的操作。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。