mcp-server-agent-browser

mcp-server-agent-browser

MCP server that wraps agent-browser to let LLMs control a real browser, providing tools for navigation, interaction, reading page content, accessibility snapshots, screenshots, and session management.

Category
Visit Server

README

mcp-server-agent-browser

Status: Testing — Functional but still being validated. Expect rough edges.

Let LLMs drive a real browser. This MCP server wraps agent-browser (by Vercel Labs) so any MCP-compatible client — Claude Desktop, Claude Code, or others — can navigate pages, fill forms, click buttons, take screenshots, and more.

Claude Code navigating Hacker News and taking a screenshot

Prerequisites

Install the agent-browser CLI:

cargo install agent-browser
agent-browser install

Build

cargo build --release

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

Configuration

Add to your MCP client config (example for Claude Desktop / Claude Code):

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

The server communicates over stdio using JSON-RPC 2.0 — it works with any MCP client.

Environment Variable Description Default
AGENT_BROWSER_PATH Path to the agent-browser binary agent-browser (via $PATH)

What it can do

The server exposes 35+ tools covering:

  • Navigation — open URLs, go back/forward, reload
  • Interaction — click, type, fill, press keys, hover, scroll, drag, select, check/uncheck, upload, download
  • Reading — get page text, HTML, attributes, URL, title
  • Accessibility — browser_snapshot returns an accessibility tree with @ref identifiers that can be used as selectors in subsequent calls
  • State — check if elements are visible, enabled, or checked
  • Capture — screenshots (with optional annotation for vision models) and PDF export
  • Sessions — create isolated browser sessions with independent cookies/storage/viewport
  • Cookies — get, set, clear
  • JavaScript — evaluate arbitrary JS in the page context
  • DevTools — read console logs, inspect network requests, connect via CDP

Each tool is self-documented with parameter schemas — your MCP client will discover them automatically.

How it works

A typical AI-driven interaction follows this pattern:

  1. browser_navigate — open a page
  2. browser_snapshot — get the accessibility tree to understand the page structure
  3. browser_click / browser_fill — interact using @ref selectors from the snapshot
  4. browser_screenshot — visually verify the result

The agent decides which tools to call and in what order. You just describe what you want done.

Sessions

All tools accept an optional session_id. Create isolated sessions with browser_new_session and pass the returned ID to subsequent calls. Each session has its own cookies, storage, and viewport. Without a session ID, commands use the default session.

Timeouts

Commands time out after 60 seconds by default. The browser_wait tool adjusts its timeout automatically based on the wait duration you specify.

Limitations

  • Requires the Rust toolchain to build, and Node.js for the agent-browser daemon
  • Chromium only — agent-browser uses Playwright under the hood
  • Headless by default — no visible browser window
  • The 60-second default timeout may not be enough for slow pages or complex interactions
  • No built-in authentication persistence — cookies reset between server restarts unless managed via the cookie tools
  • File upload/download paths are validated but restricted from system directories

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured