Network Monitor MCP Server
Un servidor para monitoreo de paquetes de red en tiempo real y análisis de seguridad.
Documentación
Network Monitor MCP Server
Un servidor de Protocolo de Contexto de Modelo (MCP) para monitoreo de paquetes de red en tiempo real y análisis de seguridad. Esta herramienta permite a Claude inspeccionar el tráfico de red e identificar posibles amenazas de seguridad.
Características
- Captura de paquetes en tiempo real desde interfaces WiFi
- Análisis de protocolos (TCP, UDP, DNS, HTTP/HTTPS)
- Detección de amenazas de seguridad:
- Detección de escaneo de puertos
- Consultas DNS maliciosas
- Patrones de exfiltración de datos
- Detección de anomalías
- Herramientas MCP para integración con Claude:
capture_start- Iniciar captura de paquetescapture_stop- Detener capturaget_packets- Recuperar y filtrar paquetesanalyze_traffic- Estadísticas de tráficoget_suspicious- Análisis de amenazas de seguridad
Requisitos previos
- Go 1.21 o superior
- Archivos de desarrollo de libpcap
- Acceso root/sudo para captura de paquetes
Instalación de libpcap
macOS:
brew install libpcap
Linux:
# Ubuntu/Debian
sudo apt-get install libpcap-dev
# RHEL/CentOS
sudo yum install libpcap-devel
Instalación
- Clonar el repositorio:
git clone https://github.com/skapa-xyz/network-monitor-mcp.git
cd network-monitor-mcp
- Instalar dependencias:
go mod download
- Compilar el servidor:
go build -o network-monitor-mcp
Uso
Ejecutar el servidor MCP
El servidor requiere privilegios de root para la captura de paquetes:
sudo ./network-monitor-mcp
Configuración de Claude Desktop
⚠️ ADVERTENCIA DE SEGURIDAD IMPORTANTE:
Claude Desktop no puede ejecutar comandos directamente con sudo. Para usar este servidor MCP con Claude Desktop, tienes dos opciones:
Opción 1: Configuración de sudoers (NO RECOMENDADO para producción)
Puedes configurar sudo para permitir que el binario network-monitor-mcp se ejecute sin solicitar contraseña. Esto tiene IMPLICACIONES DE SEGURIDAD SIGNIFICATIVAS y solo debe hacerse en entornos de desarrollo aislados donde la seguridad no sea una preocupación.
-
Editar el archivo sudoers:
sudo visudo -
Agregar la siguiente línea (reemplazar usuario y ruta):
username ALL=(ALL) NOPASSWD: /path/to/network-monitor-mcp -
Actualizar la configuración de Claude Desktop (
~/Library/Application Support/Claude/claude_desktop_config.jsonen macOS):{ "mcpServers": { "network-monitor": { "command": "/path/to/network-monitor-mcp" } } }
⚠️ RIESGOS DE SEGURIDAD:
- Esto otorga acceso root sin contraseña al binario
- Si el binario se ve comprometido, un atacante obtiene acceso root
- La captura de paquetes de red puede exponer datos sensibles
- Usar solo en entornos de desarrollo/pruebas aislados
- Nunca usar esta configuración en sistemas de producción o máquinas con datos sensibles
Opción 2: Ejecutar Claude Desktop con privilegios elevados (TAMPOCO RECOMENDADO)
Podrías ejecutar Claude Desktop con sudo, pero esto otorga acceso root a toda la aplicación, lo que presenta riesgos de seguridad aún mayores.
Enfoque recomendado
Para uso en producción, considera:
- Ejecutar el servidor MCP como un servicio del sistema con permisos adecuados
- Usar un sistema de monitoreo dedicado con controles de acceso apropiados
- Implementar mecanismos adecuados de autenticación y autorización
Ejemplos de comandos de Claude
-
Iniciar monitoreo de tu interfaz WiFi:
Use the capture_start tool to monitor interface "en0" with a filter for TCP traffic -
Verificar actividad sospechosa:
Use get_suspicious to show any detected security threats -
Analizar patrones de tráfico:
Use analyze_traffic to show network statistics and connection patterns -
Filtrar paquetes específicos:
Use get_packets to show all DNS queries or traffic to port 443
Consideraciones de seguridad
- Esta herramienta requiere acceso root para capturar paquetes
- Usar solo en redes que poseas o para las que tengas permiso de monitoreo
- Los datos capturados pueden contener información sensible
- La herramienta está diseñada para monitoreo de seguridad legítimo en entornos empresariales
Arquitectura
network-monitor-mcp/
├── main.go # Entry point
├── mcp/ # MCP protocol implementation
│ ├── server.go # MCP server core
│ └── handlers.go # Tool handlers
├── capture/ # Packet capture functionality
│ ├── sniffer.go # Packet capture engine
│ └── analyzer.go # Traffic analysis
└── security/ # Security detection
└── detector.go # Threat detection algorithms
Solución de problemas
-
Errores de permiso denegado:
- Asegúrate de estar ejecutando con sudo
- Verifica la instalación de libpcap
-
Interfaz no encontrada:
- Listar interfaces disponibles:
ifconfigoip link - Interfaces WiFi comunes:
en0(macOS),wlan0(Linux)
- Listar interfaces disponibles:
-
No se capturaron paquetes:
- Verifica que la interfaz esté activa
- Revisa la sintaxis de tu filtro BPF
- Asegúrate de que haya tráfico de red para capturar
Desarrollo
Para contribuir o modificar:
- Seguir las mejores prácticas de Go
- Agregar pruebas para nuevas funciones
- Actualizar la documentación
- Probar con Claude Desktop antes de enviar
Licencia
Este proyecto es solo para monitoreo de seguridad autorizado. Úsalo de manera responsable y en cumplimiento con todas las leyes y regulaciones aplicables.