About browserstage
browserstage combines a CLI and stdio MCP server for snapshot-driven browser automation. It is for agents that need to locate and operate on page elements using accessibility snapshots; a Playwright-compatible executor must be injected because the package includes no browser.
Key features
- 01Accessibility snapshots and element finding
- 02Navigation, clicking, hovering, and dragging
- 03Typing, form filling, and file uploads
- 04Reading console messages and network requests
- 05Managing tabs and handling dialogs
Use cases
- 01Locate and operate elements from page snapshots
- 02Fill forms and upload files
- 03Inspect browser console and network activity
MCP support
It provides a stdio MCP server with tools for navigation, snapshots, browser interaction, tab management, and diagnostics. Browser operations require a configured Playwright-compatible executor.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
24Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| url | string | Yes | The URL to navigate the page to |
Details
From the project READMEbrowserstage
Snapshot-driven browser automation as a CLI and a stdio MCP server in one bin. Navigate, capture an accessibility snapshot of the page, then act on elements by the references in that snapshot: click, hover, drag, drop, type, fill whole forms, select options, press keys, upload files and handle dialogs. Console messages and network requests are readable tools, and tabs can be listed, created, closed and selected.
The browser sits behind an injectable executor interface
(StageBrowser in src/types.ts). This package bundles no browser
and downloads none: with no executor configured, browser commands
fail with a clear "Browser unavailable" error. Deployments inject
a Playwright-compatible executor to drive a real browser. The
browser_run_code_unsafe tool runs arbitrary code against the
page in the original design and keeps that name and its warning
here: only enable it where you would run arbitrary code yourself.
Install
npx -y @reneturcios/browserstage mcp
CLI
browserstage mcp
browserstage navigate <url>
browserstage snapshot
browserstage press <key>
browserstage resize <width> <height>
browserstage --version
Exit codes: 0 success, 1 browser error, 2 usage error.
MCP tools
24 core tools: browser_navigate, browser_navigate_back,
browser_snapshot, browser_find, browser_click,
browser_hover, browser_drag, browser_drop,
browser_select_option, browser_type, browser_press_key,
browser_fill_form, browser_take_screenshot,
browser_run_code_unsafe, browser_evaluate, browser_wait_for,
browser_handle_dialog, browser_file_upload,
browser_console_messages, browser_network_requests,
browser_network_request, browser_tabs, browser_close,
browser_resize.
MCP client config:
{
"mcpServers": {
"browserstage": {
"command": "npx",
"args": ["-y", "@reneturcios/browserstage", "mcp"]
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/browserstage # MCP server
docker run --rm ghcr.io/cloudcorprecords/browserstage --version
Development
npm install
npm run build
npm test
MIT license.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.