Browser Agents MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Browser Agents MCPsign up on news.ycombinator.com with a temp email and verify the link"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Browser Agents MCP
Upgraded version of web-agent-mcp
Note: 70% of the README is generated by AI and checked before committing
An MCP (Model Context Protocol) server that gives AI assistants full control of a real web browser. It exposes 42 tools for navigation, clicking, typing, form filling, file uploads, downloads, CAPTCHA solving, identity management, and multi-agent coordination. Each AI agent gets its own isolated browser session with a persistent profile and its own stored identity.
Features
42 browser automation tools exposed over MCP
Multi-agent support with isolated sessions per
agentIdPersistent browser profiles (cookies, logins survive restarts)
Human-like mouse movement, typing, and scrolling
Stealth mode to reduce bot detection
Automatic CAPTCHA detection and solving (reCAPTCHA v2, hCaptcha, Turnstile, image CAPTCHAs via 2Captcha)
Built-in identity vault with temporary email inboxes for signup and signin flows
In-memory agent-to-agent messaging
High-level
browser_tasktool to run a sequence of actions in one callStreamable HTTP transport (MCP compatible)
Related MCP server: UBA MCP Server
Requirements
Node.js 18 or higher
Git
Chromium (installed automatically by Playwright)
Optional: a 2Captcha API key for CAPTCHA solving
Installation
1. Clone the repository
git clone https://github.com/sankalpsinghcoder-ai/browser-agents-mcp.git
cd browser-agents-mcp2. Install dependencies
npm install3. Install Chromium for Playwright
npx playwright install chromium4. Create the environment file
Create a file named .env in the project root:
PORT=3000
CAPTCHA_API_KEY=
PROFILES_DIR=./profiles
VAULT_DIR=./vaultLeave CAPTCHA_API_KEY empty to disable CAPTCHA solving.
5. Build
npm run build6. Start the server
npm startYou should see:
Web Agent MCP v0.3.0 running on port 3000
MCP endpoint: http://localhost:3000/mcp
CAPTCHA solving: disabledVerifying the Server
Open a browser and visit:
http://localhost:3000/healthExpected response:
{
"status": "ok",
"service": "web-agent-mcp",
"version": "0.3.0",
"sessions": [],
"captchaEnabled": false
}Remote Access
localhost only works if the AI client runs on the same machine as the server. To expose the server to a remote client, use one of these options.
Option 1: ngrok
ngrok http 3000Use the provided HTTPS URL plus /mcp as your endpoint.
Option 2: Cloudflare Tunnel (free, temporary)
cloudflared tunnel --url http://localhost:3000Use the provided HTTPS URL plus /mcp.
Option 3: Deploy to a VPS (permanent)
On the server, set headless: true inside index.ts, rebuild, then run with a process manager:
npm install -g pm2
pm2 start dist/index.js --name browser-agents
pm2 save
pm2 startupPlace Nginx or Caddy in front for HTTPS.
Warning: this server has no authentication. Never expose it publicly without adding an auth layer (reverse proxy with API key, Cloudflare Access, or a private network such as Tailscale).
Tool Reference
Navigation
Tool | Description |
| Open a URL in the active tab |
| Go back in history |
| Go forward in history |
| Reload the page |
Inspection
Tool | Description |
| List interactive elements and visible text |
| Semantic inspection with roles and labels |
| Find an element by css, text, role, label, or placeholder |
| Extract structured data matching a selector |
Interaction
Tool | Description |
| Human-like click on element at index |
| Human-like typing into an input |
| Select an option from a dropdown |
| Move mouse over an element |
| Press a key or type text |
| Human-like scroll |
Forms and Files
Tool | Description |
| Fill multiple fields in one call |
| Upload files to a file input |
| Click a download link and save the file |
Tabs
Tool | Description |
| Open a new tab |
| Switch to a tab |
| Close a tab |
| List all open tabs |
Waiting
Tool | Description |
| Sleep for a number of milliseconds |
| Wait for an element to reach a state |
| Wait for text to appear |
| Wait for navigation to complete |
Reading
Tool | Description |
| Read visible page text |
| Capture a PNG screenshot |
Sessions and Permissions
Tool | Description |
| Inspect, close, or clear a session |
| List all active agent sessions |
| Grant or clear browser permissions |
| Show the persistent profile path |
CAPTCHA
Tool | Description |
| Detect the CAPTCHA type on the page |
| Solve any CAPTCHA on the page |
| Click an element, then solve any CAPTCHA that appears |
Identity and Accounts
Tool | Description |
| Get the agent's stored email and password |
| Create a temporary email inbox |
| Wait for an email to arrive |
| Sign up using the agent's identity |
| Sign in using the agent's identity |
Agent Messaging
Tool | Description |
| Send a message to another agent |
| Read messages for this agent |
High-Level
Tool | Description |
| Execute a sequence of actions in one call |
Project Structure
browser-agents-mcp/
dist/ compiled JavaScript (gitignored)
node_modules/ dependencies (gitignored)
profiles/ per-agent browser profiles (gitignored)
vault/ per-agent identity files (gitignored)
src/ optional source folder
index.ts main source file
.env environment variables (gitignored)
.env.example environment template
.gitignore
package.json
package-lock.json
tsconfig.jsonConfiguration
Environment variables read at startup:
Variable | Default | Description |
|
| HTTP server port |
| empty | 2Captcha API key. Empty disables CAPTCHA solving. |
|
| Folder for persistent browser profiles |
|
| Folder for stored agent identities |
Security Notes
The server has no authentication. Do not expose it publicly without protection.
profiles/contains live browser sessions (cookies, tokens). Never commit or share it.vault/contains agent emails and passwords. Never commit or share it..envcontains API keys. Never commit it.Use Tailscale, Cloudflare Access, or a reverse proxy with an API key if you need remote access.
Disclaimer
This project is intended for research and automation. Users are responsible for how they use it. Do not use it to violate website terms of service or applicable laws.
This server cannot be deployed
Maintenance
Related MCP Connectors
Stealth web browser for agents: search, fetch, click, download and type in persistent MCP sessions.
Web search, browser automation, scraping, crawling and CAPTCHA solving for AI agents.
Undetectable cloud browser sessions for AI agents and scrapers. Navigate, extract, click, captcha.
AI-powered browser automation — navigate, click, fill forms, and extract data from any website.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides a real browser that bypasses bot detection (Cloudflare, Turnstile) for AI agents, enabling navigation, clicking, typing, screenshots, and data collection through MCP tools.107 npmMIT
- AlicenseBqualityAmaintenanceProvides AI agents with a real browser environment for web automation, memory, and secure credential management through 15 MCP tools.15MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI assistants to control a browser through a set of tools, allowing them to perform web automation tasks like navigation, typing, clicking, and taking screenshots.-
- AlicenseAqualityAmaintenanceEnables assistants such as Claude Code, Codex, and Gemini CLI to drive a real browser over MCP — navigating, clicking, typing, and reading live pages from plain-English instructions. Supports optional proxy routing, persistent profiles for surviving logins, and reproducible browser identities via seeds.1631,755MIT