SecOps MCP
Provides access to 13+ penetration testing and security audit tools through a unified MCP interface. Enables security professionals to perform vulnerability scanning, web fuzzing, network reconnaissance, and other security assessments through containerized tools like Nuclei, Nmap, SQLMap, and FFUF.
README
🔒 SecOps MCP - Security Operations Model Context Protocol Server
SecOps MCP es un servidor MCP (Model Context Protocol) que proporciona acceso a herramientas de seguridad de pentesting y auditoría a través de una interfaz unificada y estandarizada. Optimizado para integración con n8n y ejecución directa en VPS.
🚀 Características
- 🔌 Protocolo MCP Estándar: Servidor compatible con el protocolo MCP para integración con clientes AI
- 🛠️ Herramientas de Seguridad Integradas: 13+ herramientas de pentesting y auditoría
- 📊 Salida JSON Consistente: Formato de respuesta estandarizado para todas las herramientas
- 🐳 Herramientas en Docker: Cada herramienta ejecuta en su propio contenedor Docker
- ⚡ Servidor MCP Directo: Ejecutándose directamente en VPS para máxima estabilidad
- 🔧 Fácil Extensión: Arquitectura modular para agregar nuevas herramientas
- 🎯 Integración n8n: Diseñado específicamente para flujos de automatización
🏗️ Arquitectura
┌─────────────────────────────────────────────────────────────┐
│ n8n │
│ (Tu VPS/Cloud) │
└─────────────────────┬───────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ Servidor MCP Principal │
│ (Ejecutándose en VPS) │
│ ┌─────────────────────────┐ │
│ │ FastMCP Server │ │
│ │ (Python + FastMCP) │ │
│ └─────────────────────────┘ │
└─────────────────────┬───────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ Contenedores Docker │
│ (Herramientas de Seguridad) │
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Nuclei │ │ FFUF │ │ Nmap │ │ SQLMap │ │
│ │ :8081 │ │ :8082 │ │ :8083 │ │ :8084 │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ WPScan │ │ Amass │ │Hashcat │ │ HTTPX │ │
│ │ :8085 │ │ :8086 │ │ :8087 │ │ :8088 │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │Subfinder│ │ TLSX │ │Dirsearch│ │
│ │ :8089 │ │ :8090 │ │ :8091 │ │
│ └─────────┘ └─────────┘ └─────────┘ │
└─────────────────────────────────────────────────────────────┘
🛠️ Herramientas Incluidas
| Herramienta | Descripción | Categoría | Puerto | Imagen Docker |
|---|---|---|---|---|
| Nuclei | Escáner de vulnerabilidades rápido y personalizable | Análisis de Vulnerabilidades | 8081 | projectdiscovery/nuclei:latest |
| FFUF | Fuzzer web rápido para descubrimiento de contenido | Web Fuzzing | 8082 | trickest/ffuf:latest |
| WFuzz | Fuzzer de aplicaciones web | Web Fuzzing | 8082 | trickest/ffuf:latest |
| SQLMap | Inyección SQL automática y takeover de bases de datos | Web Security | 8084 | googlesky/sqlmap:latest |
| Nmap | Exploración de red y auditoría de seguridad | Network Security | 8083 | uzyexe/nmap:latest |
| Hashcat | Recuperación avanzada de contraseñas | Password Cracking | 8087 | javydekoning/hashcat:latest |
| HTTPX | Toolkit HTTP multipropósito | Web Reconnaissance | 8088 | projectdiscovery/httpx:latest |
| Subfinder | Descubrimiento de subdominios | Reconnaissance | 8089 | projectdiscovery/subfinder:latest |
| TLSX | Escaneo y análisis TLS/SSL | SSL/TLS Security | 8090 | projectdiscovery/tlsx:latest |
| XSStrike | Detección y explotación avanzada de XSS | Web Security | 8082 | trickest/ffuf:latest |
| Amass | Mapeo de superficie de ataque y descubrimiento de assets | Reconnaissance | 8086 | securecodebox/amass:latest |
| Dirsearch | Escáner de rutas web | Directory Enumeration | 8082 | trickest/ffuf:latest |
| WPScan | Escáner de vulnerabilidades de WordPress | CMS Security | 8085 | wpscanteam/wpscan:latest |
📋 Requisitos Previos
- Python 3.13+
- FastMCP 2.12.0+
- Docker y Docker Compose
- VPS con acceso root/sudo
🚀 Instalación
🐧 Instalación en VPS (Recomendada)
# Clonar el repositorio
git clone https://github.com/aisacAdmin/secops-mcp2.0.git
cd secops-mcp2.0
# Instalación automática completa
./scripts/install-vps.sh install
# O instalación por pasos
./scripts/install-vps.sh python # Python y dependencias
./scripts/install-vps.sh docker # Docker y contenedores
./scripts/install-vps.sh systemd # Servicio systemd
🐍 Instalación Manual
# Clonar el repositorio
git clone https://github.com/aisacAdmin/secops-mcp2.0.git
cd secops-mcp2.0
# Crear entorno virtual
python3 -m venv .venv
source .venv/bin/activate # Linux/macOS
# .venv\Scripts\activate # Windows
# Instalar dependencias
pip install -e .
# o
uv sync
🎯 Uso
Iniciar el Servidor MCP
# Opción 1: Ejecutar directamente
python main.py
# Opción 2: Usar FastMCP CLI
fastmcp run main.py:mcp --transport http --host 0.0.0.0 --port 8080
# Opción 3: Usar servicio systemd (VPS)
sudo systemctl start secops-mcp
sudo systemctl status secops-mcp
Gestionar Contenedores Docker
# Iniciar todas las herramientas
docker-compose up -d
# Ver estado
./scripts/manage-containers.sh status
# Ver logs de una herramienta
./scripts/manage-containers.sh logs nuclei
# Verificar salud
./scripts/manage-containers.sh health
Configuración del Cliente MCP
El servidor estará disponible en:
- Host:
0.0.0.0(VPS) o127.0.0.1(local) - Puerto:
8080 - Transporte: HTTP
🔌 Integración con n8n
Configurar n8n para usar MCP
En tu instancia de n8n, configura el servidor MCP:
{
"mcp": {
"servers": [
{
"name": "secops-mcp",
"url": "http://tu-vps-ip:8080",
"transport": "http"
}
]
}
}
Nodos MCP Disponibles en n8n
Una vez configurado, tendrás acceso a todos los nodos de herramientas de seguridad directamente en n8n.
📖 Ver documentación completa de integración con n8n: N8N_INTEGRATION.md
🔧 Configuración de Herramientas
Nuclei
# Escaneo básico
nuclei_scan_wrapper(
target="example.com",
templates=["cves", "vulnerabilities"],
severity="high",
output_format="json"
)
FFUF
# Fuzzing de directorios
ffuf_wrapper(
url="https://example.com/FUZZ",
wordlist="/usr/share/wordlists/dirb/common.txt",
filter_code="404"
)
Nmap
# Escaneo de puertos
nmap_wrapper(
target="192.168.1.1",
ports="1-1000",
scan_type="sV"
)
📊 Formato de Respuesta
Todas las herramientas devuelven respuestas en formato JSON consistente:
{
"success": true,
"tool": "nuclei",
"target": "example.com",
"timestamp": "2024-01-15T10:30:00Z",
"results": {
"vulnerabilities": [...],
"scan_time": "2.5s",
"templates_loaded": 150
},
"metadata": {
"version": "1.0.0",
"execution_time": "2.5s"
}
}
🏗️ Estructura del Proyecto
secops-mcp/
├── main.py # Servidor MCP principal
├── tools/ # Módulos de herramientas (legacy)
├── scripts/ # Scripts de gestión
│ ├── install-vps.sh # Instalador para VPS
│ └── manage-containers.sh # Gestor de contenedores
├── data/ # Directorios de datos persistentes
├── docker-compose.yml # Configuración de contenedores
├── pyproject.toml # Configuración del proyecto
├── env.example # Variables de entorno
├── README.md # Este archivo
├── DOCKER_ARCHITECTURE.md # Documentación de arquitectura Docker
└── N8N_INTEGRATION.md # Guía de integración con n8n
🔒 Consideraciones de Seguridad
⚠️ ADVERTENCIA: Este proyecto es para auditorías de seguridad autorizadas únicamente.
- ✅ Siempre obtén autorización antes de escanear sistemas
- ✅ Respeta robots.txt y términos de servicio
- ✅ Usa parámetros apropiados para evitar sobrecarga
- ✅ Mantén confidencialidad de los resultados
- ❌ Nunca uses para actividades maliciosas o no autorizadas
🧪 Testing
# Verificar herramientas disponibles
python -c "from main import DOCKER_TOOLS; print('Herramientas configuradas:', list(DOCKER_TOOLS.keys()))"
# Verificar estado de herramientas
curl http://localhost:8080/health
# Verificar contenedores Docker
docker-compose ps
🤝 Contribuir
- Fork el repositorio
- Crea una rama para tu feature (
git checkout -b feature/AmazingFeature) - Commit tus cambios (
git commit -m 'Add some AmazingFeature') - Push a la rama (
git push origin feature/AmazingFeature) - Abre un Pull Request
Guías de Contribución
- Mantén el formato de código consistente
- Agrega tests para nuevas funcionalidades
- Documenta nuevas herramientas
- Sigue las mejores prácticas de seguridad
📝 Roadmap
- [x] Arquitectura Docker: Herramientas en contenedores independientes
- [x] Servidor MCP directo: Ejecución en VPS sin Docker
- [x] Integración n8n: Nodos MCP para flujos de automatización
- [ ] Tests automatizados para todas las herramientas
- [ ] API REST adicional al protocolo MCP
- [ ] Dashboard web para visualización de resultados
- [ ] Integración con SIEM y herramientas de gestión de incidentes
- [ ] Plugin system para herramientas personalizadas
📄 Licencia
Este proyecto está licenciado bajo la MIT License - ver el archivo LICENSE para detalles.
🙏 Agradecimientos
- FastMCP por el framework MCP de alto rendimiento
- ProjectDiscovery por herramientas como Nuclei, FFUF, HTTPX
- OWASP por Amass y otras herramientas de seguridad
- Comunidad de seguridad por contribuciones y soporte
📞 Soporte
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentación:
<div align="center"> <p><strong>🔒 SecOps MCP</strong> - Potenciando operaciones de seguridad con IA y n8n</p> <p>Hecho con ❤️ por la comunidad de seguridad</p> </div>
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.