内容
# Claude 扩展 MCP 桥接器
桥接 Claude 的 Chrome/Brave 扩展程序的本地主机到 MCP 服务器,以便 Codex 可以调用扩展程序的浏览器工具。
## 支持内容
该桥接器公开了扩展程序的浏览器工具 API(导航、页面读取、标签页、计算机交互等)。
它**不**将 Claude 产品的所有功能添加到 Codex 中。它只转发扩展程序的本地主机公开的内容。
## 文件
- `native-host-daemon.js`:本地消息主机 + 桥接守护进程。
- `mcp-server.js`:MCP 标准输入/输出服务器。
- `bridge-common.js`:共享传输/工具定义。
- `register-native-host.ps1`:为一个浏览器注册一个主机名。
- `install-bridge.ps1`:便捷安装程序(备份上游主机并注册桥接器)。
- `unregister-native-host.ps1`:删除桥接注册并可选地恢复上游。
- `examples/codex-config.toml`:Codex MCP 配置片段。
## 前置条件
- 安装了 `node` 的 Windows(`node.exe` 在 PATH 中或传递 `-NodePath`)。
- 已安装 Claude 扩展程序(默认为 `fcoeoabgfenejglbffodgkkbkcdhcgfn`)。
- 已安装 Codex。
## 安装(Windows PowerShell)
每个浏览器/配置文件运行一次(或在重新安装扩展程序/浏览器后再次运行)。
从该项目文件夹:
```powershell
cd C:\path\to\codex-browser
.\install-bridge.ps1 -Browser brave -HostMode both -Force
```
或一行:
```powershell
cd C:\path\to\codex-browser; .\install-bridge.ps1 -Browser brave -HostMode both -Force
```
对于 Chrome,请将 `-Browser brave` 替换为 `-Browser chrome`。
注意:
- `HostMode both` 注册两个主机名:
- `com.anthropic.claude_browser_extension`
- `com.anthropic.claude_code_browser_extension`
- 安装程序备份现有的主机清单到:
- `%LOCALAPPDATA%\ClaudeExtMcpBridge\<host>.upstream.json`
## Codex MCP 配置
将以下内容添加到 `~/.codex/config.toml`(或使用 `examples/codex-config.toml`):
```toml
[mcp_servers.claude-ext-bridge]
command = "C:\\Program Files\\nodejs\\node.exe"
args = ["C:\\path\\to\\codex-browser\\mcp-server.js"]
startup_timeout_sec = 45
```
为什么使用 Windows Node:扩展程序的本地主机在 Windows 上运行;使用 Windows Node 避免了 WSL<->Windows localhost 边缘情况。
## 验证
1. 安装后重启浏览器。
2. 在 Codex 中调用:
- `bridge_status`
- `tabs_context_mcp`(或 `tabs_context_mcp` 并带有 `createIfEmpty: true`)
- `navigate` 并带有 `tabId`/`tabGroupId`(如果需要)。
`bridge_status` 应最终显示 `extensionConnected: true`。
打开扩展程序的侧边栏是一个手动回退操作。正常操作应在每次会话时自动重新连接,而无需打开侧边栏。
## 卸载 / 回滚
删除注册:
```powershell
.\unregister-native-host.ps1 -Browser brave -HostName com.anthropic.claude_browser_extension
.\unregister-native-host.ps1 -Browser brave -HostName com.anthropic.claude_code_browser_extension
```
恢复上游备份:
```powershell
.\unregister-native-host.ps1 -Browser brave -HostName com.anthropic.claude_browser_extension -RestoreUpstream
.\unregister-native-host.ps1 -Browser brave -HostName com.anthropic.claude_code_browser_extension -RestoreUpstream
```
## 故障排除
- 来自扩展程序测试的 `timed out`:
- 本地主机包装器正在写入额外的 stdout(必须只写入框架化的本地消息)。
- `ECONNREFUSED ...:48765`:
- 本地主机进程未运行,或 MCP 命令运行时错误。
- 桥接器重试多个端点(`127.0.0.1`、`localhost`、`WSL` 主机 IP)并自动打开重新连接 URL。
- `Extension is not connected. Open the Claude extension sidepanel first.`:
- 在浏览器启动后等待几秒钟,以便进行扩展程序/本地主机握手。
- 如果持续出现,请为活动浏览器(`brave` 或 `chrome`)重新运行 `install-bridge.ps1` 并重启浏览器。
- 自动重新连接调优:
- `CLAUDE_EXT_BRIDGE_AUTO_RECONNECT=0` 禁用。
- `CLAUDE_EXT_BRIDGE_RECONNECT_URL` 覆盖重新连接 URL。
- `CLAUDE_EXT_BRIDGE_RECONNECT_COOLDOWN_MS` 和 `CLAUDE_EXT_BRIDGE_RECONNECT_RETRY_DELAY_MS` 调整时间。
- `No tab available`:
- 首先调用 `tabs_context_mcp` 并将返回的 `tabId`/`tabGroupId` 传递给 `navigate`。
## 安全
这是私有协议桥接器,可能随着扩展程序更新而中断。
请在生产环境机器上运行脚本前审查。