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:
git clone https://github.com/yourusername/operator-mcp.git cd operator-mcpInstalar dependencias:
pip install -e .Instalar navegadores Playwright:
playwright install chromiumEstablezca su clave API de OpenAI:
export OPENAI_API_KEY=your-api-key
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 the MCP server ./run-server # Run with specific log directory ./run-server --log-dir /path/to/logs # Run in debug mode ./run-server --debugrun-tests: ejecuta todas las pruebas (con opciones solo para unidades o integración)# Run all tests ./run-tests # Run only unit tests (faster) ./run-tests --unit-only # Run only integration tests ./run-tests --integration-only # Run with verbose output ./run-tests --verbose # Run a specific test ./run-tests --test TestBrowserOperatorMethodsrun-test-harness: ejecuta el servidor con MCP Inspector para pruebas interactivas# Run with the MCP Inspector for interactive testing ./run-test-harness
Métodos básicos
Administración del navegador
Crear navegador : inicializa una nueva instancia del navegador
{ "jsonrpc": "2.0", "id": 1, "method": "mcp__browser-operator__create-browser", "params": { "project_name": "my-project" } }Navegar por el navegador : dirige el navegador a una URL específica
{ "jsonrpc": "2.0", "id": 2, "method": "mcp__browser-operator__navigate-browser", "params": { "project_name": "my-project", "url": "https://example.com" } }Operar navegador : ejecutar instrucciones en lenguaje natural para la interacción con el navegador
{ "jsonrpc": "2.0", "id": 3, "method": "mcp__browser-operator__operate-browser", "params": { "project_name": "my-project", "instruction": "Find the heading on this page and tell me what it says." } }Cerrar navegador : finalizar una instancia del navegador
{ "jsonrpc": "2.0", "id": 4, "method": "mcp__browser-operator__close-browser", "params": { "project_name": "my-project" } }
Gestión de trabajos
Obtener estado del trabajo : recupera el estado y el resultado de una operación por ID de trabajo
{ "jsonrpc": "2.0", "id": 5, "method": "mcp__browser-operator__get-job-status", "params": { "job_id": "job-12345" } }Lista de trabajos : ver trabajos recientes de operación del navegador
{ "jsonrpc": "2.0", "id": 6, "method": "mcp__browser-operator__list-jobs", "params": { "limit": 10 } }
Notas de usuario
Agregar nota : crea y almacena notas relacionadas con las operaciones del navegador
{ "jsonrpc": "2.0", "id": 7, "method": "mcp__browser-operator__add-note", "params": { "name": "My Note", "content": "Important information about this browser session" } }
Métodos adicionales
Herramientas de depuración del navegador
Obtener registros de la consola :
mcp__browser-tools__getConsoleLogsObtener errores de consola :
mcp__browser-tools__getConsoleErrorsObtener registros de red :
mcp__browser-tools__getNetworkLogsObtener errores de red :
mcp__browser-tools__getNetworkErrorsTomar captura de pantalla :
mcp__browser-tools__takeScreenshotObtener elemento seleccionado :
mcp__browser-tools__getSelectedElementBorrar registros :
mcp__browser-tools__wipeLogs
Herramientas de auditoría
Ejecutar auditoría de accesibilidad :
mcp__browser-tools__runAccessibilityAuditEjecutar auditoría de rendimiento :
mcp__browser-tools__runPerformanceAuditEjecutar auditoría SEO :
mcp__browser-tools__runSEOAuditEjecutar auditoría de NextJS :
mcp__browser-tools__runNextJSAuditEjecutar auditoría de mejores prácticas :
mcp__browser-tools__runBestPracticesAuditEjecutar modo depurador :
mcp__browser-tools__runDebuggerModeEjecutar 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
- Asecurity-licenseAqualityAI-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 -12MIT 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 -42
 - -security-license-qualityA server that enables AI assistants to control a browser through tools, allowing them to perform web automation tasks like navigation, typing, clicking, and taking screenshots.Last updated -
 - -security-license-qualityA Chrome extension-based Model Context Protocol server that enables AI assistants to control your browser, leveraging your existing configurations and login states for complex automation, content analysis, and semantic search.Last updated -9,084MIT License