
A pesquisa web do Claude Code não funciona? Não está sozinho. Entre recusas de permissão, resultados como “Did 0 searches” e falhas silenciosas, a ferramenta WebSearch integrada da Anthropic tem sido uma fonte persistente de frustração para programadores. Este guia cobre as quatro causas mais comuns — e a solução para cada uma, incluindo a alternativa que nunca falha.
Porque é que a Web Search do Claude Code falha
A ferramenta WebSearch nativa do Claude Code (web_search) está integrada no próprio modelo Claude — não é uma integração externa. Isso significa que, quando falha, o problema acontece dentro da camada de raciocínio do Claude, o que torna a depuração mais difícil do que numa falha normal de ferramenta.
Os quatro modos de falha mais comuns:
| Problema | O que vê | Causa raiz |
|---|---|---|
| Permission denied | Janela “Permission denied”, mesmo em modo --permissionless |
Conflito no settings.json ou override de Edit(*) |
| Falha silenciosa | “Did 0 searches” sem resultados | Bug de API ou pedido malformado com blocked_domains: [] |
| Ferramenta em falta | Ferramenta web_search não encontrada / erro 422 |
Incompatibilidade de versão do modelo ou da API |
| Ferramenta errada usada | O Claude tenta usar o Chrome connector ou web_fetch em vez disso |
Problema de routing do modelo |
Nada disto é culpa sua. São bugs documentados — alguns estão abertos no GitHub há meses.
Solução 1: Verifique a configuração de permissões
Problema mais comum: o bloco permissions no seu settings.json está a bloquear a WebSearch sem se aperceber.
Passo 1: Encontre o seu ficheiro de definições
cat ~/.claude/settings.json
Passo 2: Procure estes padrões
Problemático — Edit(*) bloqueia a WebSearch:
{
"permissions": {
"allow": ["Edit(*)"],
"deny": []
}
}
O wildcard Edit(*) na lista allow pode fazer o Claude Code pedir permissão em cada chamada de WebSearch — e, em algumas versões, negá-la silenciosamente.
Solução:
{
"permissions": {
"allow": [
"Edit(*)",
"WebSearch(*)",
"WebFetch(*)"
],
"deny": []
}
}
Passo 3: Verifique regras de deny em conflito
Se tiver WebSearch(**) ou WebFetch(**) no bloco deny, remova:
// ❌ Isto bloqueia a pesquisa web E quebra o carregamento de plugins
{
"permissions": {
"deny": ["WebSearch(**)", "WebFetch(**)"]
}
}
Bug conhecido no GitHub (#11812): adicionar WebFetch/WebSearch a permissions.deny faz com que todos os plugins falhem ao carregar. Se os seus plugins deixaram de funcionar após alterar as definições, este é provavelmente o motivo.
Passo 4: Recarregue as definições
# Reinicie a sua sessão do Claude Code para aplicar as alterações
# Não existe hot-reload para alterações ao settings.json
Solução 2: Experimente o modo permissionless (com uma ressalva)
Se a configuração de permissões não for o problema, execute o Claude Code em modo permissionless:
claude --permissionless
Mas tenha em conta a issue #21091 no GitHub: mesmo em modo permissionless, a WebSearch pode ser negada. Este é um bug confirmado que afeta subscritores Claude Max. Se estiver a passar por isto, a alternativa é:
# Ignore completamente a WebSearch integrada e use um servidor MCP
# (ver Solução 3)
Solução 3: Use um servidor MCP para pesquisa web
Quando a WebSearch integrada está avariada, a solução mais fiável dentro do Claude Code é usar um servidor MCP que trate a pesquisa web externamente:
Opção A: Brave Search MCP Server
# Instale o Brave Search MCP server
claude mcp add brave-search -- npx -y @anthropic/mcp-server-brave-search \
--env BRAVE_API_KEY=your_brave_api_key_here
O Brave Search MCP server é mantido pela Anthropic e é a coisa mais próxima de uma ferramenta “oficial” de pesquisa web. Devolve resultados estruturados que o Claude Code consegue analisar e citar.
Prós:
- Mantido pela Anthropic
- Resultados estruturados e prontos para citação
- Escalão gratuito disponível (2.000 consultas/mês)
Contras:
- Requer uma Brave API key separada
- Só fornece snippets de pesquisa — não conteúdo completo da página
- Cada chamada acrescenta cerca de 4.000 tokens de overhead de descrição da ferramenta
Opção B: Tavily Search MCP Server
claude mcp add tavily -- npx -y @tavily/mcp-server \
--env TAVILY_API_KEY=your_tavily_key_here
O Tavily foi criado especificamente para pesquisa de agentes de IA — devolve conteúdo completo da página além de snippets.
Opção C: SerpAPI MCP Server
claude mcp add serpapi -- npx -y @serpapi/mcp-server \
--env SERPAPI_API_KEY=your_serpapi_key_here
O SerpAPI fornece resultados de pesquisa do Google. É a opção mais flexível, mas também a mais cara.
Solução 4: A alternativa fiável — AnyCap Web Search (sem MCP, sem permissões)
Melhor para: programadores que só querem que a pesquisa web funcione — sempre, sem depuração.
O verdadeiro problema da WebSearch integrada do Claude Code não são apenas os bugs. É a arquitetura subjacente: como a pesquisa web é uma ferramenta interna do modelo, partilha a janela de contexto, o modelo de permissões e os rate limits do Claude. Quando qualquer um desses elementos falha, a pesquisa web falha também.
A AnyCap segue uma abordagem diferente: a pesquisa web corre como uma capacidade externa, fora do contexto do Claude Code — com o seu próprio motor, as suas próprias API keys e o seu próprio formato de saída. O Claude Code apenas a chama como qualquer outra ferramenta CLI.
Configuração (30 segundos — a mesma instalação da geração de imagens)
# Se já instalou a AnyCap para geração de imagens, ignore isto
npx -y skills add anycap-ai/anycap -a claude-code -y
curl -fsSL https://anycap.ai/install.sh | sh
anycap login
Pesquise na web a partir do Claude Code
Pesquisa web básica:
anycap web search \
--query "Claude Code web search permission denied fix" \
--results 5
Saída:
Searching for: Claude Code web search permission denied fix...
Found 5 results:
1. GitHub Issue #21091 — WebSearch Tool Blocked Despite Permissionless Mode
https://github.com/anthropics/claude-code/issues/21091
Relevant: Confirmed bug — WebSearch denied even with --permissionless flag
2. Reddit r/ClaudeCode — How to grant Claude Code web search permission
https://reddit.com/r/ClaudeCode/comments/1kouc2z/
Relevant: Edit(*) in settings.json blocks WebSearch
3-5. [additional results]
O Claude Code pode ler e citar estes resultados diretamente — sem janela de permissão, sem “Did 0 searches”, sem depuração de settings.json.
Pesquisa aprofundada com múltiplas fontes:
anycap web deep-research \
--topic "State of AI coding agents 2026" \
--depth 3 \
--output research.md
Isto executa várias consultas, segue ligações, extrai conteúdo e compila um documento de investigação com citações — tudo fora da janela de contexto do Claude Code.
Rastreio web em direto com conteúdo completo da página:
anycap web crawl \
--url "https://docs.anthropic.com/en/docs/claude-code/web-search" \
--format markdown
Devolve a página completa em markdown para que o Claude Code a possa analisar e referenciar.
Porque é que esta abordagem não falha
| WebSearch integrada do Claude Code | AnyCap Web Search | |
|---|---|---|
| Modelo de permissões | Permissões do Claude Code (com bugs) | Externo — sem permissões do Claude |
| Routing de API | Interno ao modelo (sujeito a bugs de routing) | Motor de pesquisa dedicado |
| Rate limits | Partilha os rate limits do Claude Code | API separada, limites independentes |
| Formato de saída | Texto formatado pelo Claude | JSON estruturado com URLs de origem |
| Conteúdo completo da página | Não (apenas snippets) | Sim (via web crawl) |
| Pesquisa aprofundada | Não | Sim (múltiplas consultas, múltiplas fontes) |
| Overhead de contexto | Variável (depende do modelo) | ~1.000 tokens por chamada |
| Credencial | API key da Anthropic | Um login AnyCap |
Comparação: que solução deve usar?
| Solução | Funciona quando | Tempo de configuração | Fiabilidade |
|---|---|---|---|
| Solução 1: Configuração de permissões | O problema está no settings.json |
5 min | Média (pode voltar a falhar) |
| Solução 2: Modo permissionless | O problema está no modelo de permissões | 1 min | Baixa (bug conhecido #21091) |
| Solução 3: Servidor MCP | Tem API keys e paciência | 15–30 min | Alta (motor externo) |
| Solução 4: AnyCap CLI | Quer que a pesquisa simplesmente funcione | 2 min | A mais alta (motor dedicado) |
FAQ
Porque é que o Claude Code diz “Did 0 searches”?
Este é um bug conhecido em que a ferramenta interna WebSearch do Claude Code é executada, mas não devolve resultados — mesmo para consultas que dariam resultados num navegador. Isto é causado por um parâmetro blocked_domains: [] malformado no pedido à API. A única solução realmente fiável é usar uma ferramenta de pesquisa externa (Solução 3 ou Solução 4).
A pesquisa web do Claude Code é gratuita?
Sim, a WebSearch integrada do Claude Code está incluída na sua subscrição Claude (Pro, Max ou Team). No entanto, alternativas baseadas em MCP (Solução 3) normalmente exigem API keys separadas com o seu próprio preço. A pesquisa web da AnyCap é pay-as-you-go, a partir de 5 $ de crédito gratuito.
Posso usar o Google Search a partir do Claude Code?
Não com a WebSearch integrada — ela usa o backend de pesquisa da própria Anthropic. Para resultados do Google em específico, use o SerpAPI MCP server (Solução 3, Opção C) ou o anycap web search da AnyCap, que devolve resultados agregados de várias fontes.
Porque é que a pesquisa web funciona no claude.ai mas não no Claude Code?
O Claude Code e o claude.ai usam implementações diferentes de pesquisa web. A interface web do claude.ai tem uma integração de pesquisa mais madura; a WebSearch baseada em terminal do Claude Code é uma ferramenta mais recente e ainda tem bugs conhecidos. Se a pesquisa funciona na web mas não no terminal, está a lidar com um problema específico do Claude Code — mais frequentemente configuração de permissões ou o bug “Did 0 searches”.
A pesquisa web da AnyCap funciona quando o Claude Code está offline?
Não — mas mais nada funciona também. A pesquisa web da AnyCap requer ligação à internet, porque faz pedidos HTTP reais a motores de pesquisa. O que ela não requer é que a ferramenta WebSearch do Claude Code esteja funcional, com permissões aprovadas ou sem limitações de taxa. Se tiver internet, a pesquisa da AnyCap funciona.
Próximos passos
- Tutorial do Claude Code: do zero até à primeira sessão funcional (2026) — guia completo de configuração, incluindo integração com a AnyCap
- Porque o Claude Code precisa de pesquisa web para workflows reais — o argumento a favor de acesso web em tempo real para agentes de programação
- Como gerar imagens com Claude Code (2026) — adicione geração de imagens juntamente com pesquisa web
- Porque o Claude Code precisa de geração de imagens — explicação da lacuna de capacidade visual
- Guia do Claude Code Agent SDK (2026) — orquestração multiagente com Claude
- Duelo de agentes de terminal: Claude Code vs Codex vs Windsurf — compare o Claude Code com outros agentes de terminal