Browserstage

io.github.CloudCorpRecordsPublished by GitHub account CloudCorpRecordsv0.1.0Updated Nov 7, 2026

Automate a browser with accessibility snapshots: navigate, click, type, fill and wait.

VerifiedSTDIODesktop onlyBrowser AutomationDeveloper Tools

Overview

AI-generated overview

Snapshot-driven browser automation MCP server that lets an assistant navigate pages, act on elements by accessibility references, and inspect console and…

What you can do
  • Navigate pages, go back, resize the window, manage tabs and close the browser
  • Capture accessibility snapshots, find text or regex matches in them, and take screenshots
  • Interact with elements: click, hover, drag and drop, select options, type, press keys, fill forms, upload files, handle dialogs
  • Wait for text or time to pass, and evaluate JavaScript or run Playwright snippets against the page
  • Read console messages and list or inspect network requests
When to use it
Useful when an assistant needs to drive a real browser: filling in forms, walking through a web flow, checking what a page renders, or debugging console and network behaviour. It is a fit for local, desktop-based automation rather than headless server deployments.
Requirements
Runs locally over stdio via npx or the Docker image. The package bundles no browser and downloads none; browser commands fail with a "Browser unavailable" error unless a Playwright-compatible executor is injected. No authentication, environment variables or headers are declared.
Before you install
The browser_run_code_unsafe tool runs arbitrary code against the page and should only be enabled where you would run arbitrary code yourself. The assistant can type, upload files, submit forms and click on live sites, which can change or send data. Console and network tools expose page traffic, including any credentials visible in requests.

Installation

In SourceWeft

  1. Open Browserstage in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

browserstage

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

bash
npx -y @reneturcios/browserstage mcp

CLI

bash
browserstage mcpbrowserstage navigate <url>browserstage snapshotbrowserstage 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:

json
{  "mcpServers": {    "browserstage": {      "command": "npx",      "args": ["-y", "@reneturcios/browserstage", "mcp"]    }  }}

Docker

bash
docker run -i ghcr.io/cloudcorprecords/browserstage          # MCP serverdocker run --rm ghcr.io/cloudcorprecords/browserstage --version

Development

bash
npm installnpm run buildnpm test

MIT license.

Source: README.md at commit ac97629

Tools

24

browser_navigate

Navigate to a URL

Parametersurlrequired

browser_navigate_back

Go back to the previous page in the browser history

Takes no parameters.

browser_snapshot

Capture accessibility snapshot of the current page

Parametersdepthtargetfilename

browser_find

Search the accessibility snapshot for text or a regular expression

Parameterstextregex

browser_click

Perform click on a web page

ParametersbuttontargetrequiredelementrequireddoubleClick

browser_hover

Hover over an element on the page

Parameterstargetrequiredelementrequired

browser_drag

Perform drag and drop between two elements

ParametersendTargetrequiredendElementrequiredstartTargetrequiredstartElementrequired

browser_drop

Drop files or data onto an element on the page

Parameterspathstargetrequiredelementrequired

browser_select_option

Select an option in a dropdown

Parameterstargetrequiredvaluesrequired

browser_type

Type text into an editable element

Parameterstextrequiredslowlysubmittargetrequiredelementrequired

browser_press_key

Press a key on the keyboard

Parameterskeyrequired

browser_fill_form

Fill multiple form fields

Parametersfieldsrequired

browser_take_screenshot

Take a screenshot of the current page

ParameterstypetargetfilenamefullPage

browser_run_code_unsafe

Run a Playwright code snippet against the current page (unsafe: arbitrary code execution)

Parameterscoderequired

browser_evaluate

Evaluate JavaScript expression on the page or on an element

Parameterstargetelementfunctionrequired

browser_wait_for

Wait for text to appear or disappear, or for a specified time to pass

ParameterstexttimetextGone

browser_handle_dialog

Handle a browser dialog

ParametersacceptrequiredpromptText

browser_file_upload

Upload one or multiple files

Parameterspaths

browser_console_messages

Returns all console messages

Parametersalllevelfilename

browser_network_requests

Returns a numbered list of network requests since loading the page

Parametersstaticfilename

browser_network_request

Returns the full details of a single network request

Parametersindexrequiredfilename

browser_tabs

List, create, close, or select a browser tab

Parametersurlindexactionrequired

browser_close

Close the current page and the browser

Takes no parameters.

browser_resize

Resize the browser window

Parameterswidthrequiredheightrequired

Version history

1
  1. v0.1.0LatestOct 31, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts