Geekflare

Forneça a Claude, Cursor, ChatGPT, Kilo e outros clientes MCP acesso a scraping, busca na web, capturas de tela e ferramentas de rede.

Documentação

@geekflare/mcp

Servidor MCP (Model Context Protocol) oficial para o Geekflare. Conecte as ferramentas de inteligência web da Geekflare diretamente ao Claude, Cursor, Windsurf e outros assistentes de IA.

Configuração

Obtenha uma Chave de API

Cadastre-se em geekflare.com/api e copie sua chave de API do painel de controle.

Claude Desktop

Adicione isto ao seu claude_desktop_config.json:

{
  "mcpServers": {
    "geekflare": {
      "command": "npx",
      "args": ["-y", "@geekflare/mcp"],
      "env": {
        "API_KEY": "your-api-key-here"
      }
    }
  }
}

Cursor / Windsurf

Adicione às suas configurações de MCP:

{
  "mcpServers": {
    "geekflare": {
      "command": "npx",
      "args": ["-y", "@geekflare/mcp"],
      "env": {
        "API_KEY": "your-api-key-here"
      }
    }
  }
}

Docker

{
  "mcpServers": {
    "geekflare": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "API_KEY=your-api-key-here", "geekflare/mcp"]
    }
  }
}

Ferramentas Disponíveis

webScrape

Extraia o conteúdo completo da página de qualquer URL. Retorna HTML, Markdown, JSON ou texto otimizado para LLM — incluindo dados estruturados por meio de modelos de extração prontos, esquemas personalizados de CSS/XPath ou extração alimentada por IA.

| Parâmetro | Tipo | Padrão | Descrição | | ------------------ | --------- | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | --------- | --------------------------------------- | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | format | array | ["markdown"] | Formatos de saída (até 3): html, markdown, json, markdown-llm, html-llm, text, text-llm | | proxyMode | boolean | "auto" | false | false nunca usa proxy, auto tenta novamente por meio de um se o site bloquear a solicitação, true sempre usa um | | proxyCountry | string | — | Rota por meio de um código ISO de país (ex.: "us"), usado quando um proxy está ativo | | renderJS | boolean | auto | Executa JavaScript antes da extração. Se omitido, resolvido automaticamente com base na necessidade da página | | fileOutput | boolean | false | Retorna uma URL de download em vez de conteúdo inline | | blockAds | boolean | true | Bloqueia anúncios durante a extração | | stealth | boolean | false | Ignora CAPTCHAs (mais lento) | | waitTime | number | 0 | Segundos de espera após o carregamento da página antes de capturar o conteúdo | | extractionMode | default | cssSchema | xpathSchema | template | default | Usado apenas quando format inclui json | | template | product | contact | — | Modelo de extração pronto quando extractionMode é template | | extractionSchema | object | — | Esquema personalizado de extração de campos para modos cssSchema/xpathSchema | | aiPrompt | object | — | Extração/análise alimentada por IA da página extraída. Suporta modos de prompt, esquema, listagem, resumo, sentimento e palavras-chave. Adiciona +6 créditos |


metaScrape

Extraia meta tags — título, descrição, Open Graph, Twitter cards e muito mais.

| Parâmetro | Tipo | Padrão | Descrição | | -------------- | --------- | ---------- | ----------------------------------------------- | ----------------- | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | format | json | markdown | json | Formato de resposta | | proxyCountry | string | — | Código ISO do país | | renderJS | boolean | true | Se deve executar JavaScript | | fileOutput | boolean | false | Retorna uma URL de download em vez de conteúdo inline | | blockAds | boolean | true | Bloqueia anúncios durante a extração |


brand

Obtenha informações estruturadas de marca para um domínio de site, incluindo identidade da marca, logotipos, cores, tipografia, perfis sociais, links, metadados de página e informações da empresa.

A ferramenta brand suporta dois níveis de inteligência de marca:

  • standard — Retorna informações estruturadas de marca disponíveis no site.
  • enriched — Inclui inteligência adicional da empresa sintetizada por LLM quando disponível.

| Parâmetro | Tipo | Padrão | Descrição | | --------- | ---------- | ---------- | ---------------------------------------------------------- | --------------------------------------------------------------------------------------- | | url * | string | — | URL de destino | | refresh | boolean | false | Força uma busca sob demanda e atualiza os dados de marca em cache | | mode | standard | enriched | standard | Profundidade dos dados de marca a retornar. enriched inclui inteligência da empresa sintetizada por LLM |

Exemplo

{
  "url": "https://example.com",
  "mode": "enriched"
}

Para ignorar os dados em cache e buscar informações atualizadas:

{
  "url": "https://example.com",
  "refresh": true,
  "mode": "enriched"
}

A resposta pode incluir:

  • Nome da marca, slogan, descrição e lema
  • Logotipos e favicon
  • Cores da marca e paleta
  • Fontes e tipografia
  • Estilos de componentes de UI e espaçamento
  • Perfis sociais
  • Links importantes do site
  • Metadados de página e informações do Open Graph
  • Informações da empresa, como setor, ano de fundação, faixa de funcionários, faixa de receita, tipo de empresa e público-alvo quando disponíveis

As informações enriquecidas da empresa dependem das informações publicamente disponíveis para o domínio, portanto, campos individuais podem ser omitidos.


screenshot

Capture uma captura de tela de qualquer site. Suporta página inteira, apenas elemento, Retina, modo escuro, fundos transparentes e destaque de links amigável para IA.

| Parâmetro | Tipo | Padrão | Descrição | | ----------------------- | --------- | -------- | --------------------------------------------------------------- | ----------------- | ------------ | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | type | png | jpeg | webp | png | Formato de imagem | | proxyCountry | string | — | Código ISO do país | | fullPage | boolean | false | Captura a página inteira | | selector | string | — | Seletor CSS para o elemento a capturar | | fallbackToFullPage | boolean | false | Recorre à captura de página inteira se selector não for encontrado | | blockAds | boolean | true | Bloqueia anúncios | | hideCookie | boolean | true | Remove banners de cookies | | skipCaptcha | boolean | true | Ignora desafios anti-bot | | addTimestamp | boolean | false | Adiciona um carimbo de data/hora | | highlightLinks | boolean | false | Desenha bordas ao redor de links/botões — útil para modelos de visão de IA | | pageHeight | number | — | Altura personalizada da página em pixels | | viewportWidth | number | — | Largura da janela de visualização | | viewportHeight | number | — | Altura da janela de visualização | | captureBeyondViewport | boolean | — | Captura conteúdo além da janela de visualização configurada | | delay | number | — | Segundos de espera após o carregamento da página | | quality | number | 90 | Qualidade da imagem para JPEG/WEBP | | scaleFactor | number | — | Proporção de pixels do dispositivo | | theme | light | dark | auto | auto | Esquema de cores | | removeBackground | boolean | false | Remove o fundo da página (somente PNG) | | disableAnimations | boolean | false | Congela animações CSS antes da captura | | inline | boolean | false | Retorna dados de imagem inline em vez de uma URL de CDN |


search

Pesquise na web e retorne resultados limpos e estruturados. Suporta pesquisa na web, notícias e imagens com respostas opcionais fundamentadas em IA. | Parâmetro | Tipo | Padrão | Descrição | | ---------------- | --------- | ---------- | -------------------------------------------------- | ---------- | --------------- | ------ | --- | --------------- | | query * | string | — | Consulta de busca | | limit | number | 10 | Número de resultados | | time | string | — | Filtro de tempo: any, d, w, m, y, d7, h6 | | location | string | — | Código ISO do país para localizar resultados | | source | web | news | images | web | Fonte de busca | | category | general | code | pdf | research | linkedin | wiki | — | Categoria de busca | | format | json | markdown | html | json | Formato de resposta | | includeDomains | array | — | Incluir apenas estes domínios | | excludeDomains | array | — | Excluir estes domínios | | groundedAnswer | boolean | false | Gerar uma resposta de IA sintetizada a partir dos resultados | | scrape | boolean | false | Também extrair as principais páginas de resultados | | scrapeLimit | number | 3 | Quantas páginas extrair quando scrape estiver habilitado |


dnsRecord

Consulte registros DNS de um domínio.

ParâmetroTipoPadrão
url *string
typesarrayTodos os tipos suportados

Tipos de registro DNS suportados:

A, AAAA, CNAME, MX, NS, SOA, TXT, CAA, SRV


siteStatus

Verifique se um site está no ar ou fora do ar.

ParâmetroTipoPadrão
url *string
proxyCountrystring
followRedirectbooleanfalse

redirectCheck

Trace a cadeia completa de redirecionamentos de uma URL.

ParâmetroTipo
url *string
proxyCountrystring

brokenLink

Encontre todos os links quebrados em uma página da web.

ParâmetroTipoPadrão
url *string
proxyCountrystring
followRedirectbooleanfalse

url2Pdf

Converta qualquer URL em um PDF para download.

| Parâmetro | Tipo | Padrão | Descrição | | --------------- | ---------- | ----------- | -------------------------- | ----------------- | -------- | ------- | --------- | ---- | ---------- | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | format | a4 | a3 | a5 | a6 | letter | legal | a0a2 | a4 | Tamanho do papel | | orientation | portrait | landscape | portrait | Orientação da página | | proxyCountry | string | — | Código ISO do país | | scale | number | — | Nível de zoom | | margin.top | number | 25 | Margem superior em mm | | margin.bottom | number | 25 | Margem inferior em mm | | margin.left | number | 25 | Margem esquerda em mm | | margin.right | number | 25 | Margem direita em mm | | hideCookie | boolean | true | Remover banners de cookies | | skipCaptcha | boolean | true | Ignorar desafios anti-bot | | addTimestamp | boolean | false | Adicionar um carimbo de data/hora |


openPorts

Escaneie portas abertas em um host. Opcionalmente, execute detecção de serviço e versão nas portas encontradas abertas.

| Parâmetro | Tipo | Descrição | | ---------------- | ------- | ------------------------------------------------------------- | ----- | ------ | ------ | ----------------------- | | url * | string | URL de destino ou nome do host | | topPorts | 50 | 100 | 500 | 1000 | 5000 | Escanear as N portas comuns mais frequentes | | portRanges | string | Intervalos personalizados, ex.: "80,443,1000-1010" | | detectServices | boolean | Quando true, também executar detecção de serviço/versão nas portas abertas |

Detecção de Serviço

Defina detectServices: true para executar a detecção de serviço/versão do Nmap nas portas encontradas abertas.

{
  "url": "example.com",
  "topPorts": 100,
  "detectServices": true
}

Quando bem-sucedido, a resposta inclui um array services contendo informações como:

  • Número da porta
  • Estado da porta
  • Nome do serviço detectado
  • Nome do produto
  • Versão do produto
  • Informações adicionais do serviço
  • Tipo de SO inferido, quando disponível

Exemplo de estrutura de resposta:

{
  "data": [22, 80, 443],
  "services": [
    {
      "port": 22,
      "state": "open",
      "service": {
        "name": "ssh",
        "product": "OpenSSH",
        "version": "9.6"
      }
    },
    {
      "port": 443,
      "state": "open",
      "service": {
        "name": "https"
      }
    }
  ]
}

A detecção de serviço é feita com melhor esforço e pode levar mais tempo do que uma varredura de portas padrão.

Se a detecção de serviço for solicitada, mas não puder ser concluída, a API pode retornar um campo servicesError. O campo data contendo as portas abertas descobertas permanece disponível.


tlsScan

Inspecione a configuração TLS/SSL — protocolos, cifras, detalhes do certificado.

ParâmetroTipo
url *string

loadTime

Meça o tempo total de carregamento da página de qualquer localização. Opcionalmente, teste a acessibilidade de múltiplas localizações de uma só vez.

ParâmetroTipoPadrãoDescrição
url *stringURL de destino
proxyCountrystringCódigo ISO do país
followRedirectbooleanfalseSeguir redirecionamentos
targetCountriesarray de stringAté 3 códigos ISO de países para também testar via proxy, junto com o teste padrão dos EUA. Retorna um detalhamento por localização quando definido

mixedContent

Detecte problemas de conteúdo misto (recursos HTTP em páginas HTTPS).

ParâmetroTipoPadrão
url *string
proxyCountrystring
followRedirectbooleanfalse

dnsSec

Verifique se o DNSSEC está habilitado e configurado corretamente para um domínio.

ParâmetroTipo
url *string

mtr

Execute um teste de diagnóstico de rede MTR (My Traceroute).

ParâmetroTipoPadrão
url *string
proxyCountrystring
followRedirectbooleanfalse

ping

Envie um ping para um host e retorne a latência.

ParâmetroTipo
url *string

lighthouse

Execute uma auditoria completa do Lighthouse — desempenho, SEO, acessibilidade e boas práticas.

| Parâmetro | Tipo | Padrão | Descrição | | ---------------- | --------------- | -------- | -------------------------- | ----------------- | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | proxyCountry | string | — | Código ISO do país | | followRedirect | boolean | false | Seguir redirecionamentos | | parameters | array de string | — | Flags extras da CLI do Lighthouse |


Variáveis de Ambiente

VariávelObrigatóriaDescrição
API_KEYSua chave de API do Geekflare
API_BASE_URLSubstituir a URL base da API (padrão: https://api.geekflare.com)

Links

Licença

MIT