chatgpt-remote-browser-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@chatgpt-remote-browser-mcp list the tabs I've shared from Chrome and screenshot the current one"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ChatGPT Remote Browser MCP
An MCP server that exposes OpenClaw's Chrome-extension browser controls while preserving the extension's Selected Tabs access boundary.
The server is designed for a topology in which ChatGPT reaches a private MCP process through an outbound Secure MCP Tunnel, OpenClaw runs on a gateway host, and Chrome may run on a different machine with the OpenClaw extension.
Security model
Only tabs currently shared by the OpenClaw extension are published.
Raw Chrome/OpenClaw target IDs are replaced with opaque, short-lived handles.
The current tab ACL is checked again before every operation.
Revoked, expired, unknown, and closed handles fail with
ACCESS_DENIED.Read-only operations may retry a small set of transient target-resolution errors. Mutating operations are never automatically retried.
There is no generic shell, gateway RPC, Relay, or raw CDP passthrough.
Upload paths are restricted to OpenClaw-owned inbound/upload locations.
Generated file responses are capped at 20 MiB and temporary output is removed.
native_browser includes powerful operations such as JavaScript evaluation,
navigation, uploads, downloads, and tab lifecycle changes. Use MCP client
confirmations and share only tabs that are safe to automate.
See Security for the complete trust model.
Related MCP server: SecureFoxMCPServer
Architecture
ChatGPT / MCP client
|
| outbound/private MCP transport
v
chatgpt-remote-browser-mcp (stdio)
|
| fixed OpenClaw browser CLI calls
v
OpenClaw Gateway -> Chrome extension -> Selected Tabs ACLSee Architecture for details.
Tools
Compatibility tools:
Viewer:
list_shared_tabs,snapshot,screenshotOperator:
click,type,press,scroll,navigate
Native high-level tool:
native_browseractions:tabs,open,focus,close,label,snapshot,screenshot,navigate,console,requests,errors,text,emulate,pdf,download,waitfordownload,upload,dialog,highlight,responsebody, andactactkinds:batch,click,clickCoords,type,press,hover,scrollIntoView,drag,select,fill,resize,wait,evaluate, andclose
Internal extension transport operations such as attach/detach are deliberately encapsulated. Local profile lifecycle and Gateway administration are outside the MCP surface.
Requirements
Node.js 22 or newer
A working OpenClaw installation and browser profile
OpenClaw Chrome extension paired with the Gateway
Optional: an OpenAI Secure MCP Tunnel for private ChatGPT connectivity
Install and run
npm ci
npm run check
npm test
npm install -g .
openclaw-browser-mcpThe MCP transport is stdio. Configuration is provided through environment variables:
OPENCLAW_BIN: OpenClaw executable; default/opt/homebrew/bin/openclawOPENCLAW_BROWSER_PROFILE: browser profile; defaultchromeOPENCLAW_BROWSER_TIMEOUT_MS: backend timeout; default30000
Private tunnel deployment
Generic deployment templates are in deploy/. They intentionally
contain placeholders rather than machine paths, tunnel identifiers, or
credentials. Render them locally into protected runtime configuration; never
commit the rendered files.
See Deployment for setup, health checks, operation, and rollback.
Tests
npm run check
npm test
npm run test:e2e
npm run test:remote
npm run test:acl
npm audit --omit=devUnit/schema/security suite: 22 cases
Local managed-browser E2E
Self-contained remote Chrome-extension E2E using a disposable tab
Interactive ACL-revocation E2E
The remote E2E creates, shares, exercises, closes, and post-validates its own tab. It does not require a manually prepared test tab. See Testing.
Status
Version 0.2.2 has been validated with:
22/22 unit, schema, dispatch, and security tests
local browser E2E
remote Chrome-extension E2E across all compatibility tools and 16 native scenarios
immediate
ACCESS_DENIEDafter ACL revocation and after tab closurea private ChatGPT-to-MCP tunnel invocation
zero known production dependency vulnerabilities at validation time
License
Available Tools
9 toolsclickClick in shared browser tabA
Click an element in a currently shared tab. This changes browser or external-site state.
Inputs: ref (required), handle (required), button, double, +1 more.
native_browserNative OpenClaw browser controlCDestructive
Full high-level OpenClaw Chrome-extension browser surface for Selected Tabs. Use list_shared_tabs first and pass its opaque handle. Supports tab lifecycle, DOM interaction, evaluation, diagnostics, emulation, files and batch actions. Raw shell and raw target IDs are never accepted.
Inputs: action (required), x, y, fn, +61 more.
pressPress key in shared browser tabB
Press a keyboard key in a currently shared tab. This can change browser or external-site state.
Inputs: key (required), handle (required).
screenshotScreenshot shared browser tabCRead-only
Capture an image of a currently shared tab.
Inputs: handle (required), type, labels, fullPage.
scrollScroll shared browser tabC
Scroll a currently shared tab by one or more pages.
Inputs: handle (required), direction (required), pages.
snapshotRead shared browser tabARead-only
Read the accessible page structure and text from a currently shared tab.
Inputs: handle (required), limit, format, interactive.
typeType in shared browser tabC
Type text into an element in a currently shared tab. This changes browser or external-site state.
Inputs: ref (required), text (required), handle (required), slowly, +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 9 tools
native_browser is a full browser surface that overlaps with nearly every specific tool (navigate, click, type, scroll, screenshot, etc.), making tool selection ambiguous. The specific tools are individually distinct, but the presence of an umbrella tool blurs the boundary between simple actions and the high-level API.
Most tools follow a consistent imperative verb pattern in snake_case (navigate, click, type, scroll, press, snapshot, screenshot, list_shared_tabs). native_browser breaks the pattern by being a noun rather than a verb, but the overall convention is still readable and predictable.
Nine tools is a reasonable size for a browser-control server and fits the well-scoped 3-15 range. The count is not excessive, though native_browser does add some redundancy.
The set covers the core browser interaction lifecycle: navigation, clicking, typing, scrolling, key presses, reading state, and screenshots. native_browser extends coverage to tab lifecycle, diagnostics, emulation, files, and batch actions, so the domain appears well covered.
Related MCP Connectors
Browser MCP for logged-in tasks. Uses your Chrome — credentials stay local. Zero-token replay.
Hosted real Google Chrome MCP with per-user persistent state. Navigate, click, type, screenshot.
Oya, the HIPAA-compliant agentic browser, over MCP: browse, run playbooks, hand a tab to a person.
Use a person's computer after they approve it there: files, Terminal, browser, local MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables MCP-compatible agents to securely control the user's already authenticated Chrome browser via explicit tab authorization and DOM-based actions.1Apache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables secure browser control and automation through MCP, adding domain validation to tab-specific operations while preserving navigation, content, window, history, bookmark, and request-monitoring tools.MIT
- FlicenseNot gradedqualityCmaintenanceEnables MCP clients to control real Chrome tabs in existing profiles, supporting navigation, interaction, screenshots, and console/network inspection across multiple Chrome instances.-
- AlicenseNot gradedqualityBmaintenanceEnables local control of existing Chrome/Chromium browser tabs through MCP, including tab management, navigation, content reading, screenshots, and page interaction.Apache 2.0