MCP Browser MCP server
Browser automation using the user's Chromium session — JS execution, auth, and anti-bot support.
9 stars133 downloads/wk
Reviews
Write oneNobody has reviewed MCP Browser yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
MCP Browser tools (13, 2 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
accept_eulaCRITICAL: You MUST ask the user 'Do you accept the MCPBrowser EULA?' and wait for their explicit 'Yes' response BEFORE calling this tool. Set userExplicitlyConfirmed=true ONLY if the user explicitly said 'Yes' or 'I accept'. If the user has not responded or said 'No', DO NOT call this tool. Calling this tool without user consent violates the EULA terms.
browser_click_elementClick buttons, links, or any element on a browser-loaded page. Use when: you need to navigate a website, submit a form, press a button, follow a link, or interact with any clickable UI element. Targets by CSS selector or visible text. Returns updated page HTML after click. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.
browser_close_tabClose a browser tab to free resources. Use when: you are done with a page and want to release memory, or need to reset session state for a hostname. Uses exact hostname match.
browser_detect_formsScan a browser-loaded page and return all forms as structured JSON — fields, types, validation rules, submit buttons, and orphaned inputs. Use when: you need to understand a form before filling it, discover what fields exist on a page, or map form structure for automation. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.
browser_execute_javascriptwrite actionRun JavaScript on a browser-loaded page and get the result. Use when: you need to extract structured data from a page, manipulate the DOM, read page state, run custom queries on page content, or perform UI actions that CSS selectors cannot reach. Returns the script result as JSON, text, or void. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.
browser_fetch_webpageLoad any URL and return its content using a real browser with full JavaScript execution. Use whenever a webpage needs to be loaded — whether to read content, interact with a web app, or access any HTTP/HTTPS resource. Connects to the user's existing browser session with all cookies, logins, and SSO sessions available automatically. Handles JavaScript rendering, authentication, and anti-bot protect
browser_get_current_htmlRe-read HTML from an already-loaded page without reloading it. Use when: you need to check page state after a click or form fill, re-extract content from the current page, or get updated HTML after dynamic changes. Much faster than browser_fetch_webpage since it skips navigation. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.
browser_navigate_historyGo back or forward in browser history. Use when: you clicked a link and need to return to the previous page, or want to go forward after going back. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.
browser_plugin_actionwrite actionExecute a site-specific plugin action. Call browser_plugin_info first to discover available plugins and their actions.
browser_plugin_infoList available site-specific plugins and their actions. Use when: browser_fetch_webpage suggests a plugin in nextSteps, or you want to check what optimized actions are available for the current site. Call with no arguments to list all plugins, or with a plugin name for details.
browser_scroll_pageScroll within a browser-loaded page. Automatically detects scrollable containers inside SPAs (e.g., ADO, Jira, Gmail) where the main content scrolls inside an inner div rather than the window. Use when: you need to see more content below the fold, bring an element into view before clicking, scroll to a specific section, or navigate long pages. Supports scroll by direction, to a CSS selector, or to
browser_take_screenshotCapture a screenshot of a browser-loaded page as PNG. Set fullPage=true to capture the entire scrollable page in one shot — this avoids multiple scroll+screenshot cycles. Only use fullPage=false when you specifically need just the current viewport (rare). Use when: you need to see what a page looks like, analyze visual layout, view charts/images/graphs, debug UI issues, or when HTML alone is insuf
browser_type_textType text into input fields on a browser-loaded page. Use when: you need to fill a form, enter a search query, type into a text box, or input data into any editable field. Supports filling multiple fields in a single call. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.
Public scan report
scanner v0.1.9 · 2026-09-23 · same rubric, same numbers if you re-run it
- Code scan63 source files scanned20/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 43 days ago12/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Findings (1)
- mediumeval / new Function used
exec.evalsrc/actions/execute-javascript.js: …t wrap = async () => { const fn = new Function(`return (async () => { ${userScript} })(…
What the publisher says
From the MCP Browser repository's README, as published. We do not edit it. Read it on GitHub
✅ MCPBrowser (MCP Browser)
⚠️ Security Notice: MCPBrowser extracts webpage content and provides it to your AI agent (e.g., GitHub Copilot, Claude, Kiro, Antigravity), which then sends it to the LLM provider it uses (e.g., Anthropic, OpenAI, GitHub) for processing. Make sure you trust both your agent and the LLM provider — especially when accessing pages with sensitive or private data. MCPBrowser combines private data access, untrusted content exposure, and external communication (the MCP "lethal trifecta") — all tool annotations accurately declare these risks so MCP clients can enforce appropriate safety controls. See MCPBrowser/docs/MCP_COMPLIANCE.md for details.
💡 Why MCPBrowser over Puppeteer/Playwright MCP servers? Puppeteer and Playwright are browser automation libraries — their MCP servers give agents raw, low-level browser commands. MCPBrowser uses Puppeteer under the hood and was built specifically for AI agents, adding an intelligence layer that handles the hard parts automatically.
The agent gets clean HTML (90% smaller), automatic SPA detection (React, Vue, Angular), authentication flow handling (SSO, redirects, multi-step login), form discovery with multi-field filling, structured responses with next-step guidance, domain-based tab reuse, and instant DOM re-extraction without page reloads. Each MCPBrowser tool call replaces 5-8 raw browser automation calls — a typical 4-step workflow in MCPBrowser would take 20+ calls with Puppeteer/Playwright MCP, saving tokens and making the agent significantly faster. See full comparison below.
MCPBrowser is an MCP browser server that gives AI assistants the ability to browse web pages using a real Chrome, Edge, or Brave browser. This browser-based MCP server lets AI assistants (Claude, Copilot, Kiro, Antigravity) access any website — especially those protected by authentication, CAPTCHAs, anti-bot restrictions, or requiring JavaScript rendering. Uses your real browser session for web automation, so you log in once, and your AI can navigate, click buttons, fill forms, and extract content from sites that block automated requests.
Built on the Model Context Protocol (MCP), this web browser MCP server works seamlessly with Claude Desktop, Claude Code (CLI), GitHub Copilot, Kiro, Antigravity, and any MCP-compatible AI assistant. It handles corporate SSO, CAPTCHAs, Cloudflare protection, SPAs, dashboards, and any site that blocks automated requests. Your AI gets the same browser access you have — no special APIs, no headless browser detection, just your authenticated browser session.
Example workflow for AI assistant to use MCPBrowser
1. browser_fetch_webpage → Load the login page
2. browser_type_text → Enter username & password (multiple fields at once)
3. browser_click_element → Click "Sign In"
4. browser_get_current_html → Extract the content after loginShortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Install directly
Runs npx -y mcpbrowser on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add mcpbrowser -- npx -y mcpbrowser
MCP Browser: common questions
- Is MCP Browser MCP server safe?
- Mostly: it is graded B (80/100). Read the MCP Browser safety report
- How do I install MCP Browser?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does MCP Browser need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is MCP Browser maintained?
- The last commit was 44 days ago (2026-08-12). The latest release is v0.4.6.
- What can I use instead of MCP Browser?
- Servers from other publishers that do the same job: nodriver — undetected browser automation MCP server, Slack MCP Server and CloakBrowser MCP server. Compare all MCP Browser alternatives.
Alternatives to MCP Browser
Same job from other publishers: the closest match first, then the best rated.
- nodriver — undetected browser automationUndetected anti-bot Chrome automation. 65 tools, parallel isolated browsers.not reviewedGrowingA
Slack MCP ServerCatch up on Slack without reading it. Unreads, threads, search. Browser-session or hosted OAuth.not reviewedEstablishedA- CloakBrowser MCPPlaywright MCP-compatible browser automation bridge for CloakBrowser Chromium.not reviewedEstablishedB
- ZenrowsZenrows MCP server — Fetch, Extract, Batch, and Browser Sessions for AI coding assistantsnot reviewedEstablishedA
- Behavior Runtime MCPIn-browser ~60Hz behavior tree execution engine with reactive triggers and safety guardrails.not reviewedGrowingA