fast-browser-harness-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., "@fast-browser-harness-mcpopen a background tab to my Neon console and take a snapshot"
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.
⚡ Fast Browser Harness
Controla tu Chrome real desde tu agente de IA. Sin reiniciar, sin perfiles falsos, sin fricción.
Fast Browser Harness se adhiere por CDP al Chrome que ya tienes abierto — con tus tabs, tus logins y tu IP — y lo opera en segundo plano: clicks, escritura, navegación, snapshots atómicos, screenshots, grabación de video y servidor MCP. Tu tab visible ni parpadea.
pip install fast-browser-harness
fast-browser-harness --doctor
echo 'print(page_info())' | fast-browser-harnessProyecto independiente con branding propio. Sin relación con ningún otro proyecto. Telemetría apagada por defecto. Origen del código base: ver Atribución.
Por qué existe
Los automatizadores clásicos levantan su propio navegador estéril: sin cookies, sin sesión, con IP de datacenter. Sirven para CI, pero para trabajo real (revisar tu consola de Neon, operar tu admin, descargar tu factura) son inútiles: tendrías que loguearte a mano en cada corrida o pasarle tus credenciales al agente.
Fast Browser Harness invierte el modelo: el agente entra a tu navegador, no tú al suyo.
Related MCP server: agent-chrome
Pros, a detalle
1. Cero fricción real
No cierras nada. Se conecta al Chrome en ejecución. Sin
--remote-debugging-portmanual, sin perfiles paralelos, sin "reinicia con este flag".Si Chrome está cerrado, lo abre solo y reintenta la conexión.
Si falta el permiso de debugging, abre
chrome://inspect/#remote-debuggingy te guía (en macOS,mac-approve; en Linux Snap,--fix-snap).Tabs de fondo.
new_tab()yswitch_tab()trabajan sin cambiar tu tab visible. Soloactivate_tab()toma la pantalla, y solo cuando lo pides o la página lo exige.Diagnóstico en un comando:
fast-browser-harness --doctor(también--json).Marcador discreto en el título del tab anexado (desactivable con
BH_TAB_MARKER=0).
2. Velocidad por arquitectura, no por promesas
Sin números inventados: esto es lo que lo hace rápido y cómo medirlo tú.
CDP directo, sin WebDriver en el medio. Cada acción es un mensaje al renderer, sin servidor intermedio ni polling de estado.
Un snapshot atómico por observación. Una sola llamada trae controles visibles, nombres accesibles, valores y texto. Nada de N idas y vueltas para mapear la página.
Sin screenshots en el loop. El operador consume estado estructurado; las capturas son opt-in (inspector, evidencia, video).
Esperas mínimas y útiles. Tras escribir en un combobox espera sugerencias visibles (tope 200 ms); otras interacciones, dos frames o 50 ms. Sin
sleep(2)a ciegas.Validación antes de actuar. Cada click rechequea frescura del documento, geometría y oclusión. Falla temprano con el elemento que tapa, en vez de clickear al vacío y reintentar todo el flujo.
Tabs ocultos que siguen renderizando. Emulación de foco evita que Chrome estrangule animaciones en background, sin robarte la pantalla.
Cómo medirlo tú mismo:
time (echo 'print(page_info())' | fast-browser-harness)
# Cuenta llamadas CDP de una tarea con recordings enable + productions logs
fast-browser-harness recordings enableSi publicas números, publica también máquina, red y tarea. Un benchmark sin contexto es marketing.
3. Sesiones logueadas sin regalar credenciales
El agente nunca ve tu password: opera sobre tu sesión existente (cookies, storage, SSO). Para nubes o sub-agentes paralelos existe modo remoto (start_remote_daemon) y sincronización de perfil por cookie. Flujos con login/2FA los haces tú una vez en tu Chrome; el agente trabaja después.
4. Pasa más muros bot (y aquí va la parte honesta)
Qué ayuda, en orden de impacto:
IP real. Sales con tu IP residencial/de oficina, no con rango de datacenter marcado. Esto solo ya resuelve la mayoría de bloqueos.
Perfil real. Historial, cookies, idioma, zona horaria, fuentes y WebGL intactos: la huella parece una persona porque es la tuya.
Eventos de entrada reales. Clicks y teclas viajan por CDP como entrada genuina, no como
element.click()inyectado ni formularios rellenados por JS.Sin banderas headless. Es tu Chrome visible normal, no
--headlesscon sus huellas clásicas.Ritmo no mecánico. Esperas atadas a estado visible (sugerencias, carga) en vez de sleeps fijos.
Límites honestos — léeme antes de prometer "indetectable":
Nada es indetectable. Bajo CDP,
navigator.webdrivery otras señales pueden delatar automatización frente a scripts que las buscan. No hacemos spoofing de fingerprint (a propósito: tu huella real es mejor camuflaje que una falsa).El comportamiento delata. Loops deterministas a toda velocidad parecen bots. La velocidad es una ventaja operativa, no de sigilo: si un sitio te limita, baja el ritmo, no lo fuerces.
Los captchas pueden aparecer igual. Este harness no los resuelve; te deja la página servida para que los resuelvas tú.
Respeta ToS y rate limits. Si un sitio dice no a bots, este README no es un permiso.
5. Operación para agentes, no solo scripts
Skill empaquetada:
fast-browser-harness skillimprime el flujo exacto que debe seguir un agente (un tab por tarea, no duplicar, no cerrar lo ajeno).Servidor MCP:
fast-browser-harness-mcpexpone las ayudas por stdio (browser_new_tab,browser_click,browser_js,browser_cdp…).Grabación y video: sesiones reproducibles y exportación MP4 verificable.
Navegadores remotos opcionales para headless, paralelismo o aislamiento (requiere cuenta/servicio externo).
Comparativa honesta
Fast Browser Harness | agent-browser (Vercel) | Playwright / Selenium | |
Navegador | Tu Chrome en uso | Chromium propio descargado (~200 MB) | El que configures |
Sesiones/logins | Los tuyos, cero setup | Ninguno (aislado) | Los que programes |
Fricción | Cero (sin reiniciar) | Media-alta (instalar, flags) | Alta (código + waits) |
Muros bot | IP + perfil reales | IP/entorno de bot típicos | Según tu setup |
Ideal para | Trabajo diario con logins | CI, tests reproducibles | Frameworks a medida |
Aislamiento | Bajo (ve tu navegador) | Alto | El que diseñes |
Aislamiento vs adherencia es un tradeoff, no un ranking: para CI quédate con lo aislado; para operar tu web logueada, adherirse gana.
Instalación
Requiere Python ≥ 3.11 y tu Chrome/Chromium de todos los días.
pip install fast-browser-harness
fast-browser-harness --doctorDesde fuente:
git clone https://github.com/YankielDBC2/fast-browser-harness
cd fast-browser-harness
pip install -e ".[mcp]"Uso
# Estado
fast-browser-harness --doctor
# Una observación (los helpers vienen pre-importados)
echo 'print(page_info())' | fast-browser-harness
# Trabajar en un tab nuevo sin tocar tu tab visible
echo 't = new_tab("https://example.com"); print(page_info())' | fast-browser-harness
# Ver el texto (sin secretos a la vista: filtra antes de pegar a un modelo)
echo 'print(list_tabs())' | fast-browser-harness
# Servidor MCP para tu agente
fast-browser-harness-mcpReglas del skill (resumen): un tab por tarea/sitio, reutiliza con switch_tab antes de abrir otro, no dupliques URLs, no cierres tabs ajenos, activate_tab solo si te lo piden.
Variables de entorno
Variable | Efecto |
| Directorio de datos (defecto |
| Opt-in de telemetría (apagada por defecto) |
| Apagados extra (compatibilidad) |
| Sin marcador en títulos |
| Skills por dominio |
| Nombre del daemon (sesiones paralelas) |
| CDP remoto en vez de Chrome local |
| Proxy/nubes (servicio externo, opcional) |
Telemetría: apagada por defecto
Diferencia deliberada vs upstream: aquí nada sale de tu máquina salvo que lo pidas. Sin clave de telemetría empaquetada; para activarla configura FBH_POSTHOG_KEY + FBH_TELEMETRY=1.
fast-browser-harness telemetry statusSolución de problemas
0 conexiones activascon Chrome abierto → el harness abrechrome://inspect; aprueba el debugging y reintenta.macOS pide permiso →
fast-browser-harness mac-approve(más Accessibility en Ajustes si lo exige).Chromium Snap en Linux bloquea CDP →
fast-browser-harness doctor --fix-snap.--reloadsi cambiaste código y el daemon sigue con lo viejo.
Diferencias vs upstream
Nuevo nombre, binarios (
fast-browser-harness,fast-browser-harness-mcp) y directorios propios: no choca con el original instalado.Telemetría opt-in y sin clave empaquetada.
Marca de video propia (bolt ⚡) en exportaciones.
Variables
FBH_*nuevas;BH_*/BU_*siguen funcionando.Nubes de Browser Use y skills de interacción enlazan a su servicio/documentación original (funcionalidad intacta, atribución visible).
Atribución
Derivado de browser-use/browser-harness, MIT © 2026 Browser Use. Este fork mantiene su aviso de copyright (ver LICENSE) y añade marca, telemetría opt-in y documentación propias. Gracias al equipo de Browser Use por publicar el motor con licencia permisiva.
Licencia
MIT — ver LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Control a real browser from AI agents: navigate, click, type, screenshot, read the page.
1Hosted browser for AI agents: screenshots, post-JS DOM, console, WCAG. No install, no API key.
Let your AI agent operate any website through a real, logged-in browser session.
Undetectable cloud browser sessions for AI agents and scrapers. Navigate, extract, click, captcha.
Related MCP Servers
- AlicenseAqualityAmaintenanceEnables AI agents to drive the user's already-running Google Chrome through a WebSocket bridge, listing and switching tabs, navigating, clicking, typing, scrolling, extracting DOM, taking screenshots, and evaluating JavaScript. It works without restarting Chrome and preserves all existing logins, cookies, and 2FA sessions.11MIT
- AlicenseNot gradedqualityNot gradedmaintenanceLets local AI agents drive the Chrome browser a user already has open, including signed-in sessions, by listing tabs, reading page text and actionable elements, then clicking, filling, selecting, scrolling, navigating, and capturing viewport screenshots without exporting cookies. Runs as a dependency-free local stdio process over Native Messaging, with per-tab leases, automatic reconnection, and pause/write-action controls.MIT
- AlicenseNot gradedqualityAmaintenanceLets AI coding tools drive the real, already-logged-in Chrome browser over local stdio—snapshotting and reading pages, clicking, typing, managing tabs, capturing screenshots, and inspecting network, console, storage, and cookies—without opening a remote-debugging port. It installs as a Chrome extension plus native-messaging bridge, so agents work in the user's authenticated sessions while passing bot detection.1 npmISC
- AlicenseNot gradedqualityAmaintenanceLets AI coding tools drive the user's already-signed-in Chrome browser — reading and snapshotting pages, clicking, typing, uploading files, screenshotting, and inspecting tabs, cookies, console, and network traffic. It works through a local Chrome extension bridge, so no remote debugging port is opened and the real, authenticated browser session is used.1 npmISC