Skip to main content
Glama

VirusTotal MCP Server

by emeryray2002

Servidor MCP de VirusTotal

Un servidor de Protocolo de Contexto de Modelo (MCP) para consultar la API de VirusTotal . Este servidor proporciona herramientas integrales de análisis de seguridad con obtención automática de datos de relaciones. Se integra a la perfección con aplicaciones compatibles con MCP, como Claude Desktop .

Inicio rápido (por determinar)

Instalación mediante herrería

Para instalar virustotal-mcp para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @emeryray2002/virustotal-mcp --client claude

Instalación manual

Por determinar

Características

  • Informes de análisis completos : cada herramienta de análisis obtiene automáticamente datos de relación relevantes junto con el informe básico, lo que proporciona una descripción general de seguridad completa en una sola solicitud.
  • Análisis de URL : informes de seguridad con obtención automática de dominios contactados, archivos descargados y actores de amenazas
  • Análisis de archivos : análisis detallado de hashes de archivos, incluidos comportamientos, archivos descartados y conexiones de red
  • Análisis de IP : informes de seguridad con datos históricos, resoluciones y amenazas relacionadas
  • Análisis de dominio : información DNS, datos WHOIS, certificados SSL y subdominios
  • Análisis detallado de relaciones : herramientas dedicadas para consultar tipos específicos de relaciones con soporte de paginación
  • Búsqueda avanzada : capacidades de búsqueda de VT Intelligence para consultas complejas en el conjunto de datos de VirusTotal
  • Formato enriquecido : categorización y presentación claras de los resultados del análisis y los datos de relación

Herramientas

Herramientas de informes (con obtención automática de relaciones)

1. Herramienta de informes de URL

  • Nombre: get_url_report
  • Descripción: Obtenga un informe completo de análisis de URL que incluye resultados de escaneo de seguridad y relaciones clave (archivos en comunicación, dominios/IP contactados, archivos descargados, redirecciones, actores de amenazas)
  • Parámetros:
    • url (obligatorio): La URL a analizar
  • Ejemplo:
await get_url_report(url="http://example.com/suspicious")

2. Herramienta de informes de archivos

  • Nombre: get_file_report
  • Descripción: Obtenga un informe completo de análisis de archivos utilizando su hash (MD5/SHA-1/SHA-256). Incluye resultados de detección, propiedades de archivo y relaciones clave (comportamientos, archivos eliminados, conexiones de red, contenido incrustado, actores de amenazas).
  • Parámetros:
    • hash (obligatorio): hash MD5, SHA-1 o SHA-256 del archivo
  • Ejemplo:
await get_file_report(hash="44d88612fea8a8f36de82e1278abb02f")

3. Herramienta de informes de IP

  • Nombre: get_ip_report
  • Descripción: Obtenga un informe completo de análisis de direcciones IP que incluye geolocalización, datos de reputación y relaciones clave (archivos de comunicación, certificados históricos/WHOIS, resoluciones)
  • Parámetros:
    • ip (obligatorio): dirección IP a analizar
  • Ejemplo:
await get_ip_report(ip="8.8.8.8")

4. Herramienta de informes de dominio

  • Nombre: get_domain_report
  • Descripción: Obtenga un informe de análisis de dominio completo que incluye registros DNS, datos WHOIS y relaciones clave (certificados SSL, subdominios, datos históricos)
  • Parámetros:
    • domain (obligatorio): Nombre de dominio a analizar
  • Ejemplo:
await get_domain_report(domain="example.com")

Herramientas de relación (para un análisis detallado)

1. Herramienta de relación de URL

  • Nombre: get_url_relationship
  • Descripción: Consulta un tipo de relación específico para una URL con soporte de paginación
  • Parámetros:
    • url (obligatorio): La URL para obtener las relaciones
    • relationship (obligatorio): Tipo de relación a consultar
      • Relaciones disponibles: análisis, comentarios, archivos_en_comunicación, dominios_contactados, IP_contactadas, archivos_descargados, gráficos, última_dirección_IP_de_servicio, ubicación_de_red, archivos_de_referencia, URL_de_referencia, URL_de_redireccionamiento, redirecciones_a, comentarios_relacionados, referencias_relacionadas, actores_de_amenaza_relacionados, envíos
    • limit (opcional, predeterminado: 10): número máximo de objetos relacionados para recuperar (1-40)
    • cursor (opcional): Cursor de continuación para paginación
  • Ejemplo:
await get_url_relationship( url="http://example.com/suspicious", relationship="communicating_files", limit=20 )

2. Herramienta de relación de archivos

  • Nombre: get_file_relationship
  • Descripción: Consulta un tipo de relación específico para un archivo con soporte de paginación
  • Parámetros:
    • hash (obligatorio): hash MD5, SHA-1 o SHA-256 del archivo
    • relationship (obligatorio): Tipo de relación a consultar
      • Relaciones disponibles: análisis, comportamientos, archivos_agrupados, hijos_carbonblack, padres_carbonblack, archivos_agrupados_cifrados, padres_cifrados, pistas, colecciones, comentarios, padres_comprimidos, dominios_contactados, IPs_contactadas, URLs_contactadas, archivos_eliminados, adjuntos_de_correo_electrónico, padres_de_correo_electrónico, dominios_incrustados, IPs_incrustadas, URLs_incrustadas, padres_de_ejecución, gráficos, dominios_itw, IPs_itw, URLs_itw, dominios_patrón_memoria, IPs_patrón_memoria, URLs_patrón_memoria, hijos_superpuestos, padres_superpuestos, hijos_pcap, padres_pcap, hijos_recursos_pe, padres_recursos_pe, referencias_relacionadas, actores_de_amenaza relacionados, archivos_similares, envíos, capturas de pantalla, URLs_para_js_incrustados, votos
    • limit (opcional, predeterminado: 10): número máximo de objetos relacionados para recuperar (1-40)
    • cursor (opcional): Cursor de continuación para paginación
  • Ejemplo:
await get_file_relationship( hash="44d88612fea8a8f36de82e1278abb02f", relationship="behaviours", limit=20 )

3. Herramienta de relación de propiedad intelectual

  • Nombre: get_ip_relationship
  • Descripción: Consulta un tipo de relación específico para una dirección IP con soporte de paginación
  • Parámetros:
    • ip (obligatorio): dirección IP a analizar
    • relationship (obligatorio): Tipo de relación a consultar
      • Relaciones disponibles: comentarios, archivos_comunicados, archivos_descargados, gráficos, certificados_ssl_históricos, whois_histórico, comentarios_relacionados, referencias_relacionadas, actores_de_amenaza_relacionados, archivos_de_referencia, resoluciones, URL
    • limit (opcional, predeterminado: 10): número máximo de objetos relacionados para recuperar (1-40)
    • cursor (opcional): Cursor de continuación para paginación
  • Ejemplo:
await get_ip_relationship( ip="8.8.8.8", relationship="communicating_files", limit=20 )

4. Herramienta de relación de dominios

  • Nombre: get_domain_relationship
  • Descripción: Consulta un tipo de relación específico para un dominio con soporte de paginación
  • Parámetros:
    • domain (obligatorio): Nombre de dominio a analizar
    • relationship (obligatorio): Tipo de relación a consultar
      • Relaciones disponibles: registros_caa, registros_cname, comentarios, archivos_en_comunicación, archivos_descargados, certificados_ssl_históricos, whois_histórico, padre_inmediato, registros_mx, registros_ns, padre, archivos_de_referencia, comentarios_relacionados, referencias_relacionadas, actores_de_amenaza_relacionados, resoluciones, registros_soa, hermanos, subdominios, URL, votos_de_usuario
    • limit (opcional, predeterminado: 10): número máximo de objetos relacionados para recuperar (1-40)
    • cursor (opcional): Cursor de continuación para paginación
  • Ejemplo:
await get_domain_relationship( domain="example.com", relationship="historical_ssl_certificates", limit=20 )

5. Herramienta de búsqueda avanzada

  • Nombre: advanced_corpus_search
  • Descripción: Realice búsquedas avanzadas en el conjunto de datos de VirusTotal utilizando la sintaxis de consulta de VT Intelligence
  • Parámetros:
    • query (obligatoria): La cadena de consulta de búsqueda de VT Intelligence
    • limit (opcional, predeterminado: 20): número máximo de resultados a devolver por página
    • cursor (opcional): Cursor de continuación para paginación
    • descriptors_only (opcional): si es verdadero, recupera solo descriptores de objetos en lugar de objetos completos
  • Ejemplo:
await advanced_corpus_search( query="type:peexe size:100kb+ positives:5+", limit=20, cursor=None )

Requisitos

  • Python >= 3.11
  • Una clave API de VirusTotal válida
  • Paquetes de Python necesarios:
    • aiohttp >= 3.9.0
    • mcp[cli] >= 1.4.1
    • python-dotenv >= 1.0.0
    • extensiones de escritura >= 4.8.0

Manejo de errores

El servidor incluye un manejo integral de errores para:

  • Claves API no válidas
  • Limitación de velocidad
  • Errores de red
  • Parámetros de entrada no válidos
  • Formatos hash no válidos
  • Formatos de IP no válidos
  • Formatos de URL no válidos
  • Tipos de relación no válidos
  • Errores de paginación

Desarrollo

Para ejecutar en modo de desarrollo:

python -m virustotal_mcp

Contribuyendo

  1. Bifurcar el repositorio
  2. Crear una rama de características ( git checkout -b feature/amazing-feature )
  3. Confirme sus cambios ( git commit -m 'Add amazing feature' )
  4. Empujar a la rama ( git push origin feature/amazing-feature )
  5. Abrir una solicitud de extracción

Licencia

Este proyecto está licenciado bajo la Licencia Apache 2.0: consulte el archivo de LICENCIA para obtener más detalles.

Expresiones de gratitud

  • VirusTotal por proporcionar la API y la plataforma de inteligencia de amenazas
  • El proyecto MCP para el framework de servidor
  • Colaboradores y mantenedores

Apoyo

Para obtener ayuda, por favor:

  1. Consulte la documentación
  2. Buscar problemas existentes
  3. Crea un nuevo problema si es necesario

Seguridad

  • Nunca envíe claves API ni credenciales confidenciales
  • Utilice variables de entorno para la configuración
  • Siga las mejores prácticas de seguridad al manejar datos de inteligencia de amenazas
-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Proporciona herramientas de análisis de seguridad integrales para consultar la API de VirusTotal, lo que permite generar informes de seguridad detallados sobre URL, archivos, direcciones IP y dominios con obtención automática de datos de relación.

  1. Inicio rápido (por determinar)
    1. Instalación mediante herrería
    2. Instalación manual
  2. Características
    1. Herramientas
      1. Herramientas de informes (con obtención automática de relaciones)
      2. Herramienta de informes de URL
      3. Herramienta de informes de archivos
      4. Herramienta de informes de IP
      5. Herramienta de informes de dominio
      6. Herramientas de relación (para un análisis detallado)
      7. Herramienta de relación de URL
      8. Herramienta de relación de archivos
      9. Herramienta de relación de propiedad intelectual
      10. Herramienta de relación de dominios
      11. Herramienta de búsqueda avanzada
    2. Requisitos
      1. Manejo de errores
        1. Desarrollo
          1. Contribuyendo
            1. Licencia
              1. Expresiones de gratitud
                1. Apoyo
                  1. Seguridad

                    Related MCP Servers

                    • A
                      security
                      A
                      license
                      A
                      quality
                      A MCP server for querying the VirusTotal API. This server provides tools for scanning URLs, analyzing file hashes, and retrieving IP address reports.
                      Last updated -
                      7
                      44
                      17
                      TypeScript
                      MIT License
                      • Apple
                    • -
                      security
                      A
                      license
                      -
                      quality
                      Provides Trivy security scanning capabilities through a standardized interface, allowing users to scan projects for vulnerabilities and automatically fix them by updating dependencies.
                      Last updated -
                      2
                      Python
                      MIT License
                      • Apple
                    • -
                      security
                      F
                      license
                      -
                      quality
                      A Model Context Protocol server that provides access to Shodan and VirusTotal APIs for cybersecurity analysis, enabling analysts to perform network intelligence operations including host lookups, vulnerability analysis, and threat intelligence gathering.
                      Last updated -
                      1
                      TypeScript
                    • A
                      security
                      A
                      license
                      A
                      quality
                      Provides access to Shodan API functionality, enabling AI assistants to query information about internet-connected devices for cybersecurity research and threat intelligence.
                      Last updated -
                      5
                      3
                      JavaScript
                      MIT License
                      • Linux
                      • Apple

                    View all related MCP servers

                    MCP directory API

                    We provide all the information about MCP servers via our MCP API.

                    curl -X GET 'https://glama.ai/api/mcp/v1/servers/emeryray2002/virustotal-mcp'

                    If you have feedback or need assistance with the MCP directory API, please join our Discord server