
Servidor MCP de pruebas de penetración impulsado por IA
"En la mitología japonesa, el Tengu es un feroz espíritu de la montaña — maestro estratega, guerrero y entrenador de samuráis. En ciberseguridad, te guía a través de cada fase de la caza."
Desde el reconocimiento hasta el informe — pentesting asistido por IA en un solo comando.
Tengu es un servidor MCP que convierte a Claude en un copiloto de pruebas de penetración. Orquesta 80 herramientas de seguridad — desde Nmap hasta Metasploit — con controles de seguridad integrados, registro de auditoría e informes profesionales.
Usa a Claude como un copiloto de pentest interactivo — tú diriges el compromiso, Claude selecciona las herramientas adecuadas y las encadena automáticamente.
git clone https://github.com/rfunix/tengu.git && cd tengu make docker-build make docker-up
Conecte Claude Code al servidor en ejecución:```bash
claude mcp add --transport sse tengu http://localhost:8000/sse
Luego pídele a Claude: Do a full pentest on http://192.168.1.100
Claude encadena herramientas automáticamente: validate_target → whatweb → nmap → nikto →
nuclei → sqlmap → correlate_findings → generate_report
| Comando | Lo que inicia |
|---|---|
make docker-up | Servidor Tengu MCP (:8000) |
make docker-lab | + Juice Shop, DVWA (objetivos seguros de práctica) |
make docker-pentest | + Metasploit, OWASP ZAP (objetivos del mundo real) |
make docker-full | + Metasploit, ZAP, y objetivos de laboratorio |
Escanea objetivos personalizados sin editar archivos:```bash TENGU_ALLOWED_HOSTS="192.168.1.0/24,10.0.0.0/8" make docker-up
### Niveles de imagen
Elige el tamaño adecuado para tu caso de uso:
| Nivel | Tamaño | Herramientas MCP | Caso de uso |
|------|------|-----------|----------|
| `minimal` | ~480MB | 17 | Análisis ligero, investigación de CVE, informes |
| `core` | ~7GB | 47 | Kit completo de pentest (predeterminado) |
| `full` | ~8GB | 80 | Todo + AD, inalámbrico, sigilo/OPSEC |```bash
TENGU_TIER=minimal make docker-build # lightweight
TENGU_TIER=core make docker-build # default
TENGU_TIER=full make docker-build # everything
Todos los niveles incluyen las 35 indicaciones y 20 recursos — solo las herramientas binarias difieren.
Requisitos previos: Python 3.12+, uv, Kali Linux (recomendado)```bash
git clone https://github.com/rfunix/tengu.git && cd tengu
uv sync
make install-tools
uv run tengu
Conecta Claude Code:```bash
claude mcp add --scope user tengu -- uv run --directory /path/to/tengu tengu
Configure los destinos permitidos en tengu.toml:```toml
[targets]
allowed_hosts = ["192.168.1.0/24", "example.com"]
Para Claude Desktop, configuración remota de VM/SSE y configuraciones avanzadas, consulta [docs/deployment-guide.md](https://github.com/rfunix/tengu/blob/main/docs/deployment-guide.md).
</details>
### Referencia de Configuración```toml
[targets]
# REQUIRED: Only these hosts will be scanned
allowed_hosts = ["192.168.1.0/24", "example.com"]
blocked_hosts = [] # Always blocked, even if in allowed_hosts
[stealth]
enabled = false # Route traffic through Tor/proxy
[stealth.proxy]
enabled = false
type = "socks5h"
host = "127.0.0.1"
port = 9050
[osint]
shodan_api_key = "" # Required for shodan_lookup
[tools.defaults]
scan_timeout = 300 # seconds
Consulta docs/configuration-reference.md para la referencia completa.
Realiza una prueba de penetración completamente autónoma sin invocación manual de herramientas. El agente utiliza Claude como su cerebro estratégico y Tengu como su conjunto de herramientas de ejecución, siguiendo la metodología PTES desde el reconocimiento hasta la generación de informes.
cp .env.example .env
**Objetivos del laboratorio (Juice Shop, DVWA):**```bash
make docker-lab
make docker-agent # default model (sonnet)
make docker-agent-haiku # cheaper — claude-haiku-4-5, max_tokens=1024
make docker-agent-sonnet # balanced — claude-sonnet-4-6, max_tokens=4096
Pentest del mundo real (Tengu + MSF + ZAP, sin contenedores de laboratorio):```bash make docker-pentest make docker-agent
**Ver informes en el navegador:**```bash
make docker-report-view # http://localhost:8888 — styled HTML, all reports
make docker-report-browse # same, auto-opens browser
REPORT_PORT=9999 make docker-report-view # custom port
Sin Docker:```bash uv sync --extra agent python autonomous_tengu.py 192.168.1.100 --scope 192.168.1.0/24 --type blackbox