SerpKite

Pesquisa do Google, notícias, mapas, acadêmico, compras e páginas públicas da web para agentes de IA, com resultados compactos em JSON ou Markdown.

Servidor MCP hospedado

npx add-mcp 'https://api.serpkite.com/v1/mcp'

Instala no Claude Code, Codex, Cursor e outros

Documentação

SerpKite executa um servidor remoto de Model Context Protocol. Qualquer cliente MCP que fale HTTP streamable pode se conectar a ele e chamar busca do Google, News, Maps, Scholar, um buscador de páginas e muito mais como ferramentas. Não há nada para instalar ou hospedar.

URLhttps://api.serpkite.com/v1/mcp
TransporteHTTP streamable (sem estado)
AutenticaçãoAuthorization: Bearer skt_live_…
Versões de protocolo2025-06-18, 2025-03-26, 2024-11-05
CobrançaMesmos créditos dos endpoints REST

[!-accent] -accent OAuth está planejado

Hoje o servidor autentica com sua chave de API em um cabeçalho. O login via OAuth para clientes que não conseguem enviar cabeçalhos personalizados está planejado. Até lá, use um cliente que permita definir cabeçalhos, ou a ponte mcp-remote mostrada abaixo.

Obtenha uma chave

Crie uma chave no painel em API keys (veja API keys). Para uso com MCP, uma chave dedicada com limite mensal de créditos é uma boa ideia: um agente em loop pode fazer muitas chamadas, e o limite limita o quanto essa chave pode gastar. Os exemplos abaixo leem a chave da variável de ambiente SERPKITE_API_KEY.

Claude Code

Um comando adiciona o servidor ao Claude Code:

claude mcp add --transport http serpkite https://api.serpkite.com/v1/mcp \
  --header "Authorization: Bearer $SERPKITE_API_KEY"

Execute claude mcp list para verificar a conexão e depois pergunte algo ao Claude que precise de resultados recentes ("o que mudou na última versão do Go?"). Adicione --scope project para gravar a configuração em .mcp.json para que todo o seu time a receba, mas mantenha a chave fora do controle de versão.

Claude Desktop

O Claude Desktop inicia servidores locais (stdio) a partir de claude_desktop_config.json. Para alcançar um servidor remoto com um cabeçalho personalizado, use a ponte mcp-remote, que roda através de npx:

{
  "mcpServers": {
    "serpkite": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://api.serpkite.com/v1/mcp",
        "--header",
        "Authorization: Bearer ${SERPKITE_API_KEY}"
      ],
      "env": {
        "SERPKITE_API_KEY": "skt_live_..."
      }
    }
  }
}

O arquivo fica em ~/Library/Application Support/Claude/claude_desktop_config.json no macOS e %APPDATA%\Claude\claude_desktop_config.json no Windows. Reinicie o Claude Desktop após editá-lo. Você precisa ter o Node.js instalado para o npx.

Onde seu plano oferecer Settings → Connectors → Add custom connector, você pode adicionar a URL lá. Conectores personalizados que precisam de um cabeçalho funcionarão sem a ponte quando o OAuth for lançado.

Cursor

Adicione o servidor em ~/.cursor/mcp.json (todos os projetos) ou .cursor/mcp.json (um projeto):

{
  "mcpServers": {
    "serpkite": {
      "url": "https://api.serpkite.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${env:SERPKITE_API_KEY}"
      }
    }
  }
}

Abra Cursor Settings → MCP para verificar se o servidor está verde e se suas ferramentas estão listadas. Se sua versão do Cursor não expandir ${env:…}, cole a chave diretamente e mantenha o arquivo fora do git.

VS Code

O VS Code (modo agente do Copilot) lê .vscode/mcp.json. O bloco inputs solicita a chave uma vez e a armazena com segurança, para que ela nunca fique no arquivo:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "serpkite-key",
      "description": "SerpKite API key",
      "password": true
    }
  ],
  "servers": {
    "serpkite": {
      "type": "http",
      "url": "https://api.serpkite.com/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${input:serpkite-key}"
      }
    }
  }
}

Inicie o servidor pelo comando MCP: List Servers e depois escolha as ferramentas SerpKite no seletor de ferramentas do agente.

ChatGPT

O ChatGPT pode conectar servidores MCP remotos como conectores quando o modo desenvolvedor está habilitado para seu workspace. Esteja ciente de que a configuração de conectores do ChatGPT autentica com OAuth ou sem autenticação, e pode não permitir adicionar um cabeçalho Authorization personalizado. Até o suporte a OAuth do SerpKite ser lançado, o ChatGPT é o único cliente nesta página que pode não conseguir se conectar diretamente. Para modelos OpenAI no seu próprio código, use o guia de chamada de ferramentas ou o OpenAI Agents SDK, que aceita cabeçalhos de servidor MCP.

Outros clientes

Qualquer cliente que suporte HTTP streamable com cabeçalhos personalizados funciona com os mesmos dois valores: a URL e o cabeçalho Authorization. Clientes que só suportam stdio podem usar npx -y mcp-remote https://api.serpkite.com/v1/mcp --header "Authorization: Bearer …" como comando, como no exemplo do Claude Desktop.

Ferramentas

Todas as ferramentas retornam texto formatado para um modelo. Ferramentas de busca e leitura de páginas usam Markdown; map e extract formatam seus resultados como texto; crawl retorna um ID de tarefa e crawl_result retorna seu status ou páginas. A cobrança corresponde à operação REST equivalente, e a consulta de status do crawl é gratuita.

FerramentaO que fazEntradasCréditos
searchBusca web do Google: resultados orgânicos, caixa de resposta, grafo de conhecimento, People Also Ask, buscas relacionadasq, country, language, location, page, time, engine, num (10, 20, 30, 50, 100), include_content (0–5), highlights, include_domains, exclude_domains, boost_domains, start_date, end_date1 por página, até 7 para num: 100, +1 por página buscada
newsArtigos do Google Newsq, country, language, location, page, time, engine, include_domains, exclude_domains, boost_domains, start_date, end_date1
mapsLugares com endereço, avaliação, telefone, site, coordenadasq, country, language, location, page1
scholarArtigos acadêmicos com citações e links de PDFq, country, language, page1
patentsBusca de patentesq, country, language, page1
shoppingProdutos com preços e vendedoresq, country, language, location, page1
imagesBusca de imagensq, country, language, location, page, engine, include_domains, exclude_domains, start_date, end_date1
videosBusca de vídeosq, country, language, location, page, engine, include_domains, exclude_domains, start_date, end_date1
autocompleteSugestões de consultaq, country, language0.5
webpageBusca uma URL pública (HTML ou PDF) e retorna seu conteúdo principal como Markdown com metadadosurl, country1
extractLê até 20 URLs (HTML ou PDF) como Markdown, ou apenas as passagens relevantes a uma consultaurls, query, highlights, max_tokens, country, timeout1 por URL lida (URLs com falha são gratuitas)
crawlInicia um crawl assíncrono de um site (ou de uma seção dele); retorna um IDurl, limit, max_depth, query, include_paths, exclude_paths, max_tokens1 por página lida (limit reservado, o restante reembolsado)
crawl_resultO status ou as páginas de um crawl iniciado com crawlidGrátis
mapLista as URLs de um site a partir de seus sitemaps e página inicial, opcionalmente classificadas por uma frase de buscaurl, search, limit, include_paths, exclude_paths1 (grátis quando nada é encontrado)

Ferramentas de consulta exigem q; webpage, map e crawl exigem url; extract exige urls; crawl_result exige id. O highlights de busca é um booleano usado com include_content; o highlights de extract é um inteiro de contagem de passagens (0–10). time é um de hour, day, week, month, year. Como na API REST, chamadas com falha e vazias não são cobradas.

Os schemas MCP expõem um subconjunto das opções REST. Use tools/list para inspecionar as entradas disponíveis, ou chame REST/SDKs para opções como extract de links/imagens, cancelamento de crawl e gerenciamento de monitores. O guia de ingestão de sites e o guia de monitoramento cobrem esses fluxos de trabalho.

Teste com curl

O servidor é sem estado: cada POST carrega uma mensagem JSON-RPC 2.0 (ou um lote de até 20) e recebe uma resposta JSON. Nenhuma configuração de sessão é necessária, o que facilita testar manualmente.

Inicialize:

curl https://api.serpkite.com/v1/mcp \
  -H "Authorization: Bearer $SERPKITE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1.0"}}}'

Liste as ferramentas:

curl https://api.serpkite.com/v1/mcp \
  -H "Authorization: Bearer $SERPKITE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'

Chame search:

curl https://api.serpkite.com/v1/mcp \
  -H "Authorization: Bearer $SERPKITE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"search","arguments":{"q":"best espresso machine 2026","country":"us"}}}'

O array content do resultado contém um item text com o Markdown. Notificações (mensagens sem id) recebem um 202 Accepted vazio. Uma chave ausente ou inválida retorna 401 com o corpo de erro usual.

Custos e segurança

  • Chamadas de busca e leitura de conteúdo são cobradas como seus equivalentes REST; a consulta de status de crawl_result é gratuita. Resultados com falha e vazios não são cobrados.
  • Dê à chave MCP um credit_limit mensal para que um loop de agente descontrolado pare em um custo conhecido. Quando o limite é atingido, as chamadas falham com key_limit_reached e nada mais é cobrado. Veja Controles de gastos.
  • O servidor só busca páginas públicas e sem login. A ferramenta webpage recusa endereços de redes privadas.

Relacionados

[Visão geral da integração MCP

Guias de configuração e casos de uso para Claude, Cursor e ChatGPT.

](https://serpkite.com/integrations/mcp)[Chamada de ferramentas sem MCP

Defina uma ferramenta de busca diretamente para modelos OpenAI e Anthropic.

](https://serpkite.com/docs/guides/agents-tool-calling)[Formatos de saída

Como é o Markdown que as ferramentas retornam.

](https://serpkite.com/docs/output-formats)[API keys

Crie uma chave dedicada com limite mensal.

](https://serpkite.com/docs/api-keys)