WireMCP
Permite que los LLMs realicen análisis de tráfico de red en tiempo real usando tshark. Requiere que tshark de Wireshark esté instalado.
Documentación

WireMCP
WireMCP es un servidor del Protocolo de Contexto de Modelos (MCP) diseñado para dotar a los Modelos de Lenguaje de Gran Tamaño (LLMs) con capacidades de análisis de tráfico de red en tiempo real. Al aprovechar herramientas construidas sobre el tshark de Wireshark, WireMCP captura y procesa datos de red en vivo, proporcionando a los LLMs contexto estructurado para ayudar en tareas como la búsqueda de amenazas, el diagnóstico de redes y la detección de anomalías.
Características
WireMCP expone las siguientes herramientas a los clientes MCP, mejorando la comprensión de la actividad de red por parte de los LLMs:
capture_packets: Captura tráfico en vivo y devuelve datos de paquetes sin procesar en formato JSON, permitiendo a los LLMs analizar detalles a nivel de paquete (por ejemplo, direcciones IP, puertos, métodos HTTP).get_summary_stats: Proporciona estadísticas de jerarquía de protocolos, dando a los LLMs una visión general de la composición del tráfico (por ejemplo, uso de TCP vs. UDP).get_conversations: Entrega estadísticas de conversaciones TCP/UDP, permitiendo a los LLMs rastrear flujos de comunicación entre puntos finales.check_threats: Captura IPs y las verifica contra la lista negra de URLhaus, equipando a los LLMs con contexto de inteligencia de amenazas para identificar actividad maliciosa.check_ip_threats: Realiza búsquedas específicas de inteligencia de amenazas para direcciones IP concretas contra múltiples fuentes de amenazas, proporcionando datos detallados de reputación y amenazas.analyze_pcap: Analiza archivos PCAP para proporcionar datos completos de paquetes en formato JSON, permitiendo un análisis detallado posterior a la captura del tráfico de red.extract_credentials: Escanea archivos PCAP en busca de posibles credenciales de varios protocolos (HTTP Basic Auth, FTP, Telnet), ayudando en auditorías de seguridad y análisis forense.
Cómo Ayuda a los LLMs
WireMCP cierra la brecha entre los datos de red sin procesar y la comprensión de los LLMs al:
- Contextualizar el Tráfico: Convierte capturas de paquetes en vivo en salidas estructuradas (JSON, estadísticas) que los LLMs pueden analizar y razonar.
- Detección de Amenazas: Integra IOCs (actualmente URLhaus) para marcar IPs sospechosas, mejorando el análisis de seguridad impulsado por LLMs.
- Diagnósticos: Ofrece información detallada del tráfico, permitiendo a los LLMs ayudar con la resolución de problemas o la identificación de anomalías.
- Generación de Narrativas: Los LLMs pueden transformar capturas de paquetes complejas en historias coherentes, haciendo que el análisis de red sea accesible para usuarios no técnicos.
Instalación
Requisitos Previos
- Mac / Windows / Linux
- Wireshark (con
tsharkinstalado y accesible en PATH) - Node.js (v16+ recomendado)
- npm (para la instalación de dependencias)
Configuración
-
Clona el repositorio:
git clone https://github.com/0xkoda/WireMCP.git cd WireMCP -
Instala las dependencias:
npm install -
Ejecuta el servidor MCP:
node index.js
Nota: Asegúrate de que
tsharkesté en tu PATH. WireMCP lo detectará automáticamente o recurrirá a ubicaciones de instalación comunes (por ejemplo,/Applications/Wireshark.app/Contents/MacOS/tsharken macOS).
Uso con Clientes MCP
WireMCP funciona con cualquier cliente compatible con MCP. A continuación se muestran ejemplos para clientes populares:
Ejemplo 1: Cursor
Edita mcp.json en Cursor -> Configuración -> MCP:
{
"mcpServers": {
"wiremcp": {
"command": "node",
"args": [
"/ABSOLUTE_PATH_TO/WireMCP/index.js"
]
}
}
}
Ubicación (macOS): /Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json
Otros Clientes
Este MCP funcionará bien con cualquier cliente. Usa el comando node /path/to/WireMCP/index.js en la configuración del servidor MCP de tu cliente.
Ejemplo de Salida
Ejecutar check_threats podría producir:
Captured IPs:
174.67.0.227
52.196.136.253
Threat check against URLhaus blacklist:
No threats detected in URLhaus blacklist.
Ejecutar analyze_pcap en un archivo de captura:
{
"content": [{
"type": "text",
"text": "Analyzed PCAP: ./capture.pcap\n\nUnique IPs:\n192.168.0.2\n192.168.0.1\n\nProtocols:\neth:ethertype:ip:tcp\neth:ethertype:ip:tcp:telnet\n\nPacket Data:\n[{\"layers\":{\"frame.number\":[\"1\"],\"ip.src\":[\"192.168.0.2\"],\"ip.dst\":[\"192.168.0.1\"],\"tcp.srcport\":[\"1550\"],\"tcp.dstport\":[\"23\"]}}]"
}]
}
Los LLMs pueden usar estas salidas para:
- Proporcionar explicaciones en lenguaje natural de la actividad de red
- Identificar patrones y posibles problemas de seguridad
- Ofrecer recomendaciones contextuales
- Generar informes legibles para humanos
Hoja de Ruta
- Expandir Proveedores de IOC: Actualmente usa URLhaus para verificaciones de amenazas. Las actualizaciones futuras integrarán fuentes adicionales (por ejemplo, IPsum, Emerging Threats) para una cobertura más amplia.
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar una Solicitud de Extracción (Pull Request). Para cambios importantes, abre primero un issue para discutir lo que te gustaría cambiar.
Licencia
Agradecimientos
- Equipo de Wireshark/tshark por sus excelentes herramientas de análisis de paquetes
- Comunidad del Protocolo de Contexto de Modelos por el marco y las especificaciones
- URLhaus por proporcionar datos de inteligencia de amenazas