Geekflare

Proporciona a Claude, Cursor, ChatGPT, Kilo y otros clientes MCP acceso a scraping, búsqueda web, capturas de pantalla y herramientas de red.

Documentación

@geekflare/mcp

Servidor MCP (Protocolo de Contexto del Modelo) oficial para Geekflare. Conecta las herramientas de inteligencia web de Geekflare directamente con Claude, Cursor, Windsurf y otros asistentes de IA.

Configuración

Obtener una Clave de API

Regístrate en geekflare.com/api y copia tu clave de API desde el panel de control.

Claude Desktop

Añade esto a tu claude_desktop_config.json:

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

Cursor / Windsurf

Añade a tu configuración 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"]
    }
  }
}

Herramientas Disponibles

webScrape

Extrae el contenido completo de la página desde cualquier URL. Devuelve HTML, Markdown, JSON o texto optimizado para LLM, incluyendo datos estructurados mediante plantillas de extracción predefinidas, esquemas CSS/XPath personalizados o extracción impulsada por IA.

| Parámetro | Tipo | Predeterminado | Descripción | | ------------------ | --------- | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | --------- | --------------------------------------- | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | format | array | ["markdown"] | Formatos de salida (hasta 3): html, markdown, json, markdown-llm, html-llm, text, text-llm | | proxyMode | boolean | "auto" | false | false nunca usa un proxy, auto reintenta a través de uno si el sitio bloquea la solicitud, true siempre usa uno | | proxyCountry | string | — | Enrutar a través de un código de país ISO (ej. "us"), usado cuando un proxy está activo | | renderJS | boolean | auto | Ejecutar JavaScript antes de extraer. Si se omite, se resuelve automáticamente según si la página lo necesita | | fileOutput | boolean | false | Devolver una URL de descarga en lugar de contenido en línea | | blockAds | boolean | true | Bloquear anuncios durante la extracción | | stealth | boolean | false | Omitir CAPTCHAs (más lento) | | waitTime | number | 0 | Segundos a esperar después de la carga de la página antes de capturar el contenido | | extractionMode | default | cssSchema | xpathSchema | template | default | Solo se usa cuando format incluye json | | template | product | contact | — | Plantilla de extracción predefinida cuando extractionMode es template | | extractionSchema | object | — | Esquema personalizado de extracción de campos para modos cssSchema/xpathSchema | | aiPrompt | object | — | Extracción/análisis impulsado por IA de la página extraída. Admite modos de prompt, esquema, listado, resumen, sentimiento y palabras clave. Añade +6 créditos |


metaScrape

Extrae metaetiquetas: título, descripción, Open Graph, tarjetas de Twitter y más.

| Parámetro | Tipo | Predeterminado | Descripción | | -------------- | --------- | ---------- | ----------------------------------------------- | ----------------- | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | format | json | markdown | json | Formato de respuesta | | proxyCountry | string | — | Código de país ISO | | renderJS | boolean | true | Si ejecutar JavaScript | | fileOutput | boolean | false | Devolver una URL de descarga en lugar de contenido en línea | | blockAds | boolean | true | Bloquear anuncios durante la extracción |


brand

Obtén información estructurada de marca para un dominio de sitio web, incluyendo identidad de marca, logotipos, colores, tipografía, perfiles sociales, enlaces, metadatos de página e información de la empresa.

La herramienta brand admite dos niveles de inteligencia de marca:

  • standard — Devuelve información estructurada de marca disponible en el sitio web.
  • enriched — Incluye inteligencia empresarial adicional sintetizada por LLM cuando está disponible.

| Parámetro | Tipo | Predeterminado | Descripción | | --------- | ---------- | ---------- | ---------------------------------------------------------- | --------------------------------------------------------------------------------------- | | url * | string | — | URL de destino | | refresh | boolean | false | Forzar una búsqueda bajo demanda y actualizar los datos de marca en caché | | mode | standard | enriched | standard | Profundidad de los datos de marca a devolver. enriched incluye inteligencia empresarial sintetizada por LLM |

Ejemplo

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

Para omitir los datos en caché y obtener información actualizada:

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

La respuesta puede incluir:

  • Nombre de marca, eslogan, descripción y lema
  • Logotipos y favicon
  • Colores de marca y paleta
  • Fuentes y tipografía
  • Estilos de componentes de interfaz y espaciado
  • Perfiles sociales
  • Enlaces importantes del sitio web
  • Metadatos de página e información de Open Graph
  • Información de la empresa como industria, año de fundación, rango de empleados, rango de ingresos, tipo de empresa y público objetivo cuando esté disponible

La información empresarial enriquecida depende de la información disponible públicamente para el dominio, por lo que los campos individuales pueden omitirse.


screenshot

Captura una captura de pantalla de cualquier sitio web. Admite página completa, solo elemento, Retina, modo oscuro, fondos transparentes y resaltado de enlaces amigable para IA.

| Parámetro | Tipo | Predeterminado | Descripción | | ----------------------- | --------- | -------- | --------------------------------------------------------------- | ----------------- | ------------ | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | type | png | jpeg | webp | png | Formato de imagen | | proxyCountry | string | — | Código de país ISO | | fullPage | boolean | false | Capturar la página completa | | selector | string | — | Selector CSS para el elemento a capturar | | fallbackToFullPage | boolean | false | Recurrir a una captura de página completa si selector no se encuentra | | blockAds | boolean | true | Bloquear anuncios | | hideCookie | boolean | true | Eliminar banners de cookies | | skipCaptcha | boolean | true | Omitir desafíos anti-bot | | addTimestamp | boolean | false | Añadir una marca de tiempo | | highlightLinks | boolean | false | Dibujar bordes alrededor de enlaces/botones — útil para modelos de visión IA | | pageHeight | number | — | Altura personalizada de la página en píxeles | | viewportWidth | number | — | Ancho de la ventana gráfica | | viewportHeight | number | — | Alto de la ventana gráfica | | captureBeyondViewport | boolean | — | Capturar contenido más allá de la ventana gráfica configurada | | delay | number | — | Segundos a esperar después de la carga de la página | | quality | number | 90 | Calidad de imagen para JPEG/WEBP | | scaleFactor | number | — | Relación de píxeles del dispositivo | | theme | light | dark | auto | auto | Esquema de color | | removeBackground | boolean | false | Eliminar el fondo de la página (solo PNG) | | disableAnimations | boolean | false | Congelar animaciones CSS antes de la captura | | inline | boolean | false | Devolver datos de imagen en línea en lugar de una URL de CDN |


search

Busca en la web y devuelve resultados limpios y estructurados. Admite búsqueda web, de noticias e imágenes con respuestas opcionales fundamentadas en IA. | Parámetro | Tipo | Predeterminado | Descripción | | ---------------- | --------- | ---------- | -------------------------------------------------- | ---------- | --------------- | ------ | --- | --------------- | | query * | string | — | Consulta de búsqueda | | limit | number | 10 | Número de resultados | | time | string | — | Filtro de tiempo: any, d, w, m, y, d7, h6 | | location | string | — | Código ISO del país para localizar resultados | | source | web | news | images | web | Fuente de búsqueda | | category | general | code | pdf | research | linkedin | wiki | — | Categoría de búsqueda | | format | json | markdown | html | json | Formato de respuesta | | includeDomains | array | — | Incluir solo estos dominios | | excludeDomains | array | — | Excluir estos dominios | | groundedAnswer | boolean | false | Generar una respuesta de IA sintetizada a partir de los resultados | | scrape | boolean | false | También extraer las páginas de resultados principales | | scrapeLimit | number | 3 | Cuántas páginas extraer cuando scrape está habilitado |


dnsRecord

Consulta los registros DNS de un dominio.

ParámetroTipoPredeterminado
url *string
typesarrayTodos los tipos admitidos

Tipos de registros DNS admitidos:

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


siteStatus

Comprueba si un sitio está activo o caído.

ParámetroTipoPredeterminado
url *string
proxyCountrystring
followRedirectbooleanfalse

redirectCheck

Traza la cadena completa de redirecciones de una URL.

ParámetroTipo
url *string
proxyCountrystring

brokenLink

Encuentra todos los enlaces rotos en una página web.

ParámetroTipoPredeterminado
url *string
proxyCountrystring
followRedirectbooleanfalse

url2Pdf

Convierte cualquier URL a un PDF descargable.

| Parámetro | Tipo | Predeterminado | Descripción | | --------------- | ---------- | ----------- | -------------------------- | ----------------- | -------- | ------- | --------- | ---- | ---------- | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | format | a4 | a3 | a5 | a6 | letter | legal | a0a2 | a4 | Tamaño de papel | | orientation | portrait | landscape | portrait | Orientación de página | | proxyCountry | string | — | Código ISO del país | | scale | number | — | Nivel de zoom | | margin.top | number | 25 | Margen superior en mm | | margin.bottom | number | 25 | Margen inferior en mm | | margin.left | number | 25 | Margen izquierdo en mm | | margin.right | number | 25 | Margen derecho en mm | | hideCookie | boolean | true | Eliminar banners de cookies | | skipCaptcha | boolean | true | Omitir desafíos anti-bot | | addTimestamp | boolean | false | Añadir una marca de tiempo |


openPorts

Escanea puertos abiertos en un host. Opcionalmente, realiza detección de servicios y versiones en los puertos encontrados abiertos.

| Parámetro | Tipo | Descripción | | ---------------- | ------- | ------------------------------------------------------------- | ----- | ------ | ------ | ----------------------- | | url * | string | URL de destino o nombre de host | | topPorts | 50 | 100 | 500 | 1000 | 5000 | Escanear los N puertos comunes principales | | portRanges | string | Rangos personalizados, p. ej. "80,443,1000-1010" | | detectServices | boolean | Cuando true, también ejecuta detección de servicios/versiones en puertos abiertos |

Detección de servicios

Establece detectServices: true para realizar la detección de servicios/versiones de Nmap en los puertos encontrados abiertos.

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

Cuando tiene éxito, la respuesta incluye un array services que contiene información como:

  • Número de puerto
  • Estado del puerto
  • Nombre del servicio detectado
  • Nombre del producto
  • Versión del producto
  • Información adicional del servicio
  • Tipo de SO inferido, cuando esté disponible

Estructura de respuesta de ejemplo:

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

La detección de servicios se realiza con el mejor esfuerzo y puede tardar más que un escaneo de puertos estándar.

Si se solicita la detección de servicios pero no se puede completar, la API puede devolver un campo servicesError. El campo data que contiene los puertos abiertos descubiertos permanece disponible.


tlsScan

Inspecciona la configuración TLS/SSL: protocolos, cifrados, detalles del certificado.

ParámetroTipo
url *string

loadTime

Mide el tiempo total de carga de la página desde cualquier ubicación. Opcionalmente, prueba la accesibilidad desde múltiples ubicaciones a la vez.

ParámetroTipoPredeterminadoDescripción
url *stringURL de destino
proxyCountrystringCódigo ISO del país
followRedirectbooleanfalseSeguir redirecciones
targetCountriesarray de stringHasta 3 códigos ISO de país para probar también mediante proxy, junto con la prueba predeterminada de EE. UU. Devuelve un desglose por ubicación cuando se establece

mixedContent

Detecta problemas de contenido mixto (recursos HTTP en páginas HTTPS).

ParámetroTipoPredeterminado
url *string
proxyCountrystring
followRedirectbooleanfalse

dnsSec

Comprueba si DNSSEC está habilitado y configurado correctamente para un dominio.

ParámetroTipo
url *string

mtr

Ejecuta una prueba de diagnóstico de red MTR (My Traceroute).

ParámetroTipoPredeterminado
url *string
proxyCountrystring
followRedirectbooleanfalse

ping

Hace ping a un host y devuelve la latencia.

ParámetroTipo
url *string

lighthouse

Ejecuta una auditoría completa de Lighthouse: rendimiento, SEO, accesibilidad y mejores prácticas.

| Parámetro | Tipo | Predeterminado | Descripción | | ---------------- | --------------- | -------- | -------------------------- | ----------------- | | url * | string | — | URL de destino | | device | desktop | mobile | desktop | Dispositivo a emular | | proxyCountry | string | — | Código ISO del país | | followRedirect | boolean | false | Seguir redirecciones | | parameters | array de string | — | Banderas adicionales de CLI de Lighthouse |


Variables de entorno

VariableRequeridaDescripción
API_KEYTu clave de API de Geekflare
API_BASE_URLAnula la URL base de la API (predeterminado: https://api.geekflare.com)

Enlaces

Licencia

MIT