gsd-browser CLI

A native Rust CLI for Chrome over CDP: 90-plus commands, a 50-tool MCP server and a persistent daemon with page snapshots.

  • 60 ★ on the repository
  • Last commit
  • Apache-2.0
CLI

Broad access

Why this level

  • It drives a real Chrome and stores logins and session state, which opens accounts to an agent.
  • A hosted MCP over HTTP exposed to the network is protected only by an access token.
All reasons and checks

open-gsd/gsd-browser

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add cli/gsd-browser

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • It drives a real Chrome and stores logins and session state, which opens accounts to an agent.
  • A hosted MCP over HTTP exposed to the network is protected only by an access token.

This is third-party code. Review the repository files before installing.

What it does

gsd-browser drives Chrome and Chromium over CDP. A background daemon starts on first use and keeps the session, and commands cover navigation, interaction, snapshots with element refs, assertions, structured extraction, network rules, visual diffing, tracing and recording. It is built for agents, CI and developers who want deterministic browser control without a heavy test framework. The `gsd-browser mcp` command starts an MCP server with more than 50 tools, live resources and ready workflows such as login, page audit and evidence gathering. It runs over stdio or as hosted HTTP with an access token. It also offers an encrypted auth vault, state save and restore, device emulation and prompt injection scanning.

Who it is for. Agent developers and testers who need fast deterministic control of a real browser with shared viewing and evidence recording.

Good fit when

  • An agent walks a multi-step web flow and the result must be confirmed with recordings and snapshots.
  • You need on-page checks: waits, assertions and screenshot comparison against a baseline.
  • The network must be mocked or blocked during a check and then HAR or PDF exported.
  • A cloud MCP client connects to a hosted server over HTTP with a token.

Not a fit when

  • You need a browser other than Chrome or Chromium: the tool works over CDP.
  • You need ready tests at the level of a big framework: this is a control tool, not a test suite.
  • The server would be exposed to the network without protection: the HTTP mode requires a token.

Example request

Open the staging login page, fill the form, take a snapshot and save a step recording with evidence.

Limitations

The tool drives a live Chrome, so logins, cookies and saved sessions give an agent access to accounts, and a separate profile is wise. The MCP HTTP mode is exposed to the network only with `GSD_BROWSER_MCP_AUTH_TOKEN` and over HTTPS. The optional token check `GSD_BROWSER_MCP_AUTH_VERIFY_URL` sends requests to the OpenGSD console and counts a free quota. Releases move fast: npm `latest` is 0.1.29 while `dev` matches release 0.1.31. The latest repository commit dates from September 2026.

How to disable. Stop the daemon, uninstall the package with `npm uninstall -g @opengsd/gsd-browser` and remove the `gsd-browser` entry from the MCP config. For the Codex plugin remove the `~/plugins/gsd-browser` folder.

FAQ

How do I connect it to Cursor or Claude Desktop?

Run `gsd-browser mcp` as a stdio server and add it to the client configuration. `./scripts/mcp-quickstart.sh` offers claude, cursor, vscode and generic variants.

How do I expose the server to remote clients?

Set `GSD_BROWSER_MCP_AUTH_TOKEN` and run `gsd-browser mcp --http --host 0.0.0.0 --port 8788`. Expose `/mcp` over HTTPS and the client sends an `Authorization: Bearer` header.

How do I install the Codex plugin?

With `curl -fsSL https://raw.githubusercontent.com/open-gsd/gsd-browser/main/install.sh | bash -s -- --codex-plugin`. It installs the CLI, writes the plugin to `~/plugins/gsd-browser` and registers it.

What is a snapshot with versioned refs?

A page snapshot where elements get versioned refs. The agent addresses elements by ref and does not lose them when the page re-renders.

Can I install without npm?

Yes. There are prebuilt binaries in GitHub releases and a build with `cargo install --path cli`.

Discussion

No questions or reviews yet.

CLI tools
Official

A fast Rust CLI for agent browser automation: accessibility snapshots with element refs, an MCP server and skills

CLIBroad access50.5KRepository stars

A Rust binary with no MCP server: an agent drives your open Chrome or Edge, and tabs are pinned with target labels.

CLIBroad access256Repository stars

browser-debugger-cli (bdg)

browser-debugger-cli

The bdg CLI keeps Chrome open in the background and gives agents network, console, cookies and styles as short commands.

CLIExtended access185Repository stars

An agent drives your real logged-in Chrome: a CLI, MCP and an extension with a separate tab group per session

CLIBroad access257Repository stars

A CLI, skill and MCP server for driving Chrome with short Puppeteer scripts, with tabs that keep state between calls

CLIBroad access6.7KRepository stars

A skill for Amp, Claude Code and Cursor: the agent drives your live Chrome with its open tabs and signed-in accounts through a single debugging toggle

SkillBroad access3.3KRepository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
gsd-browser (this card)no60
agent-browseryesnot required50,530a fast Rust CLI for browser automation with accessibility snapshots and MCP; gsd-browser adds evidence recording, an auth vault and shared viewing
Browser Harnessno19,048drives your real Chrome over DevTools Protocol from Browser Use; gsd-browser keeps a persistent daemon and more than 50 MCP tools

README in short

The project is written in Rust and keeps a persistent daemon, which makes later commands fast. The main path for agents goes through MCP: resources return a live snapshot, state and timeline while prompts define multi-step workflows.

README badge

Report a problem