Browser Use
Lets AI do web tasks for you, such as filling forms, searching and extracting data, in the maker’s cloud browsers or on your computer.
Description from the maker (original English)
Your own signed-in Mac browser for any agent: open, read and act in tabs. Local and free.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"yab": {
"command": "npx",
"args": [
"-y",
"yab-mcp"
]
}
}
}Run this in your terminal
claude mcp add yab -- npx -y yab-mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"yab": {
"command": "npx",
"args": [
"-y",
"yab-mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"yab": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"yab-mcp"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified against the domain yetanotherbrowser.com (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.2.1) reached the registry 25 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Browser Use, Chrome DevTools MCP, MCP Server Browser
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Lets AI do web tasks for you, such as filling forms, searching and extracting data, in the maker’s cloud browsers or on your computer.
Lets AI use Chrome’s developer tools to inspect pages, find what makes them slow and spot errors. Made by the Chrome DevTools team.
MCP server for browser use access
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
The MCP server of Yab, Yet Another Browser, for Claude Code, Codex, Cursor and any MCP client.
Yab, Yet Another Browser, is a free WebKit browser for the Mac. With this server, any agent gets one real browser on your Mac: the one you're signed in to. Your agent opens tabs of its own beside yours, reads pages as text, clicks, types and fills forms with your sign-ins, your cookies and your IP. There is no cloud browser, no debug port and no Chrome to set up, and it's free. A press on Send, Pay, Delete and the like waits for your yes on a card in Yab, unless you chose Bypass in Yab's settings: the browser holds that yes, not the model. Saved passwords are filled by Yab and never shown to the agent. Agent tabs live in a window off screen and come in front of you only when you ask. With Yab closed, the first call opens it hidden, with no window and no Dock tile, and it quits after half an hour with nothing to do. yab serve keeps it running that way.
Download Yab · For developers · Manual
On the assistant's own computer, run npx yab-mcp login --client dots. When Yab's Connect flow supplies a nonce, add --nonce with that value. It prints the code and returns immediately; a background process saves the connection after the person allows it in Yab. Yab on the Mac shows the eight-character code under Settings > AI > Assistants. After the person allows it there, choose who does the work:
npx and args ["-y", "yab-mcp", "--remote"]. The assistant calls open, snapshot, click, type, etc. itself, using its own model/account. --remote bridges JSON-RPC over stdio; it does not accept a natural-language prompt or start a Yab model run. Calling the task MCP tool still delegates.npx yab-mcp task "Find a table for Friday" starts a separate agent using the model selected for Tasks in Yab on the Mac. ChatGPT (via Codex) consumes the user's ChatGPT limits; Claude uses their Claude plan instead. Choose this when you intend to use that plan, including from a shell-only bot. It prints its session ID and returns; run npx yab-mcp status SESSION for the next update, or npx yab-mcp status for the newest task after a Mac reconnects. Repeat until it says done.Both modes keep the assistant's existing account access and approval settings. The connection token stays in ~/.config/yab-mcp/auth.json (mode 0600), or the path in YAB_MCP_AUTH_FILE. When the home folder is read-only, as on some bots' computers, it goes to the first writable of /workspace/shared/.yab-mcp/, /workspace/.yab-mcp/ and .yab-mcp/ in the current folder. If the computer ends the background process that waits for the person's Allow, the next task, status or --remote finishes connecting. YAB_MCP_URL selects a test server; production uses https://yab-sync.21st.workers.dev. Plain npx yab-mcp starts the local app's MCP server.
npx. A client can also run Yab directly, without Node: see Without Node.Chrome is your main browser? Yab can still be the one your agents use, usually closed. yab import chrome brings Chrome's sign-ins into Yab after you say yes in Yab, so your agent hits fewer sign-in pages.
Already use Yab? Settings › Developers adds it to Claude Code and Codex with one click, and Copy Config gives the JSON for any other client. You don't need this package for that.
The plugin brings the tools and Yab's skill:
/plugin marketplace add yetanotherbrowser/yab-mcp
/plugin install yab@yab-mcp
From a shell: claude plugin marketplace add yetanotherbrowser/yab-mcp, then claude plugin install yab@yab-mcp.
Only the tools:
claude mcp add --scope user yab-browser -- npx -y yab-mcp
If Yab's Settings › Developers already added Yab to Claude Code, skip this: you'd have the same tools twice.
The plugin, tools and skill:
codex plugin marketplace add yetanotherbrowser/yab-mcp
codex plugin add yab@yab-mcp
Or only the tools, in ~/.codex/config.toml:
[mcp_servers.yab-browser]
command = "npx" args = ["-y", "yab-mcp"] tool_timeout_sec = 900 default_tools_approval_mode = "approve"
tool_timeout_sec lets a call wait up to 15 minutes while Yab asks you something; the plugin keeps Codex's default of 5. default_tools_approval_mode stops Codex asking before every Yab tool; Yab still asks you before Send, Pay and Delete. Leave it out if you want Codex to ask too.
Or add it to ~/.cursor/mcp.json:
{
"mcpServers": { "yab-browser": { "command": "npx", "args": ["-y", "yab-mcp"] } } }
code --add-mcp '{"name":"yab-browser","command":"npx","args":["-y","yab-mcp"]}'
Or in .vscode/mcp.json:
{
"servers": { "yab-browser": { "type": "stdio", "command": "npx", "args": ["-y", "yab-mcp"] } } }
In ~/.config/devin/mcp_config.json (older Windsurf builds: ~/.codeium/windsurf/mcp_config.json):
{
"mcpServers": { "yab-browser": { "command": "npx", "args": ["-y", "yab-mcp"] } } }
Download yab-mcp- .mcpb from Releases and open it: Claude Desktop installs it as an extension. Or add this to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": { "yab-browser": { "command": "npx", "args": ["-y", "yab-mcp"] } } }
The same mcpServers entry: command npx, arguments -y yab-mcp, over stdio.
Point the client at the app itself. This is what Yab's Copy Config gives:
{
"mcpServers": { "yab-browser": { "command": "/Applications/yab.app/Contents/MacOS/yab", "args": ["mcp"], "env": { "YAB_CLI": "1" } } } }
YAB_APP if set, then the app the yab command runs (~/.local/bin/yab), then yab.app in /Applications and ~/Applications, then Spotlight (mdfind, bundle id dev.serafim.fast).yab.app/Contents/MacOS/yab mcp with YAB_CLI=1. Your client talks to Yab directly: stdin and stdout go straight through, signals are passed on, and the exit code comes back.It has no dependencies and makes no network requests of its own. npx yab-mcp --help says where it found Yab.
These come from a real tools/list of Yab, made by scripts/snapshot.mjs. The app you run is the final word: newer versions may list more.
Yab 0.0.18 lists 69 tools. Some appear only when you turn on what they need, as noted.
| Tool | What it does |
|---|---|
devtools_comments | Read user-authored comments on elements of an already inspected, non-private tab. |
devtools_console | Read recorded Console messages from an already inspected, non-private tab. |
devtools_network | Read sanitized request metadata recorded by the tab's Developer Tools. |
devtools_trace | Read the WebKit Performance recording's event names, durations and nesting. |
devtools_styles | Read the currently selected element's matched and computed styles from Developer Tools. |
native_context | Read Yab's own current settings, spaces, tabs, mail accounts, permissions and this task's native operations. |
native_actions | List native Yab actions with their strict argument schemas, targetKind, undo support and permission requirements. |
native_apply | Perform a native Yab action explicitly requested by the user: settings, spaces, tabs, page fonts or connecting Gmail. |
native_operation | Read this task's native operation by operationId, or wait for a change up to seconds (0 to 10). |
native_undo | Undo a native change of this task by its changeId (or the last undoable change). |
tabs | List the tabs open in Yab, the user's web browser: the user's and the agents'. |
open | Open a web page (URL) in a new agent tab in Yab, the user's browser, signed in to their sites, beside the user's tabs. |
spaces | List the user's spaces: sets of tabs, some signed in as someone else, with cookies of their own. |
navigate | Send an agent tab to a URL, or back, forward or reload. |
snapshot | Read a web page in a browser tab as an accessibility tree with ref ids. |
click | Click an element by ref, as a real mouse click. |
type | Replace the text in a field by ref (inputs, text areas, editors), or without ref, type into whatever has focus. |
choose | Pick an option in a by its value or label. |
press | Press keys on the focused element, as real key events. |
hover | Rest the pointer on an element, as a mouse would: menus that open on hover open. |
drag | Drag an element with the mouse: onto another element (to, its ref; the dragged one lands before it) or by dx, dy pixels. |
dialog | Answer what the page asked with alert, confirm or prompt: accept (OK) or not (Cancel), and text for a prompt. |
scroll | Scroll the page, or the box around an element by ref (lists marked scrolls), by dy pixels (negative is up). |
run | Run JavaScript that drives tabs with the same tools, several steps in one call. |
text | A tab's whole visible text, for reading articles and results. |
screenshot | A picture of a tab as it is now, for when the snapshot is not enough. |
wait | Wait for a tab to finish loading, or until its text contains for. |
eval | Run JavaScript in an agent tab (isolated from the page's own scripts, same DOM) and return its value. |
close | Close an agent tab. |
show | Put a tab in front of the user as one of theirs. |
memory_search | Search what you know about the user from earlier tasks, who they are, their accounts and sites, people, projects. |
memory_read | Read one memory page whole: USER (who the user is), MEMORY (how to work for them), TAXONOMY. |
profile | The user's profile for forms: name, headline, company, role, location, linkedin, x, github, website, telegram. |
form_answers | Answers the user typed into web forms, kept with nothing asked once the form went through. |
remember | Keep something for later tasks. |
history | The user's browsing history. |
watch | Watch a thread for someone's reply: every two hours for days. |
suggest | Hand the user what needs them, as quiet rows under a new tab's field. |
boosts | List saved site boosts, their sites, permissions and state. |
boost_read | Read the files of a saved boost or this task's trial before changing it. |
skills | Yab's skills: how particular sites work for an agent (Gmail, GitHub, LinkedIn, Amazon, …), a line each. |
skill | Read one skill whole, by name. |
handoff | Ask the user to take over a tab, sign in, pass a captcha, enter a code, and wait until they say they are done. |
ask | Ask the user to pick: a question with up to four options (they may also write their own), shown at the foot of a tab. |
| sign_in | Sign in on this tab's page with a pa
Only the beginning is shown; read the rest in the repo