MCP Chrome Server

Un servidor para la automatización del navegador utilizando Google Chrome, basado en el marco MCP.

Documentación

MCP Chrome Server

smithery badge Buy Me A Coffee

Un servidor de Chrome basado en MCP (Modelo-Controlador-Prompt) para automatización de navegador.

Instalación

Requisitos previos

  • Python 3.12
  • Navegador Google Chrome instalado
  • uv (instalador de paquetes de Python) o Docker

Instalación mediante Smithery

npx -y @smithery/cli install @dlwjdtn535/mcp-chrome-server --client claude

Configuración

Elija uno de los siguientes métodos de configuración según su entorno:

1. Usando uv (Recomendado)

Configuración para Windows:

{
  "mcpServers": {
    "mcp-chrome-server": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "%LOCALAPPDATA%\\Programs\\mcp-chrome-server\\src",
        "mcp-chrome-server"
      ],
      "env": {
        "CHROME_PROFILE_PATH": "%LOCALAPPDATA%\\Google\\Chrome\\User Data"
      }
    }
  }
}

Configuración para macOS:

{
  "mcpServers": {
    "mcp-chrome-server": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/usr/local/bin/mcp-chrome-server/src",
        "mcp-chrome-server"
      ],
      "env": {
        "CHROME_PROFILE_PATH": "$HOME/Library/Application Support/Google/Chrome"
      }
    }
  }
}

Configuración para Linux:

{
  "mcpServers": {
    "mcp-chrome-server": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/usr/local/bin/mcp-chrome-server/src",
        "mcp-chrome-server"
      ],
      "env": {
        "CHROME_PROFILE_PATH": "$HOME/.config/google-chrome"
      }
    }
  }
}

Configuración

Rutas de perfil de Chrome

Rutas predeterminadas del perfil de Chrome para cada sistema operativo:

SORuta
Windows%LOCALAPPDATA%\Google\Chrome\User Data
macOS~/Library/Application Support/Google/Chrome
Linux~/.config/google-chrome

Notas importantes

  • Cierre todas las instancias de Chrome en ejecución antes de iniciar el servidor de automatización
  • Asegure los permisos adecuados para el directorio del perfil de Chrome
  • Para la configuración con Docker, asegúrese de que la ruta de montaje del volumen coincida con la ruta del perfil de Chrome de su sistema

Gestión de credenciales

Almacene y gestione de forma segura la información de inicio de sesión utilizando el llavero del sistema:

# Save credentials
result = tool_save_credentials(
    site="example.com",
    username="your_username",
    password="your_password"
)

# Retrieve saved credentials
result = tool_get_credentials(
    site="example.com",
    username="your_username"
)

Características principales

Control del navegador

# Open browser
result = tool_open_browser()

# Navigate to URL
result = tool_navigate(url="https://example.com")

# Close browser
result = tool_close_browser()

Inicio de sesión web

result = tool_web_login(
    url="https://example.com/login",
    credentials={
        "username": "your_username",
        "password": "your_password"
    },
    selectors={
        "username": "#id",
        "password": "#pw",
        "submit": ".login-button"
    }
)

Manejo especial:

  • Espera a que el usuario resuelva el CAPTCHA cuando se detecta
  • Detección automática de autenticación de dos factores
  • Análisis detallado de escenarios de fallo de inicio de sesión

Manipulación de elementos

# Click element
result = tool_click(selector=".button")

# Type text
result = tool_type(
    selector="#input-field",
    text="Hello, World!"
)

# Get text
result = tool_get_text(selector=".content")

# Get multiple elements
result = tool_get_elements(selector=".items")

Consideraciones importantes

  1. Uso del perfil de Chrome

    • Verifique la configuración correcta de la ruta del perfil
    • Cierre todas las demás ventanas de Chrome que utilicen el perfil
  2. Prevención de detección de automatización

    • Simulación de comportamiento natural del usuario
    • Mantenga retrasos apropiados entre intentos de inicio de sesión
  3. Seguridad

    • Utilice siempre el llavero del sistema para credenciales importantes
    • Nunca exponga credenciales directamente en variables de entorno o archivos de configuración