BrowserMesh MCP server
io.github.scrollDynasty/browsermesh·v0.2.1·3 starsIsolated multi-session Chromium runtime for external MCP clients over stdio.
3 stars71 downloads/wk
Reviews
Write oneNobody has reviewed BrowserMesh yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
BrowserMesh tools (35, 4 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
browser_action_and_waitAtomically register a navigation, response, popup, or dialog waiter first, then click or press on the explicitly addressed page under one shared deadline; the action locator may use a bounded semantic iframe chain. Popup pages receive a new BrowserMesh pageId in the same session with isDefault=false and are closed if the page limit is exceeded. Dialogs must be handled atomically because they canno
browser_backNavigate backward in the history of one explicitly addressed page without affecting pages or sessions used by other roles.
browser_checkEnsure a checkbox or radio located semantically or by CSS is checked on one explicitly addressed page. The operation is idempotent, bounded by timeoutMs, and isolated to the supplied session.
browser_clickClick exactly one semantic/CSS locator or short-lived snapshot ref on one explicitly addressed page. A locator may select the top document or a bounded outer-to-inner semantic iframe chain. Role locator names match exactly by default and every iframe-chain selector must resolve exactly; ambiguous locators return LOCATOR_AMBIGUOUS and stale or cross-page refs return STALE_ELEMENT_REFERENCE. Prefer
browser_double_clickDouble-click a semantic or CSS locator on one explicitly addressed page. Use this only when the application assigns distinct double-click behavior; the action is serialized with all browser work in that session and an ambiguous locator returns LOCATOR_AMBIGUOUS.
browser_drag_and_dropwrite actionDrag one semantic or CSS-located element onto another on one explicitly addressed page. Source and target are resolved in the same page and session, with bounded timeout and strict ambiguity errors.
browser_fillFill a form field located on one explicitly addressed page. The value is entered only in that session; use separate sessions for different identities.
browser_focusFocus a semantic or CSS locator on one explicitly addressed page without entering a value. Use this for focus-driven UI state or before a separate key action; the locator remains scoped to the supplied sessionId and pageId.
browser_forwardNavigate forward in the history of one explicitly addressed page without affecting other isolated sessions.
browser_get_titleRead the title of one explicitly addressed page in its owning isolated session.
browser_get_urlRead the current URL of one explicitly addressed page. Use the IDs returned for the intended session; there is no global current page.
browser_hoverMove the pointer over a semantic or CSS locator on one explicitly addressed page. Use this to reveal hover-driven controls or state before inspecting or interacting; BrowserMesh preserves same-session accepted order.
browser_navigateNavigate one explicitly addressed page to an absolute HTTP(S) URL. Keep using the sessionId/pageId pair for the intended account or role; navigation never changes a global active page.
browser_observebrowser_page_closeClose one explicitly addressed page in its owning session. Supply both IDs because BrowserMesh has no global current session or page.
browser_page_createwrite actionCreate an additional page inside one explicitly addressed session. Use it for another tab that must share that session's cookies and storage; use a separate session instead when identity or authentication must be isolated.
browser_page_listList pages belonging only to the addressed session. Session creation already returns the initial pageId; use this tool to rediscover or inspect all pages in that session.
browser_pressPress a key on a locator within one explicitly addressed page, preserving deterministic ordering with other operations in that session. A missing or unsuitable element returns OPERATION_TIMEOUT within timeoutMs (10 seconds by default) without closing MCP or browser sessions.
browser_reloadReload one explicitly addressed page in its existing isolated session and authentication state.
browser_runtime_infoReport bounded, read-only BrowserMesh version, launch state, effective configuration, and session counts without launching Chromium. Use this to diagnose setup and capacity safely; it never returns paths, launch arguments, environment values, browser state, or raw errors.
browser_screenshotCapture a bounded in-memory PNG screenshot of one explicitly addressed page, either as the viewport/full page or one semantic element optionally reached through a bounded iframe chain. Full-page and element capture use an immutable measured CSS-pixel clip plus encoded-byte validation. BrowserMesh returns image content and does not write to a caller-controlled path or inspect another session.
browser_scrollScroll an explicitly addressed page by bounded integer pixel deltas. Use deltaX for horizontal and deltaY for vertical movement; this typed operation exposes no arbitrary JavaScript and remains serialized within the session.
browser_scroll_into_viewScroll one semantic or CSS locator into the viewport of an explicitly addressed page. Use this before inspection or interaction when an off-screen target must become visible; it never accepts arbitrary JavaScript or coordinates.
browser_select_optionSelect an option on one explicitly addressed page using a semantic or CSS locator. A missing or unsuitable select returns OPERATION_TIMEOUT within timeoutMs (10 seconds by default), and the supplied session plus all other sessions remain usable.
browser_session_closeClose one explicitly addressed session and release all of its pages and isolated browser context. Close each role/account session when its workflow is complete.
browser_session_createwrite actionbrowser_session_getInspect one explicitly addressed browser session. Session names and metadata are workflow labels, not internal AI agents or owners.
browser_session_listList every browser session with its explicit sessionId, lifecycle status, name, and neutral workflow metadata. Use this to recover the correct session for each role/account; there is no global active session.
browser_snapshotbrowser_state_listList logical saved-state IDs available for optional restoration when creating a new isolated session; state contents and secrets are not returned.
browser_state_removewrite actionDelete persisted browser state by its safe logical stateId when it should no longer be restorable. This does not close or alter currently live sessions.
browser_state_saveSave cookies and supported storage from one explicitly addressed session under a safe logical stateId. Use this only when a later new isolated session should restore that authentication state.
browser_uncheckEnsure a checkbox located semantically or by CSS is unchecked on one explicitly addressed page. The operation is idempotent, bounded by timeoutMs, and isolated to the supplied session.
browser_visible_textRead visible text from a semantic or CSS locator on one explicitly addressed page. A locator may select the top document or a bounded outer-to-inner semantic iframe chain; the lookup remains confined to that page and session.
browser_waitWait for one deterministic passive condition on an explicitly addressed page: an exact/safe-glob URL, domcontentloaded/load state, locator state (optionally through a bounded semantic iframe chain), or case-sensitive top-document text presence/absence. The wait occupies that session queue, is bounded by timeoutMs, and must not depend on a later action queued in the same session; use browser_action
Public scan report
scanner v0.1.10 · 2026-11-03 · same rubric, same numbers if you re-run it
- Code scan75 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 6 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How BrowserMesh compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 92/100
- higher than 95% of 48,255 servers
- Tools
- 35
- the typical server has 7
- Tools that change things
- 11%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 3
- more than 80% of 28,688 servers
- Downloads a week
- 71
- more than 54% of 12,191 servers with a package
What its tools let an agent do: 31 read · 4 change
Install BrowserMesh in Claude Code, Cursor or VS Code
Runs npx -y browsermesh on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add browsermesh -- npx -y browsermesh
What the publisher says
From the BrowserMesh repository's README, as published. We do not edit it. Read it on GitHub
BrowserMesh
Run many browser sessions at once, fully isolated from each other, from one MCP server.
Every other browser MCP server gives your AI client one browser with a current tab. BrowserMesh gives it as many independent sessions as the task needs — each with its own cookies, storage, and authentication — running in parallel. Test checkout as a customer while an admin session verifies the order, in one conversation, without either seeing the other's state.
- Documentation
- Getting started
- MCP tool reference
External AI client
|
MCP stdio
|
BrowserMesh runtime
| | |
Session A Session B Session C
Context A Context B Context CThe external client reasons and plans. BrowserMesh executes browser operations, enforces isolation, orders work within each session, and returns structured results.
Works with Claude Code, Claude Desktop, Codex, Cursor, Windsurf, Qwen, and any other MCP-compatible client.
When to use BrowserMesh, and when not to
BrowserMesh is not a drop-in replacement for the general-purpose browser MCP servers. It is built around one thing those servers do not do, and it charges for it.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
BrowserMesh: common questions
- Is BrowserMesh MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the BrowserMesh safety report
- How do I install BrowserMesh?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does BrowserMesh need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is BrowserMesh maintained?
- The last commit was 7 days ago (2026-10-28). The latest release is v0.2.1.
- What can I use instead of BrowserMesh?
- Servers from other publishers that do the same job: Deja Vu MCP server.
- How does BrowserMesh compare with other MCP servers?
- safety score 92/100 (higher than 95% of 48,255 servers); tools 35 (the typical server has 7); tools that change things 11% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to BrowserMesh
Same job from other publishers: the closest match first, then the best rated.
- Deja Vudeja-vu: local memory over the session histories of forty-three coding agents.not reviewedEstablishedA