Browser Use
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
作者提供的说明(英文原文)
Native macOS browser exposing an MCP server so AI agents can drive a real WKWebView.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
作者没有在注册中心列出安装信息。请查看下方作者的 README。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 brainfuel 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.0.1)于6个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。
同一分类中有:Browser Use, Chrome DevTools MCP, MCP Server Browser
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
MCP server for Chrome DevTools
MCP server for browser use access
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
A native macOS web browser that exposes itself as a Model Context Protocol server, so AI agents can drive a real WKWebView the same way a person would — navigate, click, fill forms, read the DOM, take screenshots, run JavaScript, and capture network and console activity.
Built with SwiftUI + WKWebView. The MCP server runs in-process over local HTTP with bearer-token authentication and DNS-rebinding defense.
[⬇ Download the latest macOS build](https://github.com/brainfuel/mcp-browser/releases/latest) — signed, notarised .dmg for Apple Silicon.
After downloading, open the DMG and drag MCP Browser to your Applications folder.
Most "browser-as-a-tool" stories for agents fall into two camps:
MCP Browser is the third option: a real browser window on your Mac that you log into, navigate, and use yourself — and that an LLM can drive through MCP when you ask it to. Cookies, history, bookmarks, and downloads stay local. The agent sees the same page you do.
8833 (configurable) — POST /mcp for JSON-RPC, GET /mcp for SSE-style statusHost header validated against 127.0.0.1 / localhostMCPRegistrarnavigate, back, forward, reload, current_url, current_titlelist_tabs, new_tab, switch_tab, close_tabclick, fill, submit, hover, press_key, type_text, scroll, find_in_page, get_element, accessibility_treeread_text, read_page, page_metadata, screenshot, pdf_export, render_html, eval_js, find, list_links, list_formsget_cookies, set_cookie, storage, clear_sessionlist_bookmarks, open_bookmark_folderconsole_logs, network_log, dialogdownload, upload_file (gated by user permission)wait_for, emulate, resizeSee MCP Browser/MCP/MCPToolCatalog.swift for the authoritative list.
401 Unauthorizeddialog interactions127.0.0.1, never the public network/Applications and launch it.MCP Browser.xcodeproj in Xcode.MCP Browser scheme.CLI build:
xcodebuild -project "MCP Browser.xcodeproj" -scheme "MCP Browser" -configuration Debug build
The project ships with the original author's signing settings. If you're forking to build and ship your own copy:
MCP Browser target in Xcode → Signing & Capabilities → pick your own team. This rewrites DEVELOPMENT_TEAM in MCP Browser.xcodeproj/project.pbxproj.PRODUCT_BUNDLE_IDENTIFIER from com.moosia.mcp-browser to something you own.Most MCP clients accept an HTTP transport block. Example for claude_desktop_config.json:
{
"mcpServers": { "mcp-browser": { "transport": "http", "url": "http://127.0.0.1:8833/mcp", "headers": { "Authorization": "Bearer " } } } }
The bundled MCP Clients settings tab can write this for you for the clients it knows about (Claude Desktop, Codex, etc.) — pick the client, hit Add MCP Browser, and it'll patch the file in place.
The token rotates each time you click Regenerate token in Settings → Connection. Re-patch your clients after rotating.
PersistentStore (file-backed) and SwiftData where appropriate.UserDefaults. It's regenerated from Settings → Connection whenever you want to revoke existing clients.MCP Browser/
├── Browser/ WKWebView wrapper, tab model, presenter, scripts, PiP ├── MCP/ MCP server, JSON-RPC, host protocol, tool catalog │ ├── Registrar/ Auto-config patcher for Claude Desktop / Codex / etc. │ └── Tools/ Tool implementations (navigation, DOM, content, etc.) ├── Settings/ Settings tabs (general, privacy, connection, recorder, etc.) ├── Storage/ Bookmarks, history, downloads, favicons, action log ├── Views/ Bookmarks bar, bookmarks manager, history, downloads popover ├── ContentView.swift Top-level window layout, tab strip, URL bar ├── AppCommands.swift Menu bar commands and keyboard shortcuts └── MCP_BrowserApp.swift App entry point and environment wiring
Key files
MCP/MCPServer.swift — NWListener-based HTTP/JSON-RPC server, auth, rebind defenseMCP/MCPCoordinator.swift — routes tool calls to the focused window's active tabMCP/MCPToolCatalog.swift — registry of every exposed toolMCP/MCPSecret.swift — Keychain-backed bearer tokenBrowser/BrowserTab.swift — per-tab @Observable model wrapping WKWebViewBrowser/WebViewHost.swift — NSViewRepresentable bridgeMCP Browser deliberately runs un-sandboxed so it can:
~/Library/Application Support / ~/.configIt does not:
127.0.0.1)Host header doesn't match 127.0.0.1 or localhost (DNS-rebinding defense)If you're audit-minded, the entire HTTP surface is in MCP Browser/MCP/MCPServer.swift and is roughly 400 lines.
See CONTRIBUTING.md for how to file bugs, request features, and submit pull requests.
MIT