AnySearch

Habilidade unificada de busca em tempo real para agentes de IA.

Documentação

Servidor MCP AnySearch

English | 简体中文

Servidor MCP de busca unificada em tempo real que suporta busca web geral, busca por domínio vertical, busca em lote paralela e extração de conteúdo completo de URLs.

Recursos

  • Busca Web Geral — consultas em linguagem natural abertas
  • Busca por Domínio Vertical — consultas estruturadas em finanças, acadêmico, segurança, jurídico, código e mais
  • Busca em Lote Paralela — execute múltiplas consultas independentes em uma única chamada
  • Extração de Conteúdo de URL — busque e extraia o conteúdo completo da página como Markdown
  • Acesso Anônimo — funciona sem chave de API (com limites de taxa menores)

Configuração da Chave de API

Uma chave de API é opcional, mas recomendada. Sem uma chave, todos os recursos ainda funcionam via acesso anônimo com limites de taxa menores.

Registrar para uma Chave de API (Recomendado)

O agente pode registrar o usuário e obter uma chave de API em uma única chamada — sem código de verificação, sem cadastro manual. Peça ao usuário um endereço de e-mail real: ele se torna o nome de usuário da conta.

curl -s -X POST "https://api.anysearch.com/v1/auth/email/register" \
  -H "Content-Type: application/json" \
  -d '{"email": "you@example.com"}'

Resposta de sucesso (code: 0) retorna as informações da conta e uma chave de API em texto puro de uso único:

{
  "code": 0,
  "message": "success",
  "data": {
    "username": "you@example.com",
    "email": "you@example.com",
    "login_url": "https://www.anysearch.com/login",
    "api_key": {
      "id": "key_xxxxxxxx",
      "key": "as_sk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
      "key_prefix": "as_sk_xxxxxx...",
      "name": "default",
      "rate_limit": 100,
      "quota_limit": 0,
      "expires_at": null,
      "created_at": "2026-06-23T10:23:00Z"
    }
  }
}

Em caso de sucesso, o agente DEVE:

  1. Colocar data.api_key.key na configuração do servidor MCP como o valor de Authorization: Bearer <key> (e/ou definir ANYSEARCH_API_KEY) — ela é exibida apenas uma vez (também pode ser recuperada posteriormente no painel).
  2. Informar ao usuário seu nome de usuário (= e-mail) e o login_url.

Tratamento de erros (sempre code: -1 em caso de erro; ramifique na string message):

mensagemo que fazer
Invalid email address.peça ao usuário para reinserir o e-mail
email_already_registerede-mail já está em uso — informe ao usuário para entrar em login_url; não tente novamente
contém Rate limitedleia os segundos de espera da mensagem (ex.: "Rate limited, retry after 300 seconds."), aguarde e tente novamente
começa com Key creation failed.conta criada, mas a chave falhou — extraia o e-mail e a URL da mensagem ("Key creation failed. Your account <email> was created; sign in at <url>.") e informe ao usuário para entrar lá e criar uma chave manualmente
Internal server error.tente novamente mais tarde ou use acesso anônimo

O e-mail deve ser real e acessível.

Obter uma Chave de API

Alternativamente, visite https://anysearch.com/console/api-keys para criar uma chave de API gratuita.

Prioridade da Chave

PrioridadeOrigem
1 (mais alta)Flag de CLI --api_key / cabeçalho Authorization
2Variável de ambiente ANYSEARCH_API_KEY
3Arquivo .env (ANYSEARCH_API_KEY=<key>)
4Acesso anônimo (limites de taxa menores)

Comportamento da Chave

CenárioComportamento
Sem chaveProsseguir com acesso anônimo (limites de taxa menores)
Com chaveEnviada via cabeçalho Authorization: Bearer <key>, limites de taxa maiores
Chave esgotada, chave registrada automaticamente retornadaO agente deve pedir confirmação ao usuário e então persistir a nova chave
Chave esgotada, sem nova chaveInformar o usuário e sugerir configurar uma nova chave de API

Transporte MCP

O endpoint de produção é:

https://api.anysearch.com/mcp

Ele usa nativamente Streamable HTTP. As versões atuais de OpenCode, Claude Code, Cursor, VS Code, Windsurf e Cline podem se conectar diretamente a ele; nenhum proxy SSE ou stdio é necessário. As configurações abaixo seguem a documentação oficial atual de cada cliente.

Instalação

A chave de API é opcional. Em clientes que suportam cabeçalhos personalizados, os exemplos usam a configuração autenticada recomendada. Para usar acesso anônimo, remova apenas a entrada Authorization e mantenha X-Anysearch-Client.

OpenCode

Documentação oficial: Servidores MCP e locais de configuração.

Use ~/.config/opencode/opencode.json para uma configuração global ou opencode.json na raiz do projeto. No Windows, o caminho global é %USERPROFILE%\.config\opencode\opencode.json.

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "anysearch": {
      "type": "remote",
      "url": "https://api.anysearch.com/mcp",
      "enabled": true,
      "oauth": false,
      "headers": {
        "Authorization": "Bearer {env:ANYSEARCH_API_KEY}",
        "X-Anysearch-Client": "mcp/1.0.0"
      }
    }
  }
}

OpenCode usa {env:NAME} para substituição de variáveis de ambiente. "oauth": false evita um fluxo desnecessário de descoberta OAuth para este servidor autenticado por chave de API.

Claude Code

Documentação oficial: Conecte o Claude Code a ferramentas via MCP.

Para uma instalação privada, em todo o sistema do usuário, execute:

claude mcp add --transport http anysearch https://api.anysearch.com/mcp --scope user --header "Authorization: Bearer <your_api_key>" --header "X-Anysearch-Client: mcp/1.0.0"

O escopo user armazena o servidor em ~/.claude.json e o disponibiliza em todos os projetos da máquina. Para acesso anônimo, omita a opção Authorization --header.

Para uma configuração de projeto compartilhável, crie .mcp.json na raiz do projeto:

{
  "mcpServers": {
    "anysearch": {
      "type": "http",
      "url": "https://api.anysearch.com/mcp",
      "headers": {
        "Authorization": "Bearer ${ANYSEARCH_API_KEY}",
        "X-Anysearch-Client": "mcp/1.0.0"
      }
    }
  }
}

O Claude Code expande ${VAR} e ${VAR:-default} em .mcp.json, inclusive dentro de url e headers. Defina ANYSEARCH_API_KEY antes de iniciar o Claude Code. Servidores com escopo de projeto exigem aprovação na primeira abertura interativa.

Verifique a conexão com:

claude mcp get anysearch
claude mcp list

Dentro do Claude Code, /mcp mostra o status do servidor e as ferramentas disponíveis.

Cursor

Documentação oficial: Model Context Protocol.

Use .cursor/mcp.json para um projeto ou ~/.cursor/mcp.json globalmente:

{
  "mcpServers": {
    "anysearch": {
      "url": "https://api.anysearch.com/mcp",
      "headers": {
        "Authorization": "Bearer ${env:ANYSEARCH_API_KEY}",
        "X-Anysearch-Client": "mcp/1.0.0"
      }
    }
  }
}

O Cursor reconhece automaticamente o endpoint HTTP remoto e suporta interpolação de ${env:NAME} em url e headers.

VS Code

Documentação oficial: Referência de configuração MCP.

Execute MCP: Open User Configuration para um servidor em todo o sistema do usuário, ou crie .vscode/mcp.json em um workspace. Este exemplo usa uma entrada de senha para que a chave seja solicitada e armazenada com segurança em vez de ser commitada:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "anysearch-api-key",
      "description": "AnySearch API key",
      "password": true
    }
  ],
  "servers": {
    "anysearch": {
      "type": "http",
      "url": "https://api.anysearch.com/mcp",
      "headers": {
        "Authorization": "Bearer ${input:anysearch-api-key}",
        "X-Anysearch-Client": "mcp/1.0.0"
      }
    }
  }
}

Para acesso anônimo, remova a entrada Authorization e todo o array inputs.

Windsurf

Documentação oficial: Integração Cascade MCP.

Abra Settings > Tools > Windsurf Settings > Add Server, ou edite ~/.codeium/mcp_config.json via View Raw Config:

{
  "mcpServers": {
    "anysearch": {
      "serverUrl": "https://api.anysearch.com/mcp",
      "headers": {
        "Authorization": "Bearer ${env:ANYSEARCH_API_KEY}",
        "X-Anysearch-Client": "mcp/1.0.0"
      }
    }
  }
}

O Windsurf suporta interpolação de variáveis de ambiente em serverUrl, url e headers. Atualize a lista de servidores MCP após salvar.

Cline

Documentação oficial: MCP.

No painel do Cline, abra MCP Servers > Configure > Configure MCP Servers, ou adicione um endpoint hospedado na aba Remote Servers. Use o tipo explícito streamableHttp; omiti-lo faz o fallback para o comportamento legado de SSE.

{
  "mcpServers": {
    "anysearch": {
      "type": "streamableHttp",
      "url": "https://api.anysearch.com/mcp",
      "headers": {
        "Authorization": "Bearer <your_api_key>",
        "X-Anysearch-Client": "mcp/1.0.0"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Para a CLI do Cline, o arquivo de configuração é ~/.cline/mcp.json; cline mcp abre o assistente MCP interativo.

Referência Rápida do Cliente

ClienteConexão oficialLocal de configuraçãoStreamable HTTP direto?
OpenCodeConfig MCP remota~/.config/opencode/opencode.json ou projeto opencode.jsonSim
Claude CodeMCP HTTP remotoUsuário ~/.claude.json ou projeto .mcp.jsonSim
CursorConfig MCP remota.cursor/mcp.json ou ~/.cursor/mcp.jsonSim
VS CodeConfig MCP HTTPConfig MCP do usuário ou .vscode/mcp.jsonSim
WindsurfMCP HTTP remoto~/.codeium/mcp_config.jsonSim
ClineStreamable HTTP remotoConfigurações MCP do Cline ou ~/.cline/mcp.jsonSim

Ferramentas Disponíveis

search

Execute uma consulta de busca — geral ou por domínio vertical.

ParâmetroTipoObrigatórioDescrição
querystringSimConsulta de busca em linguagem natural. UMA intenção por chamada
domainstringNãoDomínio vertical (ex.: finance, academic, security). Deve vir do enum get_sub_domains
sub_domainstringNãoChave de roteamento de subdomínio (ex.: finance.us_stock). Deve vir da saída de get_sub_domains
sub_domain_paramsobjetoNãoParâmetros estruturados da coluna de parâmetros de get_sub_domains. NUNCA invente valores
max_resultsinteiroNão1–10, padrão 10

get_sub_domains

Consulte o diretório de domínios verticais. Obrigatório antes de qualquer busca que use um domínio — retorna sub_domains válidos e seus esquemas de parâmetros.

ParâmetroTipoObrigatórioDescrição
domainstringUm deDomínio único para consultar
domainsstring[]Um deLote de até 5 domínios (preferido — cobre mais terreno)

Retorna uma tabela Markdown: sub_domain | description | params

batch_search

Execute de 1 a 5 consultas de busca independentes em paralelo. Uma falha única não bloqueia as demais.

ParâmetroTipoObrigatórioDescrição
queriesobjeto[]Sim1–5 objetos de consulta, cada um com os mesmos campos de search

extract

Busque o conteúdo completo de uma página a partir de uma URL e retorne como Markdown. Truncado em 50.000 caracteres. Apenas páginas HTML.

ParâmetroTipoObrigatórioDescrição
urlstringSimURL de destino (http:// ou https://)