BrowserClaw
Allows AI agents to control and automate the Brave browser, reusing active sessions and providing tools for navigation, DOM interaction, and tab management.
Allows AI agents to control and automate the Opera browser, reusing active sessions and providing tools for navigation, DOM interaction, and tab management.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Why BrowserPaw
BrowserPaw runs as a Chrome MV3 extension plus a local Native Messaging bridge. It uses the browser profile you already have instead of copying profile data or starting a separate automation browser. MCP clients can inspect pages, act with bounded tools, and verify results without making a remote service the owner of your browser session.
The project separates three things that are often mixed together:
Static operating guidance that teaches an agent how to use BrowserPaw.
Durable task and page ownership, so parallel work does not silently take over user pages.
Verified site skills, which are learned from successful tasks and reused only after independent validation.
Related MCP server: OpenBrowser
β‘ What is BrowserPaw?
BrowserPaw is a Chrome extension and local MCP server. Its canonical tool names
start with chrome_*, while each client may add its own namespace around them.
The default core tool profile keeps discovery small; use
CHROME_MCP_TOOL_PROFILE=full or chrome_tool_docs when a task needs the wider
surface.
Two execution paths are available:
Deterministic tools and pipelines for indexed actions, forms, keyboard, uploads, downloads, screenshots, network work, and assertions.
chrome_act_toward_goalfor a bounded local perception-action loop when an on-page goal is easier to describe than to decompose into every step.
The persistent browserpaw repl exposes the same execution service as small
task, page, locator, skill, and help interfaces for multi-step code workflows.
It is a documented BrowserPaw subset, not a claim of full Playwright
compatibility.
π― Key capabilities
Session reuse β Runs against the profile already open in Chrome; BrowserPaw does not copy your browser profile or move credentials into a second browser.
Pruned, indexed DOM β
chrome_read_domassigns document-scoped references and reports action budgets, frame coverage, omitted regions, and truncation. A fast snapshot prioritizes the viewport and interactive targets.Strict, frame-aware actions β Explicit frame targets stay within that frame; ambiguous matches are rejected; nested OOPIF coordinates are projected through their actual renderer geometry.
Card flattening and viewport virtualization β
flattenCardscollapses repetitive feed cards into one-line summaries;virtualizeViewportfolds off-screen list items into count placeholders.Shadow DOM traversal β Recursively walks open shadow roots; closed shadow hosts are tagged and interacted with at the host level. Accessible names are extracted from icon-only buttons (aria-label, title, SVG titles).
Batch and form pipelines β Run multi-step click/fill/wait/assert/extract sequences with one mutation budget and explicit partial or unknown outcomes.
Overlay dismissal β
chrome_dismiss_overlaycloses marketing popups, cookie banners, and modals in one step, without dumping the DOM.Delta observations β Request DOM changes together with an action instead of paying for a separate full snapshot after every step.
Native event fidelity β Clicks and keystrokes are dispatched as trusted CDP events (
isTrusted: true), so React/Vue/Angular and Shadow DOM handlers fire normally.Action outcomes β Results distinguish pre-dispatch rejection, dispatched, unknown, and verified or unverified postconditions. Unknown mutations are never silently replayed.
Coordinate fallback β When DOM indexing fails (canvas, WebGL, unknown custom UI), screenshots and
chrome_computerprovide a documented visual path.Adaptive viewport and screenshot budget β Owned pages follow the real Chrome window size and device pixel ratio instead of a forced 1440Γ900 frame. Inline screenshots default to an aspect-preserving 1568px/1.15MP JPEG budget for OCR and token balance;
savePngwrites a full physical-resolution PNG. Screenshot output is PNG/JPEG only, never WebP.Human handoff β
chrome_request_human_interventiondims the page, shows a banner, and parks the cursor so the user can complete 2FA or captchas; automation resumes afterward.Task ownership and learning β Durable tasks track borrowed, newly opened, handed-off, and temporary pages. Verified site skills are stored in the Native library and shared by every connected client.
π§ Interactive micro-loop
ββ Macro Planner (your reasoning LLM) ββββββββββββββββββββ
β Task decomposition, cross-page strategy, recovery β
βββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββ
β MCP (low frequency)
βΌ
ββ Semantic Micro-Loop (Native Server) βββββββββββββββββββ
β chrome_act_toward_goal: β
β perceive β decide (enabled model) β act β verify β
β No MCP round-trip per step β
βββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββ
β Native Messaging
βΌ
ββ Chrome MV3 Extension ββββββββββββββββββββββββββββββββββ
β canonical tools Β· CDP events Β· in-page engine β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββRouting guideline:
Fixed action sequence, known indices β deterministic tools (
chrome_batch_actions,chrome_form_pipeline).Single-page goal in natural language β
chrome_act_toward_goal.Long-horizon, multi-page, novel, or escalated situations β the calling agent drives.
Ordinary click, fill and named-target tools resolve targets deterministically first. Supported non-exact text, label and named-role misses may use one bounded semantic decision when a model is enabled. Exact selectors, explicit references, coordinates, frame boundaries and actionability remain strict. Input values stay separate from target descriptions.
The optional micro-loop remains bounded (default 10, maximum 60 steps). It selects complete action-target candidates, stops on uncertain delivery, and requires independent read-only verification before reporting completion. Automatic submission is limited to explicitly requested searches on identified search controls. External writes return to the calling agent.
Model modes:
Off: No semantic inference or model preload. Deterministic tools remain available; the autonomous micro-loop is hidden from tool discovery and rejects direct execution.
Local: Uses the separately installed local decider. Availability, accuracy and performance are evaluated independently from TypeSafe Jev.
Remote: Uses the configured TypeSafe endpoint and model. Set
TYPESAFE_API_KEYor configure the Native service through the popup. Candidate descriptions and relevant context go to that endpoint; do not put secrets in locator descriptions.Failures: BrowserPaw preserves your selected backend. Temporary network, timeout and rate-limit failures pause inference for 30 seconds; the next use can resume the same backend without replaying the failed operation. Authentication/configuration faults require a correction; saving a corrected configuration restores the previously selected mode. A deliberate Off selection stays off, including after restart. The popup follows Native state.
Existing remote vision: Remains experimental and capability-gated before screenshot capture. The concrete release returned by the endpoint determines eligibility; an alias alone does not establish image support. Coordinate freshness and consent checks remain required.
See semantic interaction and bounded goals for limits, verification, recovery and learned-skill boundaries.
π Quick start
1. Build the bridge and load the extension
git clone https://github.com/GoldenLoaf24h/browserpaw.git
cd browserpaw
pnpm install
pnpm build
node app/native-server/dist/scripts/register-dev.jsOpen chrome://extensions, enable Developer mode, and load
app/chrome-extension/.output/chrome-mv3. A prebuilt extension, release
installation, Windows details, Jev configuration, and troubleshooting are
covered in INSTALL.md.
2. Connect a client
Client | Supported integration |
Generic MCP client | Stdio |
ChatGPT/Codex | Portable plugin in |
Hermes Agent | Native plugin in |
Claude Code | Plugin marketplace in |
DeepSeek Harness | Cordis bundle in |
Every client ultimately talks to the same local BrowserPaw Native service and therefore shares tasks, page ownership, and verified site skills.
3. Install the operating skill
For an ordinary Agent Skills client, install the packaged, client-neutral skill:
browserpaw skill installThe default destination is ~/.agents/skills/browserpaw. --target names a
different skills root, so the final directory is always
<target>/browserpaw. --force only replaces an existing BrowserPaw install
that carries its ownership marker.
4. Verify
browserpaw doctor
node skills/browserpaw/scripts/doctor.mjsClaude Code plugin
BrowserPaw also ships a Claude Code plugin that bundles the operating skill and the stdio MCP server. With Chrome and the extension already running:
/plugin marketplace add GoldenLoaf24h/browserpaw
/plugin install browserpaw@browserpawChoose user, project or local scope in the /plugin panel. The tools appear as
mcp__plugin_browserpaw_browserpaw__chrome_*; /browserpaw loads the operating
guide. The plugin runs mcp-chrome-stdio from PATH, so install the bridge
globally if the shim is missing:
npm install -g ./app/native-serverSee INSTALL.md for shell installation, local checkouts and troubleshooting.
π οΈ Tool surface
The canonical chrome_* tools cover task/page ownership, navigation, DOM
observation, strict indexed actions, batch and form pipelines, keyboard, uploads,
downloads, dialogs, screenshots, visual fallback, network capture, storage,
history, bookmarks, performance traces, and bridge health. The live core
profile avoids announcing the entire surface to every session.
Use docs/TOOLS.md for generated schemas or call
chrome_tool_docs for the exact version in the running Native service. Client
prefixes differ: DSH exposes mcp__browserpaw__chrome_*, Claude Code exposes
mcp__plugin_browserpaw_browserpaw__chrome_*, and Hermes intentionally exposes a
curated browserpaw_* wrapper set.
π§© Skills, references, and recipes
BrowserPaw keeps reusable knowledge in three separate layers:
Layer | Location | Purpose |
Canonical Agent Skill |
| Client-neutral operating instructions, |
Installed static skill |
| Read-only copy installed from the Native package |
Learned Native skills |
| Parameterized site skills learned from successful tasks and enabled only after independent verification |
The canonical skill is distributed to the ChatGPT/Codex, Claude Code, and DSH
plugins unchanged. Hermes uses its own skill template because its public tool
surface consists of browserpaw_* wrappers rather than the full
chrome_*/MCP namespace. Learned skills are never copied into client plugin
directories; every client reads them through the shared Native service.
The references/ files contain durable operational knowledge such as tool
selection, action outcomes, visual fallback, task and skill lifecycle, and
troubleshooting. They must not contain temporary element references, tab,
document, or session IDs, coordinates, credentials, cookies, or user input.
Packaged recipes under assets/recipes/ are copied into the Native distribution
and remain read-only site guidance.
ποΈ Architecture
AI Client (any MCP-capable agent)
β MCP over Stdio (recommended zero-config) or HTTP/SSE on 127.0.0.1:12306
βΌ
Native Messaging Bridge (Fastify + Stdio Host)
βββ Fast Decision Engine (Jev micro-loop)
βββ Passthrough for extension-executed canonical tools
β Chrome Native Messaging
βΌ
Chrome MV3 Extension (Service Worker)
βββ In-Page Engine (1-based DOM indexing)
βββ CDP Session Manager
βββ Agent Cursor OverlayFor details, see docs/ARCHITECTURE.md.
π Documentation
Project Map β Navigation hub and reading paths.
Tool Reference β Schemas for all canonical tools.
Install & Onboard β Step-by-step setup including Jev key.
Agent Integration β MCP client configuration.
Plugin Compatibility β Official package formats and per-client boundaries.
Architecture β Design and decisions.
Troubleshooting β Connection and execution issues.
π‘ Acknowledgments
hangwin/mcp-chrome β MV3 extension and Native Messaging bridge foundation.
browser-use/browser-use β DOM-first indexing principles.
BrowserOS β DOM diffing and element grep patterns.
TypeSafe β Jev System One fast-decision models.
π Legal & License
This project is licensed under the AGPL-3.0 license (GNU Affero General Public License v3.0 or later).
βοΈ Open Source & SaaS Copyleft (Section 13)
Under the terms of AGPLv3, any modifications, forks, or derivative worksβincluding those hosted remotely as a network service, cloud gateway, or SaaS platform interacting with users over a computer networkβmust make their complete corresponding source code freely available under the same AGPL-3.0 license.
π‘οΈ Disclaimer of Warranties & Limitation of Liability
This software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and non-infringement. In no event shall the authors or copyright holders be liable for any claim, damages, account suspensions, data loss, or other liability arising from, out of, or in connection with the software or the use or other dealings in the software.
π Compliance with Third-Party Terms
Users are solely responsible for ensuring that their automated browser workflows comply with all applicable local laws, regulations, and the Terms of Service (ToS) or robots.txt policies of any third-party websites or services accessed.
π·οΈ Trademarks & Non-Affiliation
Google Chrome is a trademark of Google LLC. Microsoft Edge is a trademark of Microsoft Corporation. OpenAI and ChatGPT are trademarks of OpenAI, Inc. TypeSafe is a trademark of TypeSafe, Inc. BrowserPaw is an independent open-source project and is not sponsored, endorsed, or affiliated with any of these entities. Third-party software attributions and licenses are documented in NOTICE.
π‘οΈ Verification & Quality
Development acceptance gates, build/deployment verification, and runtime identity standards are defined in docs/QUALITY.md.
Run pnpm verify to execute full static quality and build audits.
Version 4.1.2 is the latest published reliability release. It converges observation scope, explicit interaction outcomes and form-step boundaries so that deterministic tools, batch execution, REPL and Jev return the same facts. Its complete gate, real-browser acceptance, production deployment, Linux/Windows CI and release assets are recorded. The 4.1.2 release also adds explicit delayed-page recovery, fast-observation fail-closed behavior, unified expected-page restriction handling and error-page injection recovery. See the 4.1.2 release record and current development work. The reproduced Native idle protocol failure in 4.1.0 was repaired and verified on an unchanged connection for more than eleven minutes; that bounded evidence is not a guarantee for every long-running workload. The 320-run M7 comparison has stopped; its historical evidence remains available. The planned 95% task success and 20%/30%/50% efficiency thresholds are unproven. Report performance only from matched, versioned runs.
The Jev interaction integration is not yet runtime-qualified. Real Jev 1.14.0 evaluation safely refused two clear targets in an independent Chinese-language holdout, below the acceptance target. Deterministic tools remain the default; do not lower confidence thresholds or infer production accuracy from unit tests. See the development ledger.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
This server cannot be deployed
Maintenance
Related MCP Connectors
Control a real browser from AI agents: navigate, click, type, screenshot, read the page.
Web scraping, browser automation, screenshots and AI data extraction for AI agents via MCP.
Connect AI agents to your own Chrome with scoped access, approvals, and verified task results.
Let AI agents use your real, signed-in Chrome: tabs, clicks, forms, screenshots and video.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI agents to control a browser via MCP with structured perception, verified actions, and self-healing capabilities.1319 npm1MIT
- AlicenseNot gradedqualityBmaintenanceA zero-dependency MCP server that drives a real Chrome browser through a companion extension, enabling AI agents to automate real user sessions with trusted input events, compact accessibility-tree snapshots, and 14 tools for navigation, interaction, scripting, and inspection.374 npmMIT
- FlicenseNot gradedqualityBmaintenanceMCP server that enables AI agents to control Chrome via DevTools CDP and accessibility trees, providing 21 tools for browser automation including tab management, navigation, interactions, and page capture.-
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to operate local desktops and Chromium browsers through MCP tools, unifying accessibility trees, physical input, screenshots, DOM/ARIA, visual grounding, and result verification.2,318 npmMIT