Browser Use MCP Server

Um servidor MCP que permite que agentes de IA controlem um navegador web usando a biblioteca browser-use.

Documentação

browser-use-mcp-server

Twitter URL Discord PyPI version

Um servidor MCP que permite que agentes de IA controlem navegadores web usando browser-use.

🌐 Quer navegar na web com Vibe? Navegador web de código aberto com IA - Vibe Browser.

🔗 Gerenciando vários servidores MCP? Simplifique seu fluxo de desenvolvimento com agent-browser

Pré-requisitos

  • uv - Gerenciador de pacotes Python rápido
  • Playwright - Automação de navegador
  • mcp-proxy - Necessário para o modo stdio
# Install prerequisites
curl -LsSf https://astral.sh/uv/install.sh | sh
uv tool install mcp-proxy
uv tool update-shell

Ambiente

Crie um arquivo .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

Instalação

# 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

Configuração do Cliente

Configuração do Cliente no Modo SSE

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

Configuração do Cliente no 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"
      }
    }
  }
}

Locais de Configuração

ClienteCaminho de Configuração
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

Recursos

  • Automação de Navegador: Controle navegadores por meio de agentes de IA
  • Transporte Duplo: Suporte para protocolos SSE e stdio
  • Streaming VNC: Assista à automação do navegador em tempo real
  • Tarefas Assíncronas: Execute operações do navegador de forma assíncrona

Desenvolvimento Local

Para desenvolver e testar o pacote localmente:

  1. Crie uma wheel distribuível:

    # From the project root directory
    uv build
    
  2. Instale-o como uma ferramenta global:

    uv tool uninstall browser-use-mcp-server 2>/dev/null || true
    uv tool install dist/browser_use_mcp_server-*.whl
    
  3. Execute a partir de qualquer diretório:

    # 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. Após fazer alterações, reconstrua e reinstale:

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

Docker

Usar Docker fornece um ambiente consistente e isolado para executar o 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: A flag :ro no volume montado (-v) torna o arquivo de senha somente leitura dentro do contêiner para maior segurança.

Visualizador VNC

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

Senha padrão: browser-use (a menos que seja substituída usando o método de senha personalizada)

VNC Screenshot

VNC Screenshot

Exemplo

Tente perguntar à sua IA:

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

Suporte

Para problemas ou dúvidas: cobrowser.xyz

Histórico de Estrelas

Star History Chart