Você está debugando um dashboard interno. Login com SSO, 2FA, três abas abertas com dados filtrados. Aí pede pro agente ajudar. Ele abre um Chrome limpo — sem login, sem cookies, sem contexto. Você tem que explicar tudo do zero.
O Chrome DevTools MCP resolve isso. Seu agente entra no Chrome que você já está usando — com suas abas, seus logins, suas extensões. Sem re-autenticação, sem perda de contexto.
O recurso é nativo do Chrome 144+ (Beta até virar stable). O Google lançou o servidor MCP (Model Context Protocol — protocolo que conecta agentes a ferramentas externas) que expõe o DevTools como ferramentas para agentes de IA. Este post mostra como configurar no OpenClaw.
TL;DR
| Item | Detalhe |
|---|---|
| Requisito | Chrome 144+ (Beta até virar stable) |
| Ativar no Chrome | chrome://inspect/#remote-debugging |
| Config no OpenClaw | driver: "existing-session" |
| Ferramentas | 29 (automação, rede, performance, debug) |
| Segurança | Sessão real — agente vê cookies e logins |
O que é o Chrome DevTools MCP
MCP é o Model Context Protocol — um protocolo aberto que conecta agentes de IA a ferramentas externas. Em vez de cada agente implementar integração customizada, o MCP define um contrato padronizado. O agente descobre as ferramentas disponíveis e chama elas sem código específico.
O servidor chrome-devtools-mcp do Google (repositório ChromeDevTools/chrome-devtools-mcp) expõe o DevTools como ferramentas MCP. São 29 ferramentas em 6 grupos:
| Grupo | Ferramentas | Exemplo |
|---|---|---|
| Automação de input | 9 | click, fill, drag, upload |
| Navegação | 6 | tabs, navigate, wait |
| Emulação | 2 | mobile, resize |
| Performance | 4 | trace, memory snapshot |
| Rede | 2 | requests, headers |
| Debug | 6 | console, screenshot, Lighthouse |
O diferencial: o agente vê o Chrome real, não um browser isolado. Reusa login, cookies, extensões. Não precisa de extensão — é nativo do Chrome.
Por que usar a sessão existente
Considere três cenários onde isso muda o fluxo de trabalho.
Você está logado num dashboard interno com filtros aplicados e dados na tela. O agente entra na mesma aba e inspeciona o DOM, lê o console, tira screenshot — sem precisar reproduzir o estado inteiro.
Você acha um bug no Network panel enquanto testa manualmente. Em vez de copiar headers e colar num prompt, você delega pro agente investigar ali mesmo. Ele vê os mesmos requests, os mesmos responses, os mesmos cookies.
Você precisa rodar um Lighthouse audit no painel de admin — que requer login, 2FA e cookies de sessão. Sem o modo existing-session, você teria que automatizar o fluxo de login inteiro. Com ele, o agente roda o audit direto na aba autenticada.
Como configurar no OpenClaw
Primeiro, verifique a versão do Chrome. Abra chrome://version e confirme que é 144 ou superior. Se for menor, instale o canal Beta em google.com/chrome/beta.
Segundo, ative remote debugging. Abra chrome://inspect/#remote-debugging e ative a opção. O banner “Chrome is being controlled by automated test software” confirma que funcionou.
Terceiro, edite o openclaw.json:
{
browser: {
enabled: true,
defaultProfile: "user",
profiles: {
user: {
// Usa o Chrome DevTools MCP (não CDP direto)
driver: "existing-session",
// Nunca abre browser próprio — só conecta ao que já está rodando
attachOnly: true,
}
}
}
}
O campo driver: "existing-session" diz ao OpenClaw para usar o Chrome DevTools MCP por baixo. O attachOnly: true garante que o agente nunca abre um browser separado — só conecta ao Chrome que você já está usando.
Quarto, teste a conexão:
openclaw browser --browser-profile user start
openclaw browser --browser-profile user status
openclaw browser --browser-profile user tabs
No status, espere: driver: existing-session, transport: chrome-mcp, running: true. O comando tabs lista as abas abertas no seu Chrome — se aparecerem, funcionou.
O que o agente consegue fazer
Não é uma lista exaustiva, mas são os casos de uso mais práticos.
Screenshot de uma aba específica. O agente captura o estado visual de qualquer aba. Serve para documentar bugs, registrar estado antes/depois de uma mudança, ou gerar evidência para um relatório.
Listar requests de rede. Em vez de abrir o DevTools manualmente e filtrar o Network panel, peça ao agente. Ele retorna URLs, status codes, headers e tempos de resposta.
Rodar Lighthouse. Audit de performance, acessibilidade e SEO direto numa página autenticada. Sem o modo existing-session, páginas atrás de login ficam inacessíveis para o Lighthouse automatizado.
Preencher formulário. A ferramenta fill_form preenche inputs por seletor CSS. Serve para automação de inputs repetitivos — cadastros internos, formulários de teste, campos de busca.
Avaliar JavaScript. A ferramenta evaluate_script roda expressões no console da página. Útil para inspecionar variáveis, testar seletores, ou extrair dados do DOM sem navegar pelo DevTools.
Limitações: PDF export, download interception e wait --load networkidle ainda não funcionam no modo existing-session. Snapshot de páginas privilegiadas (chrome://, about:) retorna vazio.
Segurança
Sessão real significa risco real. O agente vê tudo que o Chrome vê — cookies, tokens de sessão, dados autenticados. Se você está logado no banco, o agente também está. Se você tem uma aba aberta com e-mail pessoal, o agente pode ler o conteúdo.
Use o modo existing-session apenas quando você está presente. O Chrome exige aprovação manual a cada nova conexão MCP — um prompt de consentimento aparece na tela. Isso é intencional: garante que ninguém conecta ao seu browser sem você ver.
Antes de conectar o agente, feche abas que não precisa expor. Banco, e-mail pessoal, admin de produção com dados sensíveis — tudo isso fica visível. Para automações desacompanhadas (cron, heartbeat, scraping), use o perfil isolado openclaw no OpenClaw — ele roda num Chrome separado sem acesso às suas sessões.
| Aspecto | Sessão existente | Perfil isolado (openclaw) |
|---|---|---|
| Login | Reusa o seu | Perfil separado |
| Presença | Você precisa estar presente | Roda sozinho |
| Risco | Alto (dados reais) | Baixo (sandbox) |
| Uso ideal | Debug, inspeção, audit | Automação, scraping, testes |
Troubleshooting
“Attachment failed”
Chrome abaixo de 144, remote debugging desativado, ou prompt de consentimento não aprovado. Verifique chrome://version e reabra chrome://inspect/#remote-debugging.
“No tabs found”
Chrome não está rodando ou remote debugging foi desativado após a ativação. Reabra chrome://inspect/#remote-debugging e confirme que a opção está ativa.
Snapshot retorna vazio
A aba está numa página privilegiada (chrome://, about:, chrome-extension://). Mude para uma aba com conteúdo web normal.
Latência alta nos comandos
Muitas abas abertas aumentam o overhead do DevTools Protocol. Feche abas que não precisa antes de conectar. 30+ abas é o ponto onde fica perceptível.
Próximo passo
- 5 automações do OpenClaw que economizam 2 horas por dia — agora com browser automation, essas automações ganham alcance
- Mission Control: dashboard de controle do OpenClaw — resultados de automação browser podem alimentar seu painel
- Segurança e privacidade no OpenClaw — regras de segurança que se aplicam ao modo browser
- Glossário de termos — MCP, CDP e outros termos técnicos explicados