MCP-Puppeteer-Linux
Automatiza navegadores web en Linux usando Puppeteer. Permite que los LLMs interactúen con páginas web, tomen capturas de pantalla y ejecuten JavaScript.
Documentación
MCP-Puppeteer-Linux
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona capacidades de automatización de navegador utilizando Puppeteer, con soporte completo para servidores de visualización de Linux (X11 y Wayland). Este servidor permite que los LLM interactúen con páginas web, tomen capturas de pantalla y ejecuten JavaScript en un entorno de navegador real.
Soporte de Servidor de Visualización
Esta bifurcación añade detección automática y configuración para servidores de visualización de Linux:
- Detección automática de X11/Wayland
- Configuración dinámica de variables de entorno
- Soporte para varios entornos de escritorio (GNOME, KDE, etc.)
- Mecanismos de respaldo y manejo robusto de errores
- Compatibilidad con XWayland
Componentes
Herramientas
- puppeteer_navigate
- Navegar a cualquier URL en el navegador
- Entrada:
url(cadena)
- puppeteer_screenshot
- Capturar capturas de pantalla de la página completa o de elementos específicos
- Entradas:
name(cadena, obligatorio): Nombre para la captura de pantallaselector(cadena, opcional): Selector CSS para el elemento a capturarwidth(número, opcional, predeterminado: 800): Ancho de la captura de pantallaheight(número, opcional, predeterminado: 600): Alto de la captura de pantalla
- puppeteer_click
- Hacer clic en elementos de la página
- Entrada:
selector(cadena): Selector CSS para el elemento en el que hacer clic
- puppeteer_hover
- Pasar el cursor sobre elementos de la página
- Entrada:
selector(cadena): Selector CSS para el elemento sobre el que pasar el cursor
- puppeteer_fill
- Rellenar campos de entrada
- Entradas:
selector(cadena): Selector CSS para el campo de entradavalue(cadena): Valor a rellenar
- puppeteer_select
- Seleccionar un elemento con la etiqueta SELECT
- Entradas:
selector(cadena): Selector CSS para el elemento a seleccionarvalue(cadena): Valor a seleccionar
- puppeteer_evaluate
- Ejecutar JavaScript en la consola del navegador
- Entrada:
script(cadena): Código JavaScript a ejecutar
Recursos
El servidor proporciona acceso a dos tipos de recursos:
- Registros de Consola (
console://logs)- Salida de la consola del navegador en formato de texto
- Incluye todos los mensajes de consola del navegador
- Capturas de Pantalla (
screenshot://<name>)- Imágenes PNG de capturas de pantalla tomadas
- Accesibles mediante el nombre de captura especificado durante la captura
Características Clave
- Automatización de navegador con soporte para servidores de visualización de Linux
- Detección y configuración automática de X11/Wayland
- Monitoreo de registros de consola
- Capacidades de captura de pantalla
- Ejecución de JavaScript
- Interacción web básica (navegación, clics, relleno de formularios)
Configuración
Configuración de Claude Desktop
{
"mcpServers": {
"puppeteer": {
"command": "npx",
"args": ["ts-node", "/path/to/index.ts"]
}
}
}
Instalación
Instalación mediante Smithery
Para instalar Puppeteer Linux para Claude Desktop automáticamente mediante Smithery:
npx -y @smithery/cli install @PhialsBasement/mcp-puppeteer-linux --client claude
Instalación Manual
- Clonar el repositorio:
git clone https://github.com/PhialsBasement/MCP-Puppeteer-Linux.git
- Instalar dependencias:
npm install
- Iniciar el servidor:
ts-node index.ts
Detalles del Servidor de Visualización
El servidor detecta y configura automáticamente el entorno de visualización apropiado:
Soporte Wayland
- Detecta sesiones Wayland mediante
WAYLAND_DISPLAY - Configura las variables de entorno necesarias:
WAYLAND_DISPLAYQT_QPA_PLATFORMGDK_BACKENDMOZ_ENABLE_WAYLANDXDG_SESSION_TYPE
Soporte X11
- Respaldo para sesiones X11 tradicionales
- Maneja variables específicas de X11:
DISPLAYXAUTHORITY
- Soporta varios entornos de escritorio y gestores de ventanas
Licencia
Este servidor MCP está licenciado bajo la Licencia MIT. Esto significa que eres libre de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia MIT. Para más detalles, consulta el archivo LICENSE en el repositorio del proyecto.
