MCP-Undetected-Chromedriver

MIT License
2
  • Linux
  • Apple

Integrations

  • Provides a wrapper around undetected-chromedriver (a Selenium variant) for bypassing anti-bot detection while automating web browsing tasks, including navigation, screenshots, form filling, and page interaction.

Controlador de Chrome no detectado por MCP

Un servicio MCP creado con undetected-chromedriver y que proporciona una interfaz integral para automatizar el control del navegador Chrome y al mismo tiempo evitar la detección anti-bots.

Lengua china

Instalación

Para instalar MCP-Undetected-Chromedriver para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @dragons96/mcp-undetected-chromedriver --client claude

Configuración para utilizar el servidor Chromedriver no detectado

Aquí está la configuración de Claude Desktop para utilizar el servidor Undetected-chromedriver:

{ "mcpServers": { "mcp-undetected-chromedriver": { "command": "npx", "args": [ "-y", "@smithery/cli@latest", "run", "@dragons96/mcp-undetected-chromedriver", "--config", "{}" ] } } }

Requisitos

  • Python >= 3.11
  • Navegador Chrome

Instalación con uv

# Create virtual environment uv venv # Activate virtual environment # Windows .venv\Scripts\activate # Linux/MacOS source .venv/bin/activate # Install dependencies uv pip install -e .

Introducción del proyecto

MCP-Undetected-Chromedriver es un servicio MCP (Protocolo Multicanal) que integra la funcionalidad de la biblioteca undetected-chromedriver en una serie de API fáciles de usar. Este proyecto es especialmente adecuado para escenarios que requieren eludir los mecanismos modernos de detección anti-bots de sitios web en pruebas automatizadas, extracción de datos o scripts de automatización web.

Características principales

  • Basado en undetected-chromedriver, que evita eficazmente la detección anti-bots de sitios web
  • Proporciona interfaces API de operación del navegador enriquecidas
  • Admite capturas de pantalla, exportación a PDF y otras funcionalidades.
  • Admite operaciones complejas de interacción de página, como hacer clic, completar formularios, arrastrar, etc.
  • Se integra perfectamente con otras herramientas del ecosistema MCP

Lista de tareas pendientes

  • [ ] Optimice la administración del controlador del navegador y gestione las interrupciones del controlador
  • [ ] Ampliar las capacidades de la API
  • [ ] Agregar un manejo y registro de errores más completo
  • [ ] Mejorar la documentación con más ejemplos de uso
  • [ ] Agregar soporte para perfiles y extensiones del navegador

Uso

Iniciando el servicio

mcp-server-undetected-chromedriver

API disponibles

El servicio proporciona las siguientes interfaces API principales:

  • browser_navigate : Navegar a una URL específica
  • browser_screenshot : Toma una captura de pantalla de la página actual
  • browser_click : Hacer clic en los elementos de la página
  • browser_iframe_click : Haga clic en los elementos dentro de un iframe
  • browser_fill : Rellena el contenido de los campos de entrada
  • browser_select : Seleccionar opciones en los cuadros de selección desplegables
  • browser_hover : Pase el ratón sobre los elementos
  • browser_evalute : Ejecutar código JavaScript
  • browser_close : Cierra el navegador
  • browser_get_visible_text : Obtener texto visible en la página
  • browser_get_visible_html : Obtener HTML visible en la página
  • browser_go_back : Navegar hacia atrás en el historial del navegador
  • browser_go_forward : Navegar hacia adelante en el historial del navegador
  • browser_drag : Arrastrar elementos
  • browser_press_key : Simular pulsaciones de teclas
  • browser_save_as_pdf : Guardar la página como PDF

Ejemplo de código

from mcp.client import Client # Create MCP client client = Client() client.start("undetected-chromedriver-mcp-server") # Navigate to website response = client.call("browser_navigate", {"url": "https://example.com"}) print(response) # Take a screenshot response = client.call("browser_screenshot", {"name": "example"}) print(response) # Get page text response = client.call("browser_get_visible_text") print(response.content[0].text) # Close the browser client.call("browser_close")

Cómo funciona

Este servicio utiliza la biblioteca undetected-chromedriver para crear una instancia especializada del navegador Chrome que evade eficazmente los mecanismos comunes de detección antibots. El servicio integra estas funciones mediante el protocolo MCP, proporcionando una interfaz API fácil de usar que facilita las pruebas automatizadas y el web scraping.

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Pautas de contribución

Los informes de errores y las solicitudes de funcionalidad son bienvenidos en la página de incidencias de GitHub. Si quieres contribuir con código, crea primero una incidencia para discutir tus ideas.

Preguntas frecuentes

P: ¿Por qué elegir undetected-chromedriver en lugar del controlador web Selenium estándar?

A: undetected-chromedriver está diseñado específicamente para eludir los mecanismos de detección anti-bots de sitios web modernos, como Cloudflare, Distil Networks, etc., lo que lo hace más confiable para el raspado de datos y escenarios de pruebas automatizadas.

P: ¿Cómo maneja el servicio las instancias del navegador?

R: El servicio mantiene una instancia global del navegador, que se crea automáticamente al llamar por primera vez a una API que requiere un navegador. El navegador se puede cerrar explícitamente mediante la API browser_close .

P: ¿Cómo manejar elementos dentro de iframes?

R: La API browser_iframe_click puede operar directamente sobre elementos dentro de iframes, sin la necesidad de cambiar manualmente los contextos de los marcos.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Un servicio MCP que automatiza el control del navegador Chrome mientras evita los mecanismos de detección anti-bots, lo que permite el raspado web, las pruebas y la automatización en sitios con protección sofisticada contra bots.

  1. Installation
    1. Configuration to use Undetected Chromedriver Server
      1. Requirements
      2. Installation with uv
    2. Project Introduction
      1. Key Features
    3. Todo List
      1. Usage
        1. Starting the Service
        2. Available APIs
        3. Code Example
      2. How It Works
        1. License
          1. Contribution Guidelines
            1. FAQ
              ID: iglw7qg4kz