Browser MCP

Controle seu Chrome real a partir do Claude Code. 29 ferramentas incluindo resolução de CAPTCHA, upload de arquivos, múltiplas sessões e interação humana no processo.

Documentação

Browser MCP by Agent360

A ferramenta de navegador que pode parar e perguntar para você. Um código 2FA, um CAPTCHA, uma escolha que só você pode fazer: ela pergunta na sua própria tela e continua na aba em que você já estava conectado.

Ela controla o Chrome em que você já está conectado: sem etapa de login para falhar, sem chave de API para configurar, sem perfil novo que não conhece nenhuma das suas contas. Até 20 agentes ao mesmo tempo, cada um no seu próprio grupo de abas com código de cores. 40 ferramentas, MIT, roda na sua máquina.

→ O que ela consegue e o que não consegue contornar - cada barreira, marcada como medido, por design, ainda não ou não vai. Incluindo as que ainda não corrigimos.

npm version npm downloads GitHub stars License: MIT MCP Chrome Web Store

Add to Cursor Add to VS Code Glama quality

Browser MCP Demo

▶ Assista à demonstração de 37 segundos com som →

O Browser MCP dá ao Claude Code (e a qualquer cliente MCP - Cursor, modo agente do VS Code) controle do seu Chrome real: seus cookies, suas sessões, seu 2FA. Então funciona em sites com CAPTCHA, 2FA e anti-bot onde Playwright e Puppeteer são bloqueados - porque é você navegando.

A jogada principal: ele encontra uma barreira de login, lê o código de verificação da sua própria aba do Gmail e continua o login. Nenhuma API consegue fazer isso. Opere plataformas sem API, faça QA do seu próprio aplicativo web de ponta a ponta, ou trabalhe em dashboards, LinkedIn e Reddit em ritmo humano - com você aprovando as etapas sensíveis.

40 ferramentas. Clica automaticamente na caixa de seleção do reCAPTCHA v2, com alternativa humana para o resto. Grupos de abas multissessão com código de cores. MIT, gratuito e roda na sua máquina - sem conta, sem telemetria, nada é enviado para nós.

Tudo em quatro etapas

Prefere não fazer manualmente? Cole isto no seu assistente de IA - Claude Code, Cursor, Codex, VS Code, Windsurf, Cline - e ele se configura sozinho:

Configure o Browser MCP para mim. Leia https://browsermcp.dev/llms-install.md e siga para o cliente de IA em que você está rodando. Há apenas uma etapa que só eu posso fazer - me diga qual é e espere por mim. Quando eu confirmar, chame browser_list_tabs para provar que as duas partes estão conversando.

Se você não conseguir abrir URLs: npx @agent360/browser-mcp install

Ele lê o mesmo guia que as quatro etapas abaixo detalham manualmente. Uma etapa continua sendo sua de qualquer forma: o Chrome não permite que uma extensão se instale sozinha, então você a carrega uma vez.

1 - Instale a extensão do Chrome. Um clique na Chrome Web Store; o Chrome mantém ela atualizada. Sem a loja? Veja a instalação descompactada abaixo.

2 - Adicione o servidor MCP. Cole isto em um terminal. Obrigatório - a extensão não faz nada sozinha:

claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latest

3 - Reinicie o Claude Code. É isso que inicia o servidor. A extensão não mostra nenhum selo até a etapa 4 - o servidor só usa uma porta na primeira vez que seu agente realmente usa o navegador. Um selo verde com o número de agentes conectados aparece então; nada no ícone antes disso é normal. (O ícone em si nunca muda de cor - é o selo que fica verde.)

4 - Diga isto para verificar se funcionou. Cole no Claude Code:

Tire uma captura de tela da minha aba atual do Chrome.

Você recebe uma imagem de volta em vez de "não tenho acesso ao navegador". É isso - você está rodando. → O que mais dizer

Usando Cursor, VS Code, Codex ou Windsurf? Mesmo servidor, configuração própria do cliente - o prompt no topo resolve, ou veja browsermcp.dev/docs. Tudo abaixo é a versão longa.

A versão longa - instalação, passo a passo

O Browser MCP tem duas metades e você precisa das duas: uma extensão do Chrome (controla o navegador) e um servidor MCP local (com o qual seu agente realmente conversa). Instalar apenas a extensão - por exemplo, direto da Chrome Web Store - deixa ela presa em "Não conectado", porque não há servidor para ela alcançar. O Chrome não pode instalar o servidor, e o npm não pode instalar a extensão. Portanto, duas etapas.

Etapa 1: Registre o servidor MCP no Claude Code

claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latest

Esse é o comando MCP do próprio Claude Code, então a entrada vai para a configuração que o Claude Code realmente lê. --scope user o disponibiliza em todos os projetos.

Quer os arquivos da extensão no disco para a instalação descompactada na Etapa 2? Execute também:

npx @agent360/browser-mcp install

Ele copia a extensão para ~/.browser-mcp/extension/ e imprime esse caminho no terminal - copie-o. (Use-o apenas para os arquivos da extensão; registre o servidor com claude mcp add acima.)

Etapa 2: Carregue a extensão no Chrome

O Chrome não permite que extensões se instalem sozinhas pelo npm - você a carrega manualmente uma vez. Para atualizar depois, execute novamente o comando de instalação e recarregue-a (veja Mantendo atualizado). Prefira a instalação pela Chrome Web Store se quiser que a extensão se atualize automaticamente.

  1. Abra o Chrome e digite chrome://extensions na barra de endereço
  2. Ative o "Modo do desenvolvedor" (canto superior direito)
  3. Clique em "Carregar sem compactação" (canto superior esquerdo, ao lado de "Empacotar extensão")
  4. Navegue até ~/.browser-mcp/extension/ e clique em "Selecionar"
    • No Mac: Pressione Cmd+Shift+G no seletor de arquivos, cole ~/.browser-mcp/extension/, pressione Enter
    • No Windows: Cole %USERPROFILE%\.browser-mcp\extension\ na barra de endereço (o Windows ainda não foi verificado: nossos testes automatizados não passam lá)
    • No Linux: Digite ~/.browser-mcp/extension/ no campo de caminho
  5. Reinicie o Claude Code para que ele reconheça o novo servidor MCP

É isso. O ícone do Browser MCP aparecerá na sua barra de ferramentas, e 40 ferramentas de navegador estarão disponíveis no Claude Code.

Alternativa: Download manual do zip (sem npm)

Se você não quiser usar npm, baixe a extensão diretamente:

  1. Baixe o zip da extensão (agent360-browser-mcp-<version>.zip) do release mais recente do GitHub
  2. Descompacte o arquivo (em qualquer lugar - por exemplo, ~/Downloads/browser-mcp-extension/)
  3. Siga a Etapa 2 acima, mas selecione a pasta descompactada em vez de ~/.browser-mcp/extension/
  4. Registre o servidor - execute claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latest, ou adicione isto a ~/.claude.json manualmente:
    {
      "mcpServers": {
        "browser-mcp": {
          "command": "npx",
          "args": ["@agent360/browser-mcp@latest"]
        }
      }
    }
    

Chrome Web Store (sem Modo do desenvolvedor, extensão com atualização automática)

Isto substitui apenas a Etapa 2 - você ainda precisa da Etapa 1.

  1. Instale a extensão da Chrome Web Store → - sem alternar o Modo do desenvolvedor, e o Chrome mantém ela atualizada para você.
  2. Registre o servidor MCP:
    claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latest
    
    (Para Cursor / VS Code / Codex, use a configuração MCP do próprio cliente - veja browsermcp.dev/docs.)
  3. Reinicie o Claude Code.

Pule a etapa 2 e o ícone da extensão ficará em "Não conectado" para sempre - esse é o sintoma de um servidor MCP ausente, não de uma extensão quebrada.

Você está dentro. E agora?

Nada acontece até você pedir, e a parte mais difícil de uma ferramenta nova é saber o que pedir. Cole um destes no seu agente:

Diga istoO que mostra
"Tire uma captura de tela da minha aba atual do Chrome."Comece aqui. Uma imagem de volta em vez de "não tenho acesso ao navegador" significa que as duas metades estão conversando. Esse é o teste completo da instalação.
"Abra minha aba do Gmail e me diga quem enviou meus últimos 3 e-mails."O que mostra a diferença - funciona porque é o seu navegador, já conectado. Uma ferramenta headless encontra uma barreira de login aqui.
"Vá ao meu dashboard de analytics, pegue os números deste mês e coloque-os em uma tabela."Qualquer dashboard em que você já esteja conectado. Sem chave de API, sem exportação, sem integração para construir primeiro.
"Preencha este formulário de cadastro com meus dados. Pare e me pergunte antes de qualquer coisa sensível."Você continua no controle - ela devolve o controle para senhas, dados de pagamento ou qualquer coisa que não deva decidir sozinha.
"Faça login aqui para mim. Se enviar um código por e-mail, leia-o da minha aba do Gmail e continue."A jogada que nenhuma API consegue fazer: ela lê o código de uso único da sua própria caixa de entrada e conclui o login.
"Percorra o fluxo de cadastro do meu aplicativo como um usuário real e me diga onde ele quebra."QA de ponta a ponta do seu próprio produto, no mesmo navegador que seus usuários usam.

O padrão: qualquer coisa que você faria sozinho em um navegador, em um site em que você já está conectado. Ela é mais forte onde não há API - dashboards internos, painéis de administração, portais, LinkedIn. Construiu algo bom? Adicione à galeria.

Por que isto em vez de Playwright MCP / BrowserMCP?

Browser MCPPlaywright MCPBrowserMCP.io
NavegadorSeu Chrome real, via extensãoPerfil persistente por padrão, ou seu Chrome via extensão delesSeu Chrome real
ManutençãoAtiva - último release v1.30.1 (2026-09-27)Ativa (Microsoft)Último commit em abr. 2025
Logins/cookiesSua sessão existentePerfil persistente mantém logins entre execuçõesJá autenticado
Vários agentes, um perfil conectado20 simultâneos, cada um com seu grupo de abas com código de coresTambém suportado: a extensão deles dá a cada cliente conectado seu próprio grupo de abas coloridoSessão única
Humano no circuitobrowser_ask_user - 2FA, CAPTCHA, entrada de credenciaisNenhum: 40 ferramentas, nenhuma que possa perguntar à pessoa (verificado em 2026-09-19)Nenhum
Integrações com provedores9 integradas (Stripe, HubSpot, Slack...)NenhumaNenhuma
Bypass de CORSbrowser_fetch do plano de fundo da extensãoN/DLimitado
Monitoramento de redebrowser_wait_for_network via CDPIntegradoNenhum
Sites com CSP estritoAPI do Chrome Debugger em todo lugarFuncionaLimitado
Menus suspensos personalizadosSuporte a Angular Material, React SelectFuncionaLimitado
Instalaçãoclaude mcp add + extensão da Chrome Web Storenpx @playwright/mcpClone manual

As páginas que derrotam todo o resto

A razão pela qual isto funciona onde headless morre não é que ela passe despercebida por algo. É que não há nada para passar despercebido: é o seu Chrome, sua sessão, seu consentimento. O que resta é a parte difícil - páginas que lutam contra qualquer automação por causa de como são construídas.

Cada release é condicionado a um teste de fluxo contra um Chrome real que precisa sobreviver exatamente a essas páginas: todas as 40 ferramentas são exercitadas, e o portão também verifica se a extensão que o Chrome está executando é a que está sendo lançada - não outra cópia com o mesmo número de versão. As falhas que aparecem são honestas: eventos de mouse não são entregues a uma aba que não está em primeiro plano, e as ferramentas dizem isso em vez de relatar sucesso. O que o teste cobre

  • CSP estrito - navegar, ler, executar, esperar e clicar ainda funcionam (recorre à API do Chrome Debugger quando a injeção de script é bloqueada)
  • iframes de origem cruzada - vistas e alcançadas internamente
  • shadow DOM - seletores alcançam através dele
  • inputs controlados - fill funciona em um campo controlado estilo React
  • verificações de honestidade - click recusa um elemento 0×0 em vez de clicar em (0,0), e diz isso quando a página nunca recebeu o evento

Limitação conhecida: trabalhar em uma aba que você não está vendo

Em uma aba que você não está vendo, o agente pode navegar, ler, capturar tela, executar scripts, clicar e preencher um campo que encontra por seletor CSS. O Chrome não entrega eventos de mouse e teclado a uma aba que não é a visível em sua janela, então pressionamentos de tecla, passar o mouse, clique duplo, clique com botão direito, cliques por coordenadas, digitação em combobox e preenchimento de um campo encontrado pelo texto falham com um erro que diz isso. O agente então chamará browser_switch_tab, que traz essa aba e sua janela para a frente de você.

Essas ferramentas medem se a página realmente recebeu o evento em vez de confiar no reconhecimento do Chrome, então uma aba em segundo plano produz uma falha honesta em vez de uma silenciosa. (Introduzido em 1.29.2 - veja CHANGELOG.md para saber em qual release você está.) Entrada de fundo totalmente sem intervenção não faz parte da versão 1.30, e não é algo que possamos corrigir: o Chrome não entrega eventos de mouse ou teclado para uma aba que não seja a visível em sua janela, e nenhum para uma janela sem o foco do sistema operacional (ambos medidos). Parte disso não pode ser resolvida de forma alguma: CSS :hover é um estado que o renderizador possui e nenhum script pode falsificá-lo, um evento despachado por script nunca é isTrusted, elementFromPoint para em um iframe de origem cruzada, e a seleção de texto que um duplo clique real faz é comportamento do navegador, não um evento.

Esse último grupo é o mais importante. Uma ferramenta que relata sucesso silenciosamente é pior do que uma que falha, porque você constrói em cima da resposta. Onde ainda ficamos aquém disso, está documentado: veja #19.

Corrigido em 2026-09-07, e novamente em 2026-09-19. Esta tabela costumava dizer que o Playwright MCP era headless e fazia você fazer login toda vez. Isso estava errado. A linha que chamávamos de "a que sobrevive" - clientes concorrentes conflitando em um perfil - também estava errada: essa limitação pertence ao modo de perfil persistente deles, e a extensão Chrome deles explicitamente dá a cada cliente conectado seu próprio grupo de abas colorido, que é o mesmo mecanismo que descrevemos em nossa própria linha. Tínhamos corrigido uma página e não o padrão. A linha que realmente sobrevive é humano-no-circuito, e é a que medimos: o README do Playwright MCP lista 40 ferramentas e nenhuma delas pode parar e pedir à pessoa um código.

Sobre o nome: o browsermcp.io de nome semelhante (@browsermcp/mcp) é um projeto diferente, não afiliado, sem commits desde abril de 2025. Este é o Browser MCP da Agent360 (@agent360/browser-mcp) - mantido ativamente. Comparação lado a lado completa →

Variáveis de ambiente

Todas as três são opcionais. Nenhuma é necessária para uso normal.

VariávelEfeito
BROWSER_MCP_CHECK_NPM=1Faz o browser_provide_feedback também comparar este servidor com a versão mais recente publicada no npm. Desativado por padrão, para que a chamada permaneça rápida e funcione offline.
BROWSER_MCP_EXTENSION_ID=<32-char id>Fixa o servidor a uma extensão Chrome específica. Use quando mais de uma cópia do Browser MCP estiver carregada e você quiser que uma determinada sessão sempre fale com a mesma.
BROWSER_MCP_TOKENRetirado na 1.30.1 e ignorado - o servidor avisa quando inicia. O pareamento foi lançado na 1.30.0, mas não manteve ninguém de fora, então foi removido em vez de deixado como proteção falsa. Voltará redesenhado.

40 Ferramentas

Navegação e Conteúdo

FerramentaDescrição
browser_navigateNavegar para URL (reutiliza a aba, ou new_tab=true)
browser_get_page_contentObter texto ou HTML da página
browser_screenshotCaptura de tela via Chrome Debugger (funciona mesmo quando a aba não está focada)
browser_execute_scriptExecutar JavaScript no contexto da página
browser_extract_listLer cada linha de uma lista longa/virtualizada rolando o contêiner até que nenhuma nova linha apareça

Interação

FerramentaDescrição
browser_clickClicar via seletor CSS ou texto (text=Submit, button:text(Next))
browser_fillPreencher campos de entrada (funciona em sites com CSP estrito)
browser_press_keyEventos de teclado (Enter, Tab, Escape, modificadores)
browser_scrollRolar até elemento ou por pixels
browser_waitAguardar o elemento aparecer
browser_hoverPassar o mouse para tooltips/dropdowns
browser_select_option<select> nativo + dropdowns personalizados (Angular Material, React Select)
browser_set_comboboxAutocompletar/combobox: digitar consulta → aguardar listbox filtrada → clicar na opção (suporte a chips de múltiplos valores). Use quando browser_select_option falhar em opções renderizadas lentamente
browser_set_dateEntradas de data robustas: tenta definição de valor nativo → digitação mascarada → navegação no seletor de calendário (MUI/AntD/react-datepicker/Lexical). Use quando browser_fill falhar em campos de data
browser_dismiss_overlaysDispensar em massa popups/modais/tooltips/banners via heurísticas de aria-label/texto/caractere ×. O modo non_critical preserva diálogos com dados de formulário
browser_handle_dialogAceitar/dispensar diálogos nativos de alerta/confirmação/prompt
browser_double_clickDuplo clique verdadeiro (dois pares confiáveis de pressionar/soltar)
browser_right_clickClique direito para abrir menus de contexto no nível da página
browser_click_xySaída de emergência: clicar em coordenadas brutas da viewport (pixels CSS) com eventos de mouse confiáveis
browser_reattach_debuggerRecuperação: forçar desconexão e reconexão do Chrome debugger na aba atual

Abas e Frames

FerramentaDescrição
browser_list_tabsListar apenas as abas da sessão
browser_switch_tabAlternar para aba por ID
browser_close_tabFechar aba (somente de propriedade da sessão)
browser_get_new_tabObter a aba aberta mais recentemente (popups OAuth)
browser_list_framesListar iframes na página
browser_select_frameExecutar JS em iframe específico

Dados e Rede

FerramentaDescrição
browser_fetchRequisição HTTP da extensão (ignora CORS)
browser_wait_for_networkAguardar chamada de API específica ser concluída
browser_extract_tokenNavegar para o painel do provedor + extrair token de API

Resolução de CAPTCHA

FerramentaDescrição
browser_solve_captchaDetectar e resolver CAPTCHAs. Detecta automaticamente reCAPTCHA v2/v3, hCaptcha, Turnstile, FunCaptcha. Ações: detect, click_checkbox (clique automático, frequentemente passa quando conectado ao Google), click_grid (guiado por visão de IA), ask_human (fallback)

Humano-no-Circuito

FerramentaDescrição
browser_ask_userMostrar diálogo sobreposto para 2FA, CAPTCHA, credenciais ou qualquer entrada do usuário

Dados

FerramentaDescrição
browser_get_cookiesObter cookies de um site que esta sessão tem aberto
browser_set_cookiesDefinir cookies para um domínio
browser_get_local_storageLer localStorage da página
browser_set_local_storageEscrever valores no localStorage
browser_console_logsCapturar mensagens de console.log/warn/error da página
browser_upload_fileEnviar arquivos para <input type="file"> via Chrome Debugger API (sem diálogo)
browser_drop_fileEnvio via zonas de arrastar e soltar: encontra <input type="file"> oculto na subárvore/pai do alvo (até 2 níveis). Use quando browser_upload_file falhar porque a zona não tem entrada visível

Diagnóstico e feedback

FerramentaDescrição
browser_provide_feedbackAutoverificação + relatório em uma chamada. Compara este servidor com o mais recente no npm, a extensão conectada com este servidor, e detecta mais de uma extensão Browser MCP conectada ao mesmo tempo - as três coisas que explicam a maioria dos momentos de "simplesmente parou de funcionar". Retorna um veredito (current / outdated / conflict / disconnected), etapas concretas de correção e um link de issue pré-preenchido para o que estiver genuinamente faltando. Seu agente o chama por conta própria sempre que uma ferramenta o bloqueia
browser_aboutInformações do projeto + links pré-preenchidos para enviar um desejo, caso de uso ou bug

Suporte a Múltiplas Sessões

Cada conversa do Claude Code recebe seu próprio servidor MCP em uma porta única (9876-9895). A extensão Chrome conecta-se a todos os servidores ativos simultaneamente.

Precisa de mais de 20 ao mesmo tempo? O intervalo é uma configuração, não um limite rígido, mas ambas as partes precisam concordar. Defina BROWSER_MCP_MAX_PORT na configuração MCP de cada chat, defina bmcpPorte para o mesmo intervalo no armazenamento da extensão, e recarregue a extensão: ela lê o intervalo apenas quando inicia. Altere apenas o lado do servidor e o chat 21 vincula uma porta que a extensão nunca observa, então o navegador fica silencioso nesse chat sem nada para explicar. 100 é suficiente; o limite rígido é 200. Cada porta extra custa ao seu navegador uma conexão recusada a cada dois segundos, use ou não, então não alargue por diversão.

Claude Session 1 ←(stdio)→ MCP :9876 ←(WS)→
Claude Session 2 ←(stdio)→ MCP :9877 ←(WS)→  Chrome Extension → Browser
Claude Session 3 ←(stdio)→ MCP :9878 ←(WS)→
  • Isolamento de sessão - cada sessão recebe um Grupo de Abas Chrome codificado por cor
  • Propriedade de abas - sessões só podem ver e controlar suas próprias abas
  • Limpeza automática - processos saem quando o Claude Code fecha a conversa
  • Portas são ocupadas sob demanda - um servidor vincula sua porta na primeira chamada do navegador, não na inicialização, e a libera 5 minutos após sua última aba fechar. Um chat que nunca toca no navegador nunca ocupa um slot.

Executando o agente em outra máquina

A extensão só conecta a 127.0.0.1, deliberadamente - ela não falará com um WebSocket remoto. Se seu gateway MCP roda em uma máquina diferente do seu navegador, encaminhe o intervalo de portas via SSH.

Receita abaixo contribuída por @bkuri, que encontrou exatamente isso e resolveu. Linux + systemd; precisa de autossh localmente e sua chave pública já no servidor:

# ~/.config/systemd/user/browser-mcp-tunnel.service
[Unit]
Description=SSH tunnel for browser-mcp WebSocket (ports 9876-9895)
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
ExecStart=/bin/sh -c '/usr/bin/autossh -M 0 -N \
  -o ServerAliveInterval=30 -o ServerAliveCountMax=3 \
  -o ExitOnForwardFailure=yes -o LogLevel=ERROR \
  $(for p in $(seq 9876 9895); do printf " -L %s:127.0.0.1:%s" "$p" "$p"; done) \
  server-name'
Restart=on-failure
RestartSec=5
Environment="AUTOSSH_GATETIME=0"

[Install]
WantedBy=default.target

Substitua server-name, então systemctl --user enable --now browser-mcp-tunnel.service.

A receita original listava as portas 9876-9885 manualmente - o intervalo era dez naquela época. Agora é vinte, então o loop acima as gera em vez de codificar uma lista que fica desatualizada na próxima vez que o intervalo mudar.

Integrações de Provedores Integradas

browser_extract_token navega para a página de configurações de API do provedor e orienta a extração de token:

ProvedorFormato do TokenPainel
Stripesk_test_... / sk_live_...stripe.com/apikeys
HubSpotpat-...app.hubspot.com
Slackxoxb-...api.slack.com/apps
ShopifyToken de API Adminadmin.shopify.com
PipedriveUUIDapp.pipedrive.com
CalendlyJWTcalendly.com
Mailchimp...-us1admin.mailchimp.com
GoogleCliente OAuthconsole.cloud.google.com
LinkedInID/Secret do Clientelinkedin.com/developers

Arquitetura

extension/
  manifest.json       # Manifest V3
  background.js       # Service worker - Chrome API dispatcher, session tab groups
  offscreen.js        # Persistent WebSocket bridge (multi-port scanning)
  popup.html/js       # Status UI - sessions, tabs, action log

mcp-server/
  index.js            # MCP server (stdio) + WebSocket client
  tools.js            # 40 tool definitions
  bin/cli.js          # Install CLI

Como Funciona

  1. Claude Code inicia → gera servidor MCP via stdio
  2. Servidor MCP vincula à primeira porta disponível (9876-9895)
  3. Documento fora da tela da extensão escaneia portas a cada 2s
  4. Conexão WebSocket estabelecida
  5. Comandos fluem: Claude Code → MCP → Extensão → APIs Chrome
  6. Processo sai automaticamente quando o Claude Code fecha (detecção de stdin)

Mantendo atualizado

O Browser MCP tem duas partes, e elas atualizam independentemente - como a extensão atualiza depende de como você a instalou:

ParteMétodo de instalaçãoComo atualiza
Servidor MCPqualquerAutomático. Roda via npx @agent360/browser-mcp@latest, então cada sessão do Claude Code puxa o mais novo do npm. Nada a fazer.
ExtensãoChrome Web StoreAutomático, mas não imediato. Uma nova versão primeiro precisa passar pela revisão do Google, que geralmente leva 1-3 dias; o Chrome então a pega em segundo plano dentro de horas. Nada a fazer, mas uma correção publicada hoje não chega até você hoje.
ExtensãoDescompactada (npx … install ou zip manual)Manual. O Chrome nunca atualiza automaticamente uma extensão carregada descompactada. Execute novamente npx @agent360/browser-mcp install, depois abra chrome://extensions → Browser MCP → ↻ recarregar.

Não sabe qual você tem? Abra chrome://extensions e encontre o Browser MCP. Se mostrar uma linha "Carregado de /caminho/…", está descompactada (atualizações manuais). Se não houver tal linha, veio da Chrome Web Store (atualizações automáticas).

Quer atualizações sem manutenção? Instale a extensão da Chrome Web Store, depois execute claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latest para registrar o servidor. Depois disso, ambas as partes permanecem atualizadas por conta própria - desde que sua configuração use @agent360/browser-mcp@latest.

Solução de Problemas

"Extensão Chrome não conectada"

  • Verifique se a extensão está carregada em chrome://extensions
  • Clique no popup da extensão → "Reconectar"
  • Aguarde 2-3 segundos para a varredura de portas

Captura de tela falha

  • Usa a Chrome Debugger API para a aba própria da sua sessão (funciona mesmo quando a aba não está focada)
  • Desde a 1.29.1 não há fallback que capture qualquer aba que esteja visível: se o debugger não puder produzir um frame, a chamada falha. (1.29.0 e anteriores podiam cair para a aba visível.) Execute browser_reattach_debugger e tente novamente

Clique não funciona em SPA

  • Tente seletor de texto: browser_click("text=Submit")
  • Usa eventos reais de mouse via Chrome Debugger API automaticamente

Processos obsoletos

  • Os processos saem automaticamente quando o Claude Code é fechado (detecção de stdin)
  • Tempo limite de inatividade: 4 horas sem comandos → saída automática
  • Limpeza manual: lsof -i :9876-9895 | grep LISTEN

💡 Ajude a moldar o Browser MCP

O Browser MCP é construído de forma aberta e moldado pelas pessoas que o utilizam.

Veja o que outros desejam / construíram

  • 💡 Lista de desejos → - recursos que as pessoas estão pedindo
  • 🎯 Casos de uso → - o que outros construíram (raspagem de ICP no LinkedIn, pesquisa de fornecedores, operações diárias, …)

Contribua em 30 segundos

Ou apenas pergunte ao Claude - ele conhece a ferramenta browser_about e redigirá + enviará em seu nome quando você disser coisas como "eu gostaria que o browser-mcp pudesse …" ou "compartilhe meu caso de uso do browser-mcp".

Se funcionar para você

A Chrome Web Store classifica com base nas avaliações, e nós não temos nenhuma - então uma frase sua move isso mais do que qualquer coisa que possamos escrever. Deixe uma avaliação se mereceu uma, e diga honestamente se não mereceu. Sem cadastro, sem recompensa, nada bloqueado por trás disso - simplesmente não temos nenhum sinal agora.

A mesma ideia, para o resto do seu Mac

Isso controla seu navegador. O Computer MCP controla tudo o resto no macOS - menus, janelas, o Dock, a árvore de acessibilidade de qualquer aplicativo - com a mesma postura: campos de senha são ocultados na memória antes de uma captura de tela ser gravada, gravações passam por um portal de consentimento, e cada ação é registrada em um log somente de acréscimo. Ele roda em segundo plano por padrão: as ferramentas que poderiam assumir o controle da sua tela não são oferecidas a menos que você as solicite.

npx @agent360/computer-mcp · MIT · macOS.

Privacidade

O objetivo desta ferramenta é que sua navegação permaneça no seu navegador. Não há conta nem servidor nosso entre você e a página.

  • Conteúdo da página - o que uma ferramenta lê de uma aba vai para o cliente MCP que você configurou, e para nenhum outro lugar. Nunca vemos isso.
  • Cookies, armazenamento local e tokens não são copiados para nenhum lugar por padrão, e o servidor não mantém nenhum armazenamento próprio - mas eles são acessíveis. Três ferramentas os leem diretamente (browser_get_cookies, browser_get_local_storage, browser_extract_token), duas outras os gravam (browser_set_cookies, browser_set_local_storage), e três outras podem chegar aos mesmos dados de outra forma: browser_execute_script roda na página e pode ler document.cookie, e browser_get_page_content e browser_extract_list carregarão um token que a própria página coloca no DOM. Quando qualquer uma delas roda, esse valor vai para seu cliente MCP como qualquer outro resultado de ferramenta. Para nenhum outro lugar, e nunca para nós.
  • Não coletamos nada. Sem identificadores, sem contagens de uso, sem relatórios de falhas, sem análises na extensão ou no site.
  • Tudo o que o servidor faz roda em localhost entre a extensão e o cliente MCP na mesma máquina. Essa ponte é local e não autenticada: outro programa rodando como você na mesma máquina pode se conectar a ela. O Browser MCP não protege você de software que você já executa.

Política completa: https://browsermcp.dev/privacy

Licença

MIT - Agent360