Servidor MCP de YaraFlux
Un servidor de Protocolo de Contexto de Modelo (MCP) para escaneo YARA, que proporciona a los LLM capacidades para analizar archivos con reglas YARA.
📋 Descripción general
El servidor MCP de YaraFlux permite a los asistentes de IA realizar análisis de amenazas basados en reglas de YARA mediante la interfaz estandarizada del Protocolo de Contexto de Modelo. El servidor integra el análisis de YARA con los asistentes de IA modernos, lo que facilita la gestión integral de reglas, el análisis seguro y el análisis detallado de resultados mediante una arquitectura modular.
🧩 Descripción general de la arquitectura
YaraFlux sigue una arquitectura modular que separa las preocupaciones entre:
- Capa de integración MCP : gestiona la comunicación con los asistentes de IA
- Capa de implementación de herramientas : implementa la funcionalidad de escaneo y gestión de YARA
- Capa de abstracción de almacenamiento : proporciona opciones de almacenamiento flexibles
- Integración de YARA Engine : aprovecha YARA para el escaneo y la gestión de reglas
Para obtener diagramas de arquitectura detallados, consulte la Documentación de arquitectura .
✨ Características
- 🔄 Arquitectura modular
- Separación limpia de la integración de MCP, la implementación de herramientas y el almacenamiento
- Análisis de parámetros estandarizados y manejo de errores
- Backend de almacenamiento flexible con opciones locales y S3/MinIO
- 🤖 Integración MCP
- 19 herramientas MCP integradas para una funcionalidad integral
- Optimizado para la integración con Claude Desktop
- Análisis directo de archivos desde dentro de las conversaciones
- Compatible con la última especificación del protocolo MCP
- 🔍 Escaneo YARA
- Escaneo de contenido de archivos y URL
- Información detallada del partido con contexto
- Almacenamiento y recuperación de resultados de escaneo
- Motor de escaneo con rendimiento optimizado
- 📝 Gestión de reglas
- Crear, leer, actualizar, eliminar reglas de YARA
- Validación de reglas con informes detallados de errores
- Importar reglas desde el repositorio de ThreatFlux
- Categorización por fuente (personalizada vs. comunitaria)
- 📊 Análisis de archivos
- Vista hexadecimal para análisis binario
- Extracción de cadenas con parámetros configurables
- Metadatos de archivo e información hash
- Carga y almacenamiento seguros de archivos
- 🔐 Funciones de seguridad
- Autenticación JWT para acceso a API
- Ejecución de contenedor no raíz
- Aislamiento de almacenamiento seguro
- Controles de acceso configurables
🚀 Inicio rápido
Uso de la imagen de Docker
Instalación desde la fuente
🧩 Integración de escritorio de Claude
YaraFlux está diseñado para una integración perfecta con Claude Desktop a través del Protocolo de Contexto de Modelo.
- Construya la imagen de Docker:
- Agregar a la configuración de Claude Desktop (
~/Library/Application Support/Claude/claude_desktop_config.json
):
- Reinicie Claude Desktop para activar el servidor.
🛠️ Herramientas MCP disponibles
YaraFlux expone 19 herramientas MCP integradas:
Herramientas de gestión de reglas
- list_yara_rules : Lista de reglas YARA disponibles con opciones de filtrado
- get_yara_rule : obtiene el contenido y los metadatos de una regla YARA específica
- validate_yara_rule : Valida la sintaxis de la regla YARA con informes detallados de errores
- add_yara_rule : Crea una nueva regla YARA
- update_yara_rule : Actualizar una regla YARA existente
- delete_yara_rule : Eliminar una regla YARA
- import_threatflux_rules : Importar reglas desde el repositorio de GitHub de ThreatFlux
Herramientas de escaneo
- scan_url : escanear contenido de una URL con reglas YARA especificadas
- scan_data : escanea los datos proporcionados (codificados en base64) con las reglas especificadas
- get_scan_result : recupera resultados detallados de un escaneo anterior
Herramientas de gestión de archivos
- upload_file : Sube un archivo para analizarlo o escanearlo
- get_file_info : Obtener metadatos sobre un archivo cargado
- list_files : Lista de archivos cargados con paginación y ordenación
- delete_file : Eliminar un archivo cargado
- extract_strings : Extrae cadenas ASCII/Unicode de un archivo
- get_hex_view : Obtener una vista hexadecimal del contenido del archivo
- download_file : Descargar un archivo cargado
Herramientas de gestión de almacenamiento
- get_storage_info : Obtener estadísticas de uso del almacenamiento
- clean_storage : elimina archivos antiguos para liberar espacio de almacenamiento
📚 Documentación
La documentación completa está disponible en el directorio docs/ :
- Diagramas de arquitectura : representación visual de la arquitectura del sistema
- Análisis de código : estructura detallada del código y recomendaciones
- Guía de instalación : instrucciones de configuración detalladas
- Guía de uso de la CLI : documentación de la interfaz de línea de comandos
- Referencia de API : puntos finales y uso de la API REST
- Guía de reglas de YARA : creación y gestión de reglas de YARA
- Integración MCP - Detalles de la integración del Protocolo de Contexto del Modelo
- Gestión de archivos : capacidades de manejo de archivos
- Ejemplos - Ejemplos de uso en el mundo real
🗂️ Estructura del proyecto
🧪 Desarrollo
Desarrollo local
Flujos de trabajo de CI/CD
Este proyecto utiliza GitHub Actions para la integración y la implementación continuas:
- Pruebas CI : se ejecutan en cada solicitud de inserción y extracción a las ramas principal y de desarrollo
- Ejecuta pruebas, formateo, revisión de errores y verificación de tipos.
- Crea y prueba imágenes de Docker
- Carga informes de cobertura de pruebas a Codecov
- Incremento automático de versión : incrementa automáticamente la versión al enviarla a la rama principal
- Se actualiza la versión en pyproject.toml, setup.py y Dockerfile
- Crea una etiqueta git para la nueva versión
- Publicar versión : se activa después de un incremento automático de versión exitoso
- Crea imágenes de Docker para múltiples etapas
- Genera notas de lanzamiento a partir de confirmaciones de Git
- Crea una versión de GitHub con artefactos
- Publica imágenes de Docker en Docker Hub
Estos flujos de trabajo garantizan la calidad del código y automatizan el proceso de lanzamiento.
Comprobaciones de estado
Las siguientes comprobaciones de estado se ejecutan en solicitudes de extracción:
- ✅ Verificación de formato : garantiza que el código siga los estándares de formato Black e isort
- ✅ Verificación de pelusa : valida la calidad del código y el cumplimiento de los estándares de codificación
- ✅ Ejecución de pruebas : ejecuta el conjunto de pruebas completo para verificar la funcionalidad
- ✅ Informe de cobertura : garantiza una cobertura de prueba suficiente de la base de código
🌐 Documentación de la API
Documentación API interactiva disponible en:
- Interfaz de usuario Swagger: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
Para obtener documentación detallada de la API, consulte Referencia de API .
🤝 Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
- Bifurcar el repositorio
- Crea tu rama de funciones (
git checkout -b feature/amazing-feature
) - Confirme sus cambios (
git commit -m 'Add some amazing feature'
) - Empujar a la rama (
git push origin feature/amazing-feature
) - Abrir una solicitud de extracción
📄 Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
💖 Dona o pide funciones
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Un servidor de protocolo de contexto de modelo que permite a los asistentes de IA realizar análisis de amenazas basados en reglas YARA en archivos y URL, lo que admite una gestión integral de reglas y resultados de escaneo detallados.
- 📋 Descripción general
- 🧩 Descripción general de la arquitectura
- ✨ Características
- 🚀 Inicio rápido
- Clone the repository
- Build the Docker image
- Run the container
- Clone the repository
- Install dependencies (requires Python 3.13+)
- Run the server
- Set up development environment
- Run tests
- Code quality checks
- Generate test coverage report
- Run development server
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that enables AI assistants to search and retrieve information about security exploits and vulnerabilities from the Exploit Database, enhancing cybersecurity research capabilities.Last updated -4TypeScriptMIT License
- -securityFlicense-qualityA comprehensive Model Context Protocol server implementation that enables AI assistants to interact with file systems, databases, GitHub repositories, web resources, and system tools while maintaining security and control.Last updated -16TypeScript
- -securityFlicense-qualityA Model Context Protocol server that extends AI capabilities by providing file system access and management functionalities to Claude or other AI assistants.Last updated -3TypeScript
- -securityAlicense-qualityA Model Context Protocol server that provides AI agents with secure access to local filesystem operations, enabling reading, writing, and managing files through a standardized interface.Last updated -1603TypeScriptApache 2.0