secure-browser-mcp
Officialsecure-browser-mcp
一个将机密填入浏览器、但不会将其展示给代理的 MCP 服务器。
代理看到的是机密引用,而不是机密值。机密存放在 Turnkey Secrets 中。服务器导出机密,在自身内存中解密,然后通过 CDP 将其键入页面。该值永远不会进入对话、会话记录或模型上下文。
它覆盖无法通过 API 代理的机密:输入到 Web 表单中的密码、卡号和社会安全号。
状态:脚手架。 接口、工具集和安全边界已就位。大多数处理器返回 not_implemented。完整设计见 docs/DESIGN.md,关于它能防御什么、不能防御什么,见 docs/THREAT-MODEL.md。
工作原理
代理调用
list_secret_refs,获取 id、名称和目标绑定。不会得到任何值。代理使用
navigate、snapshot、click和type_text驱动浏览器。代理调用
fill_secret(secret_id, element_uid)。服务器根据机密的目标绑定检查页面。该绑定在导入时通过 Turnkey 静态属性设置,无法更改。
服务器从 Turnkey 导出机密(临时 P-256 密钥,HPKE),通过 CDP 将其键入字段,然后丢弃该值。
每个工具结果在到达代理之前都会经过脱敏层。快照、网络日志和截图绝不会回显已填入的值。
没有 evaluate_script 工具。这是安全决策,而不是缺陷。
Related MCP server: PhantomAuth
快速开始
bun install
bun run typecheck
bun run dev # starts the MCP server on stdio (mock secrets backend)检查工具集:
bunx @modelcontextprotocol/inspector bun src/index.ts在配置 Turnkey 凭证之前,服务器使用内存中的模拟后端。真实后端是 @turnkey/sdk-server 之上的一个薄适配器(importSecret / exportSecret / getSecrets,已在 tkhq/sdk#1479 中合并)。
对未发布 SDK 代码的依赖
Secrets API 方法已在 tkhq/sdk 的 main 分支上,但尚未发布到 npm。vendor/ 目录存放从本地 ../sdk 检出打包的 tarball,并通过 package.json 中的 overrides 固定版本。一旦 @turnkey/sdk-server@8.3.0 发布,就移除 vendor tarball 和 overrides。
重新生成 tarball:
cd ../sdk && pnpm install && pnpm turbo build --filter=@turnkey/sdk-server --filter=@turnkey/crypto
cd packages/<pkg> && pnpm pack --out ../../../secure-browser-mcp/vendor/turnkey-<pkg>.tgz目录结构
路径 | 内容 |
| 机密引用、 |
| 浏览器所有权和 CDP 机密注入 |
| 每个工具结果都要经过的脱敏层 |
| 每个 MCP 工具一个文件 |
| 设计和威胁模型 |
This server cannot be deployed
Maintenance
Related MCP Connectors
Stealth web automation for AI agents. Login, signup, navigate, screenshot.
Stealth web automation for AI agents. Login, signup, navigate, screenshot.
AI-powered browser automation — navigate, click, fill forms, and extract data from any website.
Secrets for developers and agents—secure context and workflows without exposing secret values.
Related MCP Servers
- FlicenseBqualityDmaintenanceEnables secure retrieval of credentials from 1Password vaults for use by AI agents, supporting integration with browser automation for automated login.1-
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to securely fill web forms with credentials from SecureVault, keeping raw secrets hidden from the agent.8 npmMIT
- AlicenseBqualityAmaintenanceGives agents an autonomous browser that takes a single goal-level call and drives a real Chrome step by step, returning a verified result or a concrete question instead of guessing. It keeps passwords out of prompts, requires approval before buy/pay/delete actions, and detects login walls and bot challenges.91MIT
- AlicenseAqualityBmaintenanceEnables AI agents to look up stored logins by URL, name, or alias and use them without seeing the secrets, injecting authentication into HTTP requests, running commands with credentials in the environment and scrubbed output, and fetching 2FA codes, subject to per-credential policies and user approval.23MIT