Shodan MCP Server
Consulta dispositivos, servicios y vulnerabilidades conectados a internet usando la API de Shodan y la base de datos CVE.
Documentación

Servidor MCP de Shodan
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona acceso a la funcionalidad de la API de Shodan y a la base de datos de CVE, permitiendo a los asistentes de IA consultar información sobre dispositivos conectados a Internet, servicios y vulnerabilidades.
Características
Inteligencia de Red
- Información de Host: Obtén información detallada sobre direcciones IP específicas
- Capacidades de Búsqueda: Busca en la base de datos de Shodan dispositivos y servicios
- Escaneo de Redes: Escanea rangos de red (notación CIDR) para dispositivos
- Información de Certificados SSL: Obtén detalles de certificados SSL para dominios
- Búsqueda de Dispositivos IoT: Encuentra tipos específicos de dispositivos IoT
Inteligencia de Vulnerabilidades
- Consulta de CVE: Obtén información detallada sobre vulnerabilidades específicas
- Búsqueda de Vulnerabilidades: Busca CVEs con filtros avanzados (producto, estado KEV, puntuaciones EPSS)
- Información de CPE: Obtén datos de Enumeración de Plataformas Comunes para productos
- Últimas Vulnerabilidades: Accede a los CVEs más recientes y Vulnerabilidades Explotadas Conocidas
- Predicción de Explotación: Obtén CVEs ordenados por puntuaciones de predicción de explotación EPSS
Instalación
-
Clona el repositorio:
git clone https://github.com/Cyreslab-AI/shodan-mcp-server.git cd shodan-mcp-server -
Instala las dependencias:
npm install -
Compila el servidor:
npm run build -
Configura tu clave de API de Shodan:
export SHODAN_API_KEY="your-api-key-here" -
Inicia el servidor:
npm start
Integración con MCP
Este servidor puede integrarse con Claude u otros asistentes de IA compatibles con MCP. Para añadirlo a Claude Desktop o Claude.app:
-
Añade el servidor a tu configuración de MCP:
{ "mcpServers": { "shodan": { "command": "node", "args": ["/path/to/shodan-mcp-server/build/index.js"], "env": { "SHODAN_API_KEY": "your-api-key-here" } } } } -
Reinicia Claude para cargar el nuevo servidor MCP.
Herramientas Disponibles
Herramientas de Búsqueda e Información de Host
get_host_info
Obtén información detallada sobre una dirección IP específica.
Parámetros:
ip(obligatorio): Dirección IP a consultarmax_items(opcional): Número máximo de elementos a incluir en los arrays (predeterminado: 5)fields(opcional): Lista de campos a incluir en los resultados (p. ej., ['ip_str', 'ports', 'location.country_name'])
search_shodan
Busca en la base de datos de Shodan dispositivos y servicios.
Parámetros:
query(obligatorio): Consulta de búsqueda de Shodan (p. ej., 'apache country:US')page(opcional): Número de página para la paginación de resultados (predeterminado: 1)facets(opcional): Lista de facetas a incluir en los resultados de búsqueda (p. ej., ['country', 'org'])max_items(opcional): Número máximo de elementos a incluir en los arrays (predeterminado: 5)fields(opcional): Lista de campos a incluir en los resultados (p. ej., ['ip_str', 'ports', 'location.country_name'])summarize(opcional): Si devolver un resumen de los resultados en lugar de los datos completos (predeterminado: false)
get_host_count
Obtén el recuento de hosts que coinciden con una consulta de búsqueda sin consumir créditos de consulta.
Parámetros:
query(obligatorio): Consulta de búsqueda de Shodan para contar hostsfacets(opcional): Lista de facetas a incluir en los resultados del recuento (p. ej., ['country', 'org'])
scan_network_range
Escanea un rango de red (notación CIDR) para dispositivos.
Parámetros:
cidr(obligatorio): Rango de red en notación CIDR (p. ej., 192.168.1.0/24)max_items(opcional): Número máximo de elementos a incluir en los resultados (predeterminado: 5)fields(opcional): Lista de campos a incluir en los resultados (p. ej., ['ip_str', 'ports', 'location.country_name'])
search_iot_devices
Busca tipos específicos de dispositivos IoT.
Parámetros:
device_type(obligatorio): Tipo de dispositivo IoT a buscar (p. ej., 'webcam', 'router', 'smart tv')country(opcional): Código de país opcional para limitar la búsqueda (p. ej., 'US', 'DE')max_items(opcional): Número máximo de elementos a incluir en los resultados (predeterminado: 5)
Herramientas SSL y de Certificados
get_ssl_info
Obtén información de certificados SSL para un dominio.
Parámetros:
domain(obligatorio): Nombre de dominio para consultar certificados SSL (p. ej., example.com)
Herramientas DNS
dns_lookup
Resuelve nombres de host a direcciones IP mediante consulta DNS.
Parámetros:
hostnames(obligatorio): Lista de nombres de host a resolver (p. ej., ['google.com', 'facebook.com'])
reverse_dns_lookup
Obtén nombres de host para direcciones IP mediante consulta DNS inversa.
Parámetros:
ips(obligatorio): Lista de direcciones IP a consultar (p. ej., ['8.8.8.8', '1.1.1.1'])
get_domain_info
Obtén información completa del dominio, incluidos subdominios y registros DNS.
Parámetros:
domain(obligatorio): Nombre de dominio a consultar (p. ej., 'google.com')history(opcional): Incluir datos DNS históricos (predeterminado: false)type(opcional): Filtro de tipo de registro DNS (A, AAAA, CNAME, NS, SOA, MX, TXT)page(opcional): Número de página para la paginación (predeterminado: 1)
Herramientas de Utilidad de Búsqueda
list_search_facets
Lista todas las facetas de búsqueda disponibles que se pueden usar con consultas de Shodan.
Parámetros: Ninguno
list_search_filters
Lista todos los filtros de búsqueda disponibles que se pueden usar en consultas de Shodan.
Parámetros: Ninguno
parse_search_tokens
Analiza una consulta de búsqueda para comprender qué filtros y parámetros se están utilizando.
Parámetros:
query(obligatorio): Consulta de búsqueda de Shodan para analizar
Herramientas de Infraestructura
list_ports
Lista todos los puertos que Shodan rastrea en Internet.
Parámetros: Ninguno
list_protocols
Lista todos los protocolos que se pueden usar al realizar escaneos de Internet bajo demanda.
Parámetros: Ninguno
Herramientas de CVE y Vulnerabilidades
get_cve_info
Obtén información detallada sobre un CVE específico.
Parámetros:
cve_id(obligatorio): ID de CVE a consultar (p. ej., 'CVE-2021-44228')
search_cves
Busca vulnerabilidades con varios filtros.
Parámetros:
cpe23(opcional): Cadena CPE 2.3 para buscar (p. ej., 'cpe:2.3:a:apache:log4j:*')product(opcional): Nombre del producto para buscar vulnerabilidades (p. ej., 'apache', 'windows')is_kev(opcional): Filtrar solo Vulnerabilidades Explotadas Conocidassort_by_epss(opcional): Ordenar resultados por puntuación EPSS (Sistema de Puntuación de Predicción de Explotación)start_date(opcional): Fecha de inicio para filtrar CVEs (formato AAAA-MM-DD)end_date(opcional): Fecha de fin para filtrar CVEs (formato AAAA-MM-DD)limit(opcional): Número máximo de resultados a devolver (predeterminado: 10)skip(opcional): Número de resultados a omitir para la paginación (predeterminado: 0)
get_cpes
Obtén información de Enumeración de Plataformas Comunes (CPE) para productos.
Parámetros:
product(opcional): Nombre del producto a buscar (p. ej., 'apache', 'windows')vendor(opcional): Nombre del proveedor para filtrar (p. ej., 'microsoft', 'apache')version(opcional): Versión para filtrar (p. ej., '2.4.1')limit(opcional): Número máximo de resultados a devolver (predeterminado: 10)skip(opcional): Número de resultados a omitir para la paginación (predeterminado: 0)
get_newest_cves
Obtén las vulnerabilidades más recientes de la base de datos de CVE.
Parámetros:
limit(opcional): Número máximo de resultados a devolver (predeterminado: 10)
get_kev_cves
Obtén Vulnerabilidades Explotadas Conocidas (KEV) de CISA.
Parámetros:
limit(opcional): Número máximo de resultados a devolver (predeterminado: 10)
get_cves_by_epss
Obtén CVEs ordenados por puntuación EPSS (Sistema de Puntuación de Predicción de Explotación).
Parámetros:
limit(opcional): Número máximo de resultados a devolver (predeterminado: 10)
Herramientas de Cuenta y Utilidad
get_api_info
Obtén información sobre tu plan de API, incluidos créditos y límites.
Parámetros: Ninguno
get_account_profile
Obtén información del perfil de la cuenta, incluido el estado de membresía y los créditos.
Parámetros: Ninguno
get_my_ip
Obtén tu dirección IP actual tal como se ve desde Internet.
Parámetros: Ninguno
Recursos Disponibles
shodan://host/{ip}: Información sobre una dirección IP específica
Limitaciones de la API
Algunos endpoints de la API de Shodan requieren una membresía de pago. Las siguientes funciones solo están disponibles con una clave de API de Shodan de pago:
- Funcionalidad de búsqueda (search_shodan, scan_network_range, get_ssl_info, search_iot_devices, get_host_count, get_domain_info)
- Escaneo de redes
- Consulta de certificados SSL
- Búsqueda de dispositivos IoT
Nota: La funcionalidad de la base de datos de CVE (get_cve_info, search_cves, get_cpes, get_newest_cves, get_kev_cves, get_cves_by_epss) es completamente gratuita y no requiere una suscripción de pago de Shodan.
Licencia
MIT
Desarrollado por
Cita
Si utilizas este proyecto en tu investigación o publicaciones, cítalo de la siguiente manera:
author = {Bassem Abidi and Moudather Chelbi},
title = {Shodan MCP Server},
year = {2025},
howpublished = {https://github.com/Cyreslab-AI/shodan-mcp-server},
note = {Accessed: 2025-06-29}