browser-tools-mcp
browser-tools-mcp
Control persistente y con ventana del navegador Chromium para OpenCode/Claude Code, al estilo de la herramienta de navegador de Claude Code. Desarrollado el 2026-08-05 porque OpenCode no tenía una herramienta de navegador nativa y custom-scraper (HTTP simple) no puede leer páginas con mucho JavaScript ni páginas bloqueadas por inicio de sesión.
Arquitectura
El proceso del servidor MCP es el administrador único del navegador. Como OpenCode mantiene vivo el servidor stdio durante toda la sesión CLI, el navegador sobrevive entre turnos del agente. Si el navegador se bloquea o se cierra la ventana, la siguiente llamada a una herramienta lo relanza de forma transparente (server/browser.js).
Configuración de lanzamiento: headless: false, slowMo: 100, viewport 1280x800, UA de Chrome de escritorio, --disable-blink-features=AutomationControlled.
Related MCP server: Controlium
Archivos
server/server.js— punto de entrada MCP, registra las cinco herramientas + esquemas.server/browser.js— administrador único de navegador/contexto/página + lógica de relanzamiento.server/tools.js— las operaciones (árbol de elementos interactuables, selección de objetivos, resaltado, capturas de pantalla).server/_self_verify.js— prueba de escenario independiente:npm run verify.shots/— capturas de pantalla debrowser_inspect.USAGE.md— reglas para el agente (integradas eninstructionsde OpenCode).
Herramientas
Herramienta | Propósito |
| Carga una URL; devuelve la URL final + título. |
| Captura de pantalla + árbol de elementos interactuables con objetivos numéricos. |
| Haz clic por número de inspección, selector CSS o texto visible. |
| Escribe en un campo por número/selector/texto. |
| Pausa el flujo y muestra una pregunta al humano. |
La selección de elementos sigue la convención de Claude Code: browser_inspect asigna a cada elemento interactuable un target numérico, etiquetado en el DOM como data-bt-target, de modo que las acciones posteriores resuelven exactamente el mismo elemento (los índices filtrados por visibilidad se desviarían frente a .nth() sin filtrar en páginas con entradas ocultas). Los elementos se resaltan brevemente antes de hacer clic para que el usuario vea la acción.
Verificación
npm run verify # navigate -> inspect -> click -> fill -> crash-recoveryVerificado el 2026-08-05: navegación/inspección/clic en example.com, relleno en Google por objetivo y relanzamiento tras finalizar el proceso pasan; las cinco herramientas se registraron y respondieron a través del protocolo MCP stdio real.
Notas operativas
Con ventana significa escritorio. La ventana de Chromium necesita una sesión interactiva para lanzarse; en una máquina sin entorno gráfico o desconectada el lanzamiento falla: infórmalo en lugar de fingir.
Navegador aislado. Este NO es el Chrome con sesión iniciada de Luigi (eso es
chrome-bridge). Sin sesiones iniciadas, sin extensiones, acceso completo de escritura.Sujeto a aprobación humana. No se realizan inicios de sesión/pedidos/envíos sin instrucción explícita;
browser_request_humansignifica PARAR hasta que el humano responda.Registrado en
~/.config/opencode/opencode.jsonccomo servidor MCPbrowser-tools; reglas de uso integradas eninstructionsmedianteUSAGE.md.
This server cannot be deployed
Maintenance
Related MCP Connectors
Stealth web browser for agents: search, fetch, click, download and type in persistent MCP sessions.
Hosted real Google Chrome MCP with per-user persistent state. Navigate, click, type, screenshot.
Stealth web automation for AI agents. Login, signup, navigate, screenshot.
Stealth web automation for AI agents. Login, signup, navigate, screenshot.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables browser automation (navigate, screenshot, click, type, etc.) for Claude Code via MCP protocol, with a Chrome extension for configuration.2-
- AlicenseNot gradedqualityBmaintenanceChrome extension + MCP bridge that gives Claude control over your real browser via CDP, enabling navigation, clicking, typing, scrolling, screenshots, and JS execution with a visible cursor and tab-bring-to-front.1MIT
- AlicenseAqualityAmaintenanceMCP server that lets AI agents drive your real Chromium browser with your existing signed-in sessions, providing visible, local, and inspectable automation for tasks like navigation, clicking, typing, and form filling.251Apache 2.0
- AlicenseNot gradedqualityCmaintenanceProvides a headless Chromium browser through MCP, enabling AI agents to browse JavaScript-rendered pages, search the web, capture screenshots, extract tables and data, and run stateful multi-step interactions like clicking, typing, and form submission.1,619,036 npm1MIT