YetiBrowser MCP
oficialYetiBrowser MCP é uma solução totalmente open-source que permite que assistentes de IA interajam facilmente com seu
O que você pode fazer com Yeti Browser MCP?
- Navegar e capturar snapshots da página — peça ao assistente para carregar uma URL com
browser_navigatee retornar um snapshot de acessibilidade da página resultante. - Preencher e enviar formulários web — use
browser_fill_formoubrowser_typepara preencher vários campos e, opcionalmente, enviar o formulário. - Inspecionar saída do console e estado da página — recupere erros, logs, dados de formulários, cookies e chaves de armazenamento via
browser_get_console_logsebrowser_page_state. - Executar JavaScript personalizado na página — execute scripts arbitrários com
browser_evaluatee obtenha resultados serializáveis em JSON para depuração ou extração de dados. - Capturar screenshots — tire screenshots da viewport ou da página inteira usando
browser_screenshotpara verificação visual ou fluxos de QA.
Documentação
[!IMPORTANT] Este projeto foi arquivado. Ele foi criado para suprir a falta de controle de navegador em agentes de IA como Claude e Codex, mas agora os agentes já possuem essas funções integradas, sem necessidade de uma solução dedicada baseada em MCP.
YetiBrowser MCP
YetiBrowser MCP é uma implementação totalmente open-source do fluxo de trabalho Browser MCP. Ele conecta um servidor MCP baseado em Node com extensões para Chrome/Firefox, permitindo que clientes do Model Context Protocol — Codex/Claude Code, Cursor, Windsurf, MCP Inspector ou suas próprias ferramentas — possam automatizar uma aba real do navegador, mantendo cada byte na sua máquina e auditável.
Por que escolher o YetiBrowser MCP?
- Transparente e customizável – sem downloads de blobs. Inspecione, faça fork e estenda cada componente.
- Prioridade local – a extensão se comunica apenas com um servidor MCP em localhost; os dados de navegação nunca saem do seu dispositivo.
- Multi-navegador – lógica compartilhada alimenta pacotes para Chrome e Firefox (a versão para Firefox está pendente de melhor suporte ao Manifest V3, então a experiência de conexão pode ser limitada até que a Mozilla disponibilize as APIs MV3 completas).
- Ferramental focado em desenvolvimento – captura de console mais rica, comparação de DOM, despejos de estado da página e capturas de tela de página inteira, criados para depuração e QA.
- Pronto para produção – scripts e documentação para empacotamento, publicação e integração com fluxos de trabalho de IDEs.
Layout do repositório
packages/shared– definições TypeScript compartilhadas para mensagens e esquemas de ferramentas.packages/server– o servidor MCP que conecta clientes MCP a uma aba do navegador em execução.extensions/shared– código-fonte compartilhado da extensão (background/popup) e recursos.extensions/chrome/extensions/firefox– camadas de empacotamento por navegador.docs/– comandos do workspace, checklists de publicação e notas de funcionalidades.scripts/– utilitários auxiliares, comopackage-extensions.shpara zips de lançamento.
Ferramentas MCP Disponíveis
browser_snapshot– captura um snapshot orientado à acessibilidade da página atualbrowser_snapshot_diff– compara os dois snapshots mais recentes para destacar mudanças no DOM/ARIAbrowser_navigate– carrega uma nova URL na aba conectada e retorna um snapshot atualizadobrowser_go_back/browser_go_forward– navega pelo histórico mantendo o MCP sincronizadobrowser_wait– pausa a automação por um número definido de segundosbrowser_wait_for– bloqueia até que um seletor apareça (opcionalmente visível) antes de prosseguirbrowser_press_key– simula o pressionamento de uma tecla no elemento focadobrowser_click– clica no elemento identificado por um seletor CSSbrowser_hover– passa o ponteiro do mouse sobre o elemento alvobrowser_drag– arrasta um elemento para um alvo de soltura, para UIs ordenáveis/drag-and-dropbrowser_type– digita texto (opcionalmente enviando com Enter) em um elemento editávelbrowser_fill_form– preenche múltiplos inputs/selects/checkboxes/radios em uma única chamadabrowser_select_option– escolhe uma ou mais opções em um elemento<select>browser_screenshot– captura uma tela da viewport ou da página inteira via protocolo DevToolsbrowser_get_console_logs– retorna a saída recente do console, incluindo erros com stack tracesbrowser_page_state– despeja formulários, chaves de armazenamento e cookies da página conectadabrowser_connection_info– reporta a porta WebSocket da ponte, status da conexão e versão da extensãobrowser_evaluate– executa JavaScript personalizado dentro da página e retorna resultados serializáveis em JSONbrowser_handle_dialog– aceita ou dispensa diálogosalert/confirm/promptcom texto de prompt opcional
Instalação da Extensão do Navegador MCP
Navegador Chrome
- Instale a extensão mais recente para o Chrome aqui: https://chromewebstore.google.com/detail/hpedknkjljpopinabjjmljgckhlancni?utm_source=item-share-cb
- Deixe no modo de conexão Automático, a menos que esteja executando múltiplas instâncias do YetiBrowser MCP Server
Navegador Firefox (não disponível atualmente)
- Devido às capacidades limitadas do Manifest v3 na versão estável do Firefox, a extensão para Firefox está suspensa até que o suporte completo esteja comumente disponível (fora das compilações Nightly).
Instalação do Servidor MCP
Codex CLI
- Edite seu ~/.codex/config.toml e adicione a entrada MCP:
[mcp_servers.yetibrowser-mcp] command = "npx" args = ["-y", "@yetidevworks/server"] - Reinicie o comando
codexCLI; você deve veryetibrowser-mcplistado nas ferramentas/mcp. - Se quiser fornecer uma porta específica, use este formato para a entrada args:
args = ["-y", "@yetidevworks/server", "--ws-port", "9010"]
Claude Code
- Certifique-se de que a extensão está instalada e conectada a uma aba, então inicie o servidor MCP com
npx -y @yetidevworks/server(ou execute o CLI compilado localmente). - Adicione a entrada do servidor em
~/Library/Application Support/Claude/claude_desktop_config.json(veja o exemplo emdocs/publishing.md). - Reinicie
claudepara que ele detecte o novo servidor MCP; você deve veryetibrowser-mcplistado no menu de ferramentas/mcpassim que a extensão se conectar.
Outros clientes compatíveis com MCP
- Qualquer cliente MCP pode se conectar iniciando o CLI (
npx -y @yetidevworks/server) ou, opcionalmente, fornecendo uma porta específica, ex.:npx -y @yetidevworks/server --ws-port 9010. - O servidor expõe o transporte MCP padrão via stdio, então use qualquer mecanismo de configuração que seu cliente suporte para executar o comando acima quando uma aba estiver conectada.
MCP Inspector
- Para testes e depuração fora de um agente de codificação.
npx @modelcontextprotocol/inspector npx -y @yetidevworks/server -- --ws-port 9010para executar e inspecionar o servidor MCP em conjunto com a extensão do navegador YetiBrowser MCP.
Solução de Problemas
- O CLI percorre as portas
9010-9020até encontrar uma livre, registrandoswitched toquando avança. Passe--ws-port <port>se quiser fixar uma porta específica. - O popup da extensão do navegador reflete esse comportamento: deixe em “Automático” para rastrear a porta do CLI, ou escolha “Manual” e insira a porta reportada por
browser_connection_info/ log do CLI para sobrescrevê-la. - Simplesmente pergunte à sua ferramenta de IA sobre a porta de conexão. Por exemplo:
what is the yetibrowser mcp connction info?, então defina a porta manual como a porta reportada.
Documentação & scripts de build
- Comandos do workspace estão em
docs/workspace-commands.md. - Passos de publicação (npm + lojas de extensões) estão em
docs/publishing.md. - O comportamento da captura de tela está documentado em
docs/screenshot.md. - Gere zips distribuíveis para Chrome/Firefox com
./scripts/package-extensions.sh(saída emartifacts/). - Uma política de privacidade em nível de repositório está disponível em
PRIVACY.md.