Browser Use MCP Server

Un servidor MCP que permite a los agentes de IA controlar un navegador web utilizando la librería browser-use.

Documentación

browser-use-mcp-server

Twitter URL Discord PyPI version

Un servidor MCP que permite a los agentes de IA controlar navegadores web usando browser-use.

🌐 ¿Quieres Vibe Navegar por la Web? Navegador web de código abierto impulsado por IA - Vibe Browser.

🔗 ¿Gestionas múltiples servidores MCP? Simplifica tu flujo de trabajo de desarrollo con agent-browser

Requisitos previos

  • uv - Gestor de paquetes de Python rápido
  • Playwright - Automatización de navegadores
  • mcp-proxy - Requerido para el modo stdio
# Install prerequisites
curl -LsSf https://astral.sh/uv/install.sh | sh
uv tool install mcp-proxy
uv tool update-shell

Entorno

Crea un archivo .env:

OPENAI_API_KEY=your-api-key
CHROME_PATH=optional/path/to/chrome
PATIENT=false  # Set to true if API calls should wait for task completion

Instalación

# Install dependencies
uv sync
uv pip install playwright
uv run playwright install --with-deps --no-shell chromium

Uso

Modo SSE

# Run directly from source
uv run server --port 8000

Modo stdio

# 1. Build and install globally
uv build
uv tool uninstall browser-use-mcp-server 2>/dev/null || true
uv tool install dist/browser_use_mcp_server-*.whl

# 2. Run with stdio transport
browser-use-mcp-server run server --port 8000 --stdio --proxy-port 9000

Configuración del Cliente

Configuración del Cliente en Modo SSE

{
  "mcpServers": {
    "browser-use-mcp-server": {
      "url": "http://localhost:8000/sse"
    }
  }
}

Configuración del Cliente en Modo stdio

{
  "mcpServers": {
    "browser-server": {
      "command": "browser-use-mcp-server",
      "args": [
        "run",
        "server",
        "--port",
        "8000",
        "--stdio",
        "--proxy-port",
        "9000"
      ],
      "env": {
        "OPENAI_API_KEY": "your-api-key"
      }
    }
  }
}

Ubicaciones de Configuración

ClienteRuta de Configuración
Cursor./.cursor/mcp.json
Windsurf~/.codeium/windsurf/mcp_config.json
Claude (Mac)~/Library/Application Support/Claude/claude_desktop_config.json
Claude (Windows)%APPDATA%\Claude\claude_desktop_config.json

Características

  • Automatización de Navegador: Controla navegadores a través de agentes de IA
  • Transporte Dual: Soporte para protocolos SSE y stdio
  • Transmisión VNC: Observa la automatización del navegador en tiempo real
  • Tareas Asíncronas: Ejecuta operaciones del navegador de forma asíncrona

Desarrollo Local

Para desarrollar y probar el paquete localmente:

  1. Construye una rueda distribuible:

    # From the project root directory
    uv build
    
  2. Instálala como una herramienta global:

    uv tool uninstall browser-use-mcp-server 2>/dev/null || true
    uv tool install dist/browser_use_mcp_server-*.whl
    
  3. Ejecuta desde cualquier directorio:

    # Set your OpenAI API key for the current session
    export OPENAI_API_KEY=your-api-key-here
    
    # Or provide it inline for a one-time run
    OPENAI_API_KEY=your-api-key-here browser-use-mcp-server run server --port 8000 --stdio --proxy-port 9000
    
  4. Después de hacer cambios, reconstruye y reinstala:

    uv build
    uv tool uninstall browser-use-mcp-server
    uv tool install dist/browser_use_mcp_server-*.whl
    

Docker

Usar Docker proporciona un entorno consistente y aislado para ejecutar el servidor.

# Build the Docker image
docker build -t browser-use-mcp-server .

# Run the container with the default VNC password ("browser-use")
# --rm ensures the container is automatically removed when it stops
# -p 8000:8000 maps the server port
# -p 5900:5900 maps the VNC port
docker run --rm -p8000:8000 -p5900:5900 browser-use-mcp-server

# Run with a custom VNC password read from a file
# Create a file (e.g., vnc_password.txt) containing only your desired password
echo "your-secure-password" > vnc_password.txt
# Mount the password file as a secret inside the container
docker run --rm -p8000:8000 -p5900:5900 \
  -v $(pwd)/vnc_password.txt:/run/secrets/vnc_password:ro \
  browser-use-mcp-server

Nota: La bandera :ro en el montaje de volumen (-v) hace que el archivo de contraseña sea de solo lectura dentro del contenedor para mayor seguridad.

Visor VNC

# Browser-based viewer
git clone https://github.com/novnc/noVNC
cd noVNC
./utils/novnc_proxy --vnc localhost:5900

Contraseña predeterminada: browser-use (a menos que se sobrescriba usando el método de contraseña personalizada)

VNC Screenshot

VNC Screenshot

Ejemplo

Intenta preguntarle a tu IA:

open https://news.ycombinator.com and return the top ranked article

Soporte

Para problemas o consultas: cobrowser.xyz

Historial de Estrellas

Star History Chart