Operador de navegador MCP
Un servidor de Protocolo de Control de Modelos (MCP) para la automatización del navegador que permite a los LLM controlar un navegador web, interactuar con páginas web y analizar contenido web a través de una interfaz JSON-RPC estandarizada.
Características
- Administración del navegador : crear, navegar, operar y cerrar instancias del navegador
- Gestión de trabajos : seguimiento del estado de las operaciones del navegador con identificadores de trabajos
- Interacción web : ejecute instrucciones en lenguaje natural utilizando la API de uso informático de OpenAI
- Herramientas del navegador : acceda a registros de la consola, actividad de red, capturas de pantalla y más
- Auditoría : ejecutar auditorías de accesibilidad, rendimiento, SEO y otras páginas web.
Requisitos
- Python 3.11+
- Dramaturgo
- Clave API de OpenAI (para la API de uso de computadoras)
Instalación
- Clonar este repositorio:
- Instalar dependencias:
- Instalar navegadores Playwright:
- Establezca su clave API de OpenAI:
Uso
Inicie el servidor MCP:
El servidor escucha solicitudes JSON-RPC en stdin y responde en stdout, siguiendo el protocolo MCP.
Scripts ejecutables
run-server
: ejecuta el servidor MCP (punto de entrada principal)run-tests
: ejecuta todas las pruebas (con opciones solo para unidades o integración)run-test-harness
: ejecuta el servidor con MCP Inspector para pruebas interactivas
Métodos básicos
Administración del navegador
- Crear navegador : inicializa una nueva instancia del navegador
- Navegar por el navegador : dirige el navegador a una URL específica
- Operar navegador : ejecutar instrucciones en lenguaje natural para la interacción con el navegador
- Cerrar navegador : finalizar una instancia del navegador
Gestión de trabajos
- Obtener estado del trabajo : recupera el estado y el resultado de una operación por ID de trabajo
- Lista de trabajos : ver trabajos recientes de operación del navegador
Notas de usuario
- Agregar nota : crea y almacena notas relacionadas con las operaciones del navegador
Métodos adicionales
Herramientas de depuración del navegador
- Obtener registros de la consola :
mcp__browser-tools__getConsoleLogs
- Obtener errores de consola :
mcp__browser-tools__getConsoleErrors
- Obtener registros de red :
mcp__browser-tools__getNetworkLogs
- Obtener errores de red :
mcp__browser-tools__getNetworkErrors
- Tomar captura de pantalla :
mcp__browser-tools__takeScreenshot
- Obtener elemento seleccionado :
mcp__browser-tools__getSelectedElement
- Borrar registros :
mcp__browser-tools__wipeLogs
Herramientas de auditoría
- Ejecutar auditoría de accesibilidad :
mcp__browser-tools__runAccessibilityAudit
- Ejecutar auditoría de rendimiento :
mcp__browser-tools__runPerformanceAudit
- Ejecutar auditoría SEO :
mcp__browser-tools__runSEOAudit
- Ejecutar auditoría de NextJS :
mcp__browser-tools__runNextJSAudit
- Ejecutar auditoría de mejores prácticas :
mcp__browser-tools__runBestPracticesAudit
- Ejecutar modo depurador :
mcp__browser-tools__runDebuggerMode
- Ejecutar modo auditoría :
mcp__browser-tools__runAuditMode
Patrón de flujo de trabajo asincrónico
Las operaciones del navegador son asincrónicas y utilizan un enfoque basado en trabajos:
- Operación de inicio : llamar a un método del navegador que devuelve un job_id
- Encuesta de finalización : utilice get-job-status hasta que se complete el trabajo
- Resultados del proceso : cuando se completa el trabajo, acceda a los resultados desde el estado del trabajo
Este enfoque evita los tiempos de espera del cliente y al mismo tiempo permite completar operaciones complejas del navegador.
Estado persistente del navegador
El operador MCP mantiene un estado persistente cuando se crean navegadores con un nombre de proyecto:
- El estado del navegador (cookies, almacenamiento local, almacenamiento de sesión) se conserva entre sesiones
- Varios proyectos pueden mantener estados de navegador independientes
- Útil para mantener sesiones de inicio de sesión, carritos de compra u otros estados personalizados.
Estructura del proyecto
src/mcp_operator/
: Paquete principal__init__.py
: Inicialización del paquete__main__.py
: Punto de entrada para el paqueteserver.py
: implementación del servidor MCPbrowser.py
: Implementación del operador del navegadorcua/
: Componentes de la API de uso informáticoagent.py
: Implementación del agentecomputer.py
: Interfaz de computadorautils.py
: Funciones de utilidad
run-server
: Script para ejecutar el servidor MCPrun-tests
: Script para ejecutar pruebas unitarias y de integraciónrun-test-harness
: Script para ejecutar con MCP Inspector
Desarrollo
Uso del inspector MCP
Para depurar, utilice el Inspector MCP :
Esto proporciona una interfaz web para probar su servidor MCP.
Seguridad
- Bloqueo de dominios para sitios potencialmente dañinos
- Validación de URL antes de la navegación
- Aislamiento de sesiones entre diferentes instancias del navegador
- Registro basado en archivos (sin stdout para preservar el protocolo MCP)
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Un servidor de automatización del navegador web que permite a los asistentes de IA controlar Chrome con gestión de estado persistente, lo que habilita tareas de navegación complejas a través de operaciones de navegador asincrónicas.
Related MCP Servers
- -securityFlicense-qualityEnables AI agents to control web browsers via a standardized interface for operations like launching, interacting with, and closing browsers.Last updated -0JavaScript
- -securityAlicense-qualityA browser monitoring and interaction tool that enables AI applications to capture and analyze browser data through a Chrome extension, supporting functions like console monitoring, screenshots, DOM analysis, and website auditing.Last updated -1JavaScriptMIT License
- -securityAlicense-qualityAI-driven browser automation server that implements the Model Context Protocol to enable natural language control of web browsers for tasks like navigation, form filling, and visual interaction.Last updated -1PythonMIT License
- -security-license-qualityA Model Context Protocol server that enables AI assistants to control Chrome browsers through the Chrome DevTools Protocol, allowing for navigation, clicking, typing, and extracting page information.Last updated -3TypeScript