Skip to main content
Glama
codeChap

mcp-server-agent-browser

by codeChap

mcp-server-agent-browser

Status: Beta — CLI wrapper is covered by unit tests and a fake-browser stdio smoke test. Cookie restore across a real Chromium restart is still a manual check.

Let LLMs drive a real browser. This MCP server wraps agent-browser (Vercel Labs) so any MCP client can navigate, fill forms, click, snapshot the accessibility tree, and screenshot.

It is not Grok's web_search / open_page. Those fetch documents. This one runs Chromium. Use search to find a URL, then browser_navigate.

Prerequisites

cargo install agent-browser
agent-browser install

Call browser_doctor if anything is missing.

Related MCP server: camofox-browser-mcp

Build

cargo build --release

Binary: target/release/mcp-server-agent-browser

cargo test
./tests/test-stdio.sh

Real Chromium login-restore is not in CI. After a headed login, restart the MCP process and confirm the next browser_navigate is still logged in.

Configuration

MCP client (stdio):

{
  "mcpServers": {
    "agent-browser": {
      "command": "/path/to/mcp-server-agent-browser"
    }
  }
}

Optional TOML at ~/.config/mcp-server-agent-browser/config.toml (see config.example.toml). Missing file uses defaults. Override the path with MCP_AGENT_BROWSER_CONFIG.

Setting

Default

Meaning

headed

false

Show a window. Launch-time only; browser_close first if a headless daemon is already up. Also AGENT_BROWSER_HEADED=1.

persist

true

Bare --restore per session_id (default session key default) plus --namespace mcp-server.

keep_daemon

false

If false, MCP exit runs close so restore state is saved and Chrome does not leak.

namespace

mcp-server

Isolates this MCP's daemon sockets and restore files from a human using the CLI.

command_timeout_secs

120

Wrapper timeout. Playwright's own 25s action timeout is left alone (CLI IPC is ~30s).

idle_timeout

1h

Daemon idle shutdown. Use "0" with keep_daemon = true.

download_dir

~/Downloads

--download-path. ~ is expanded.

profile

unset

Optional persistent Chrome user-data dir. Not your daily Chrome profile.

encryption_key_file

unset

Sets AGENT_BROWSER_ENCRYPTION_KEY. Restore files are credentials; plaintext unless this is set.

AGENT_BROWSER_PATH

agent-browser

CLI binary.

allowed_domains is optional. Localhost is allowed unless you set a list that excludes it.

What it can do

Same interaction set as before (navigate, click, type, snapshot, screenshot, cookies, eval, CDP, sessions), plus:

  • browser_doctor — CLI, config, persist, headed/DISPLAY, daemon guess. Does not launch Chrome.

  • browser_get_text pattern — regex over page text with two lines of context.

  • browser_waitload / url / text as well as a selector.

Typical loop:

  1. browser_navigate

  2. browser_snapshot (-i for interactive)

  3. browser_click / browser_fill with @refs

  4. browser_screenshot if you need pixels

Persistence

With persist = true (default), each session saves cookies and localStorage on close and on the CLI's autosave interval. State lives under ~/.agent-browser/, namespaced to mcp-server. Isolated session_ids do not share a restore key.

Headed login once, browser_close or exit the MCP, start again. The next navigate should restore that session.

A killed MCP process may leave the daemon running. browser_doctor reports that. Idle shutdown still saves if persist is on.

Limitations

  • Chromium via agent-browser (Playwright). No search.

  • Headed is ignored until the existing daemon is closed.

  • Snap Chromium on Ubuntu can fail to advertise its DevTools port; prefer agent-browser install's browser or executable_path.

  • Writes (screenshot, pdf, download) must be relative, under /tmp, or under download_dir.

  • 25s Playwright action timeout is an upstream CLI limit, not this wrapper.

License

MIT

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server that enables AI tools to control local browser sessions for ChatGPT, Claude, and other AI services, supporting querying, navigation, file uploads, and artifact management.
    44
    546
    Mozilla Public 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server for controlling a local camofox-browser instance, enabling LLM agents to perform web automation tasks such as navigation, interaction, snapshotting, and content extraction.
    43
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Agent-native browser control MCP server that enables AI agents to browse and interact with web pages via accessibility tree snapshots and ref ID-based commands.
    15
    2
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    MCP 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.
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/codeChap/mcp-server-agent-browser'

If you have feedback or need assistance with the MCP directory API, please join our Discord server