Browser Use
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
Hand browser work off to a server-side agent: read the page as a table, act, then verify.
Elige la app de IA que usas y copia la configuración.
Pasó 3/3 revisiones · Funciona en tu computadora · ✓ Comandos revisados el 13 nov 2026
Primero: ¿qué IA usas?
Elige tu app y los pasos aparecen abajo.
Funciona con Claude, pero hay que preparar algo antes
Instala Python (uv) en tu computadora primero (una sola vez) · Solo en la app de Claude para computadora (Windows o Mac), no en la web ni en el móvil
Una sola vez; sirve para todos los servidores que necesitan Python (uv)
SettingsDeveloperEdit Config
{
"mcpServers": {
"jev-ultrafast": {
"command": "uvx",
"args": [
"jev-ultrafast-mcp"
]
}
}
}Usa jev-ultrafast-mcp y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude dice que está usando jev-ultrafast-mcp o muestra una herramienta de jev-ultrafast-mcp en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
ChatGPT todavía no puede conectar jev-ultrafast-mcp
jev-ultrafast-mcp se instala en tu computadora, pero ChatGPT solo conecta servidores que funcionan en la web
A · Usa una app que pueda conectar jev-ultrafast-mcp
B · Otros en Web y navegadores que funcionan con ChatGPT
Elegidos entre los más usados de la misma categoría, solo los que se conectan con una dirección y sin clave
Funciona con Claude Code, pero hay que preparar algo antes
Instala Python (uv) en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Python (uv)
Mac: pulsa Command+Espacio y escribe Terminal · Windows: abre PowerShell
claude mcp add --scope user jev-ultrafast -- uvx jev-ultrafast-mcpDeberías ver jev-ultrafast-mcp en la lista como conectado
Usa jev-ultrafast-mcp y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude Code dice que está usando jev-ultrafast-mcp o muestra una herramienta de jev-ultrafast-mcp en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con Cursor, pero hay que preparar algo antes
Instala Python (uv) en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Python (uv)
Usa jev-ultrafast-mcp y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Cursor dice que está usando jev-ultrafast-mcp o muestra una herramienta de jev-ultrafast-mcp en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Cursor el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con VS Code, pero hay que preparar algo antes
Instala Python (uv) en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Python (uv)
Usa jev-ultrafast-mcp y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si VS Code dice que está usando jev-ultrafast-mcp o muestra una herramienta de jev-ultrafast-mcp en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de VS Code el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Otras apps que usan MCP, como Windsurf, Zed o Gemini CLI, añaden servidores de forma distinta. Míralo en la lista de apps
Ver todas las apps que usan MCP →
La configuración JSON está en “Para desarrolladores”, abajo
Claude Code
claude mcp add --scope user jev-ultrafast -- uvx jev-ultrafast-mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"jev-ultrafast": {
"command": "uvx",
"args": [
"jev-ultrafast-mcp"
]
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"jev-ultrafast": {
"command": "uvx",
"args": [
"jev-ultrafast-mcp"
]
}
}
}VS Code (mcp.json)
{
"servers": {
"jev-ultrafast": {
"type": "stdio",
"command": "uvx",
"args": [
"jev-ultrafast-mcp"
]
}
}
}Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
pypi: jev-ultrafast-mcpSegún cómo se conecta este servidor y la documentación de cada app, comprobado el 10 nov 2026.
Se ejecutan en tu computadora en
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 14 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub jiawei686, dueña del repo
Último cambio de código: hace 2 meses
Usa MIT
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Pregunta, comparte un consejo o avisa de que no funciona. Ordenado por lo que la gente marcó como útil.
Aún no hay publicaciones. Sé la primera persona en preguntar o compartir.
Lo publicado aquí lo escriben usuarios, no el equipo de PopNx.
Aún no hay reseñas
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 3 de 3 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez hace 2 meses, y la última versión (0.1.5) llegó al registro hace 2 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.
En la misma categoría: Browser Use, Scrapling MCP Server, Chrome DevTools MCP
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
Web scraping with stealth HTTP, real browsers, and Cloudflare bypass. CSS selectors supported.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
English · 简体中文
Hand the browser work off — an MCP server that drives the page for your agent.
Your agent should not be opening the browser at all. A browser task goes over whole — the URL, the goal, and the check that proves it — and the loop runs on the server. One tool call instead of twenty. Three seconds instead of a minute. A cent instead of a frontier model's context. And it never invents a target: it picks from what the page actually has, and the server refuses rather than guesses.
What it cost. A cent for the whole day, and a cent is all of it:
Three commands, then restart your client.
git clone https://github.com/jiawei686/jev-ultrafast-mcp.git
cd jev-ultrafast-mcp python3 -m venv .venv .venv/bin/pip install -e . # Windows: .venv\Scripts\pip install -e .
python scripts/install.py # finds your MCP clients and writes their config
install.py looks for WorkBuddy, Claude Code, Claude Desktop, Codex CLI, Cursor, VS Code, Cline, Windsurf and Gemini CLI, and writes the format each one expects — merging into your existing config and saving a .bak first. Needs Python ≥ 3.10 and any Chromium-family browser.
Restart the client, and then just say what you want:
You: Set this form to 3 adults, tick *Nonstop only*, then submit it.
Your agent:
browser_goal(goal=…, url=…, verify=[…])— one call; the page is opened and the
loop runs server-side, and the result is checked by code afterwards.
(what that costs)
You: Open example.com and tell me what the page says.
Your agent:
browser_open→ reads the element table → answers — a look is not a task, so it
does not need the model.
(verbatim run)
Restarted and the tools are not there? Some clients make you approve the server once. In WorkBuddy that is *Connectors → Custom connectors → Trust*. The approval is remembered against the config itself, so if you later edit the config it asks once more.
No checkout needed if you would rather install it as a package. It is on PyPI, so the name is enough:
uvx jev-ultrafast-mcp # run it straight from PyPI, nothing installed
pip install jev-ultrafast-mcp # or install it yourself
A client config wants a stable interpreter path rather than uvx's cache, so:
python3 -m venv ~/.jev-ultrafast-mcp/venv
~/.jev-ultrafast-mcp/venv/bin/pip install jev-ultrafast-mcp
That gives you a jev-ultrafast-mcp console script and a stable interpreter path to put in a client config — verified against the latest mcp SDK on Python 3.13, every one of the ten tools listed.
scripts/install.py is the other half: it finds your MCP clients and writes the config each one expects, merging into the existing file and saving a .bak first.
python scripts/install.py --list # what is installed, and the file each one reads
python scripts/install.py --print # show the config it would write, change nothing python scripts/install.py -c cursor,codex # only these two python scripts/install.py --headed # keep a visible browser window python scripts/install.py --allow-domains example.com,*.example.org python scripts/install.py --uninstall # take the entry back out
Runtime dependencies: mcp, websockets, httpx. No Playwright, no Selenium, no browser-harness.
A three-step goal on a real page, driven by browser_goal. This is everything your agent sent and everything it got back — one turn, and the page never entered its context:
browser_goal(
goal="On this flight search form: set Passengers to 3 adults, tick the 'Nonstop only' " "checkbox, then submit the search. Do not type into any city field.", verify=[{"type": "text_contains", "text": "3 adults · nonstop"}], )
goal: On this flight search form: set Passengers to 3 adults, … status: done steps: 3 turbo: 4 decisions · 14,626 tokens · 1.8s model + 1.1s page · 3.3s wall trace:
verified: PASS ok text_contains: '3 adults · nonstop' found in page text
What the second time costs. Nothing. The second time is a recorded macro, and a macro makes no model calls at all — it does not even need a key.
How long it took. 3.3 s wall for the whole goal: 1.8 s of model, 1.1 s of page. Every run prints that line itself, so the numbers are checkable rather than persuasive.
That run is not a mock-up. scripts/turbo_check.py reproduces it against a real Chrome and the real model, and then checks the page with code rather than trusting the model's account of its own work. The three actions — plus the reading and re-reading between them — all happened on the server. Your agent spent one turn and never saw an element table.
The division of labour is the whole design decision, so it is yours to make per task:
| agent drives | browser_goal drives | |
|---|---|---|
| Tool calls for a 3-step flow | 6+ (observe, act, observe, act…) | 1 |
| Who holds the page in context | your agent | the decision model, server-side |
| Per-step cost | one agent turn | one typed request, no screenshot |
| Who names the target | the model writes a selector | the model picks a `ref` from the page's own table |
| If it goes wrong | a wrong click, usually silent | the server refuses, with the reason |
| Knowing it worked | the model's summary | code-checked assertion, which wins the disagreement |
| Second time around | run the model again | macro replay, zero model calls |
Browser automation usually makes the *agent* do the driving: read the page, pick one element, act, read again to see whether that worked. Ten clicks is ten turns, the page passes through the agent's context every time, and a mis-click rarely announces itself.
This server can take that job instead. browser_goal is one tool call from your agent; the loop runs here, server-side, with Jev — TypeSafe's decision model — choosing each step. The model never writes a selector: it picks among the elements the page actually has, and the server refuses anything that is not on the page rather than guessing. When it stops, browser_assert checks the page it left behind in code, and a passing assertion outranks the model's own account of what it did.
Four things follow from that:
ref from a numbered table of what is on the page, not a selector or a coordinate the model invented, and the action is re-checked against the page before it runs.Everything *except* browser_goal — browser_open, browser_observe, browser_act, browser_assert, browser_macro — needs no key, no account, and no network beyond the page itself, from any MCP client: WorkBuddy, Claude Code, Codex, Cursor or VS Code. If you would rather keep your hands on the wheel, that whole surface is still here.
browser_open → element table → browser_act [refs] → browser_assert
Inspired by browser-use/jev-ultrafast and TypeSafe's typed-question API. Independent project, not affiliated with either — see docs/DESIGN.md for what is different and why.
Contents · Quick start · Cheap and fast · What it is · What a session looks like · Connecting an agent · What you can ask it to do · What the agent reads · Why another browser MCP? · Tools · Configuration · FAQ · Try it without an agent · See also
You say:
Open example.com and tell me what the page says.
Your agent does this, and this is everything it sees:
browser_open("https://example.com")
[obs#1] https://example.com/ "Example Domain" scroll=0/216 reachable=1/1 e1 lnk More information...
browser_observe() [delta#2] … 1 element = no change (1 element)
Then it answers. No screenshot was taken, no HTML was dumped, and the page never entered a model's context: your agent read the table and answered.
A more realistic one — searching a real site, with your agent doing the driving:
browser_open("https://duckduckgo.com")
e4 cmb* Search with DuckDuckGo ▸ ""
browser_act([{type, ref: "e4", text: "python asyncio tutorial"}, {keys, key: "Enter"}]) → 2/2 ops ok, one round trip, page navigated
browser_observe() [delta#3] https://duckduckgo.com/?…&q=python+asyncio+tutorial reachable=9/59
browser_assert([{url_contains, text: "q="}, {count_at_least, role: "link", min: 5}]) PASS
That is a verbatim run against the live web — scripts/live_check.py reproduces it end to end.
| Client | Config file install.py writes | After installing |
|---|---|---|
| WorkBuddy | ~/.workbuddy-ai/mcp.json (older installs: ~/.workbuddy/mcp.json) | restart, then Connectors → Custom connectors → Trust |
| Claude Code | ~/.claude.json (user scope) | or claude mcp add --scope user … |
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json | quit the app fully and reopen |
| Codex CLI | ~/.codex/config.toml | codex mcp list to confirm |
| Cursor | ~/.cursor/mcp.json | reload the window |
| VS Code (Copilot) | …/Code/User/mcp.json | Agent mode only — not Ask/Edit |
| Cline | …/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json | reload the window |
| Windsurf | ~/.codeium/windsurf/mcp_config.json | reload the window |
| Gemini CLI | ~/.gemini/settings.json | gemini mcp list to confirm |
Manual setup — if you would rather not run the installer
Every client below needs the same three facts: an absolute interpreter path, the module, and one environment