Skip to main content

Visão geral

O Agent Bridge permite que agentes de IA (Claude Code, Cursor, Cowork, etc.) controlem remotamente a extensão do Chrome do Web2MD para converter URLs em lote — especialmente Reddit, páginas renderizadas por JS e páginas protegidas por login que bloqueiam o acesso via API no servidor. Em vez de chamar a API do Web2MD (que o Reddit bloqueia), o agente de IA envia comandos para a sua extensão local do Chrome via Native Messaging. A extensão abre cada página em uma aba em segundo plano usando sua sessão real do navegador — com seus cookies e estado de login — extrai o conteúdo, converte em Markdown e retorna o resultado.
O Agent Bridge requer um plano PRO e o host de native messaging instalado na sua máquina. A extensão precisa estar aberta no Chrome.

Arquitetura

Toda a comunicação é local — nada sai da sua máquina. O Native Host escuta apenas em localhost:12315.

Configuração

Passo 1: Compilar o MCP Server

Passo 2: Instalar o Native Messaging Host

Encontre seu Extension ID em chrome://extensions com o Modo de Desenvolvedor ativado. Procure por Web2MD e copie a string do ID (ex.: ijmgpkkfgpijifldbjafjiapehppcbcn).
Depois da instalação, você precisa fechar completamente o Chrome (Cmd+Q no Mac) e reabri-lo. O Chrome só lê os manifestos de Native Messaging na inicialização — recarregar a extensão não é suficiente.
O script de instalação:
  • Copia os arquivos do host para ~/.web2md/ (evita restrições do TCC do macOS em ~/Desktop)
  • Resolve o caminho absoluto do node (o Chrome inicia com um PATH mínimo)
  • Escreve o manifesto NM no diretório NativeMessagingHosts do Chrome

Passo 3: Configurar o MCP

Adicione a ~/.claude/settings.json:

Passo 4: Verificar

No Chrome, abra chrome://extensions → clique no link “Service Worker” do Web2MD → confira o Console:
Se você vir essas três linhas, o Agent Bridge está funcionando.

Ferramentas disponíveis

O Agent Bridge expõe três ferramentas MCP — escolha com base no transporte e na necessidade de processamento em lote. As três são documentadas por completo na página do MCP Server; aqui está a comparação rápida.

agent_convert

Converte uma única URL usando a extensão do Chrome via native messaging. Retorna: Conteúdo em Markdown com título, URL de origem, contagem de palavras e tempo de leitura. Ideal para: Threads do Reddit, páginas protegidas por login, sites renderizados por JS.

agent_batch_convert

Converte em lote até 50 URLs. As URLs são processadas sequencialmente — a extensão abre cada página em uma aba em segundo plano, extrai o conteúdo, fecha a aba, e passa para a próxima. Retorna: Resultados por URL transmitidos conforme são concluídos, além de um resumo. Ideal para: Fluxos de pesquisa — converter em lote threads do Reddit, discussões do HN, ou páginas de concorrentes para análise por IA.

bridge_convert_url

Converte uma única URL buscando seu HTML através da extensão via uma ponte HTTP local (em vez de native messaging), depois convertendo no servidor. Funcionalmente similar a agent_convert para conversões pontuais, mas não requer o host de native messaging — apenas a extensão precisa estar instalada e em execução.
Todas as conversões bem-sucedidas são salvas automaticamente no Histórico do Dashboard, com resumos e tags gerados por IA.

Exemplos de uso

Você: Convert this Reddit thread to Markdown: https://www.reddit.com/r/LangChain/comments/1siwh6q/Agente: (chama agent_convert) Aqui está a thread convertida com 7 comentários discutindo a precisão de RAG para documentos jurídicos…
Você: Batch convert these 5 Reddit URLs and summarize the key takeaways:Agente: (chama agent_batch_convert) 5/5 URLs convertidas com sucesso. Aqui estão os principais destaques…
Você: Convert my company’s internal wiki page at https://wiki.internal.com/architectureAgente: (chama agent_convert) Como você está logado nesse site no Chrome, consegui extrair o conteúdo completo…

Sites suportados

O Agent Bridge usa os mesmos 27 extratores específicos por site que a extensão — cada um sabe como extrair conteúdo limpo do DOM ou da API de um site, em vez de recorrer ao HTML bruto da página.
Reddit · Hacker News · Twitter/X · Quora · Xiaohongshu (小红书) · Zhihu (知乎) · Instagram
Conversas do Claude · Outras plataformas de chat de IA (ChatGPT, Gemini, etc. via um extrator de DOM compartilhado)
Wikipedia · arXiv · OpenAI Docs · Sites de documentação baseados em Mintlify · Notion · Google Docs
GitHub Issues/PRs · Stack Overflow · dev.to
Medium · Substack · Product Hunt
WeChat (微信公众号) · Bilibili (哔哩哔哩) · Feishu (飞书) — além de Xiaohongshu e Zhihu acima. O código marca essa categoria inteira como seu grupo de extratores de maior diferenciação — poucos concorrentes lidam com essas plataformas.
YouTube (extração de transcrição)
Gmail · LinkedIn · Amazon (páginas de produto) · Canvas LMS · fóruns XenForo
Qualquer URL sem um extrator dedicado recorre à extração da página HTML completa — ainda funciona, apenas sem a limpeza específica do site (remoção de menus de navegação, anúncios, widgets de comentários, etc.) que os extratores especializados aplicam. Sites que expõem uma API pública (Reddit, Hacker News, GitHub, Stack Overflow) são buscados via essa API quando possível — mais rápido e confiável do que abrir uma aba em segundo plano. Todo o resto abre a página em uma aba em segundo plano e extrai do DOM renderizado.

Solução de problemas

O Chrome não carregou o manifesto NM. Feche completamente o Chrome (Cmd+Q) e reabra. Apenas recarregar a extensão não é suficiente.
O Chrome não consegue executar o script do host. Causas comuns:
  • node não encontrado — execute novamente ./install.sh, que usa o caminho absoluto do node
  • O host está em um diretório protegido pelo TCC (~/Desktop, ~/Documents) — execute a instalação novamente para mover para ~/.web2md/
O servidor TCP do Native Host não está em execução. Verifique se:
  1. O Chrome está aberto
  2. A extensão do Web2MD está carregada
  3. O console do Service Worker mostra “TCP relay ready on port 12315”
A extensão não está logada. Abra o popup do Web2MD no Chrome e faça login na sua conta PRO.
A página de destino demora demais para carregar. Isso é normal em sites lentos. A extensão espera até 15 segundos por aba. O Reddit usa o extrator da API JSON e não precisa de uma aba, então timeouts no Reddit geralmente significam que a URL do post é inválida (404).
Salvar no histórico requer que a extensão esteja logada com uma conta PRO. O salvamento é fire-and-forget — se a chamada de API falhar silenciosamente, as conversões não aparecerão. Verifique se seu token de autenticação é válido.

Diferenças em relação ao MCP Server

Regra prática: Use convert_url para páginas públicas. Use bridge_convert_url quando quiser a sessão do navegador da extensão, mas não quiser instalar o host de native messaging. Use agent_convert / agent_batch_convert para Reddit, páginas autenticadas, sites pesados em JS, ou quando precisar processar em lote — ou quiser aplicar uma Skill via o parâmetro skill de agent_convert.