lliwi

MCP OSINT Server

Community lliwi
Updated

OSINT MCP server

MCP OSINT Server

Servidor MCP para agentes IA que permite ejecutar tareas OSINT de forma controlada, trazable y segura sobre una imagen Docker de Kali Linux.

Compatible con Claude Code, Gemini CLI y ChatGPT (mediante GPT Actions o function calling).

Arquitectura

[Claude Code / Gemini CLI / ChatGPT]
         |
         | MCP: stdio (local) / HTTP+SSE (remoto)
         v
[mcp_server/server.py]          Python, Anthropic MCP SDK
         |
         | HTTP → localhost:8001
         v
[osint_api/main.py]             FastAPI
         |
         v
[Docker Kali OSINT Sandbox]
    ├── whois, dig, subfinder, theHarvester, httpx, whatweb
    ├── sherlock, maigret, holehe, phoneinfoga
    ├── exiftool, mat2, pdfinfo, file, strings
    ├── gitleaks, trufflehog
    └── Conectores: AbuseIPDB, HIBP, EmailRep, VirusTotal, Shodan

Herramientas MCP disponibles (Fase 1 MVP)

Herramienta Descripción
domain_recon WHOIS, DNS, subdominios, tecnologías web
ip_reputation ASN, reputación, abuse reports, Shodan pasivo
email_reputation Servicios registrados, reputación, brechas (no passwords)
phone_reputation Carrier, país, tipo de línea, spam signals
username_recon Perfiles públicos (Sherlock + Maigret)
reverse_image_search Metadatos EXIF, hash, TinEye (sin reconocimiento facial)
metadata_analysis Metadatos de archivos, hash SHA256, riesgos privacidad
breach_exposure_check Brechas conocidas, VirusTotal (sin passwords)
list_osint_tools Lista el catálogo de herramientas
recommend_osint_workflow Auto-detecta tipo y recomienda workflows
run_osint_workflow Ejecuta cualquier workflow por nombre
get_task_result Consulta estado y resultado de una tarea
export_report Exporta informe en Markdown / JSON / HTML

Inicio rápido

Desarrollo local

# 1. Clonar y configurar
git clone <repo> mcp-osint-server
cd mcp-osint-server
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt

# 2. Configurar variables de entorno
cp config/.env.example config/.env
# Editar config/.env (al menos OSINT_INTERNAL_API_KEY)

# 3. Levantar la OSINT API
uvicorn osint_api.main:app --host 127.0.0.1 --port 8001 --reload

# 4. (En otra terminal) Probar el servidor MCP
source .venv/bin/activate
python -m mcp_server.server --transport stdio

Docker Compose (producción)

cp config/.env.example config/.env
# Editar config/.env

docker compose -f docker/docker-compose.yml up -d
# OSINT API en http://localhost:8001
# MCP Server (SSE) en http://localhost:3000/sse

Conectar a clientes IA

Cliente Documentación
Claude Code docs/connect-claude-code.md
Gemini CLI docs/connect-gemini.md
ChatGPT docs/connect-chatgpt.md

Ejemplo rápido — Claude Code (stdio)

Añade a ~/.claude/settings.json:

{
  "mcpServers": {
    "osint": {
      "command": "/ruta/al/proyecto/.venv/bin/python",
      "args": ["-m", "mcp_server.server", "--transport", "stdio"],
      "cwd": "/ruta/al/proyecto",
      "env": {
        "OSINT_API_URL": "http://127.0.0.1:8001",
        "OSINT_INTERNAL_API_KEY": "tu-clave",
        "OSINT_MODE": "safe"
      }
    }
  }
}

Tests

source .venv/bin/activate
pip install pytest pytest-asyncio
pytest tests/ -v

Variables de entorno

Variable Descripción Por defecto
OSINT_MODE Modo de operación: safe, analyst, lab safe
OSINT_INTERNAL_API_KEY Clave compartida entre MCP server y OSINT API changeme
LOG_LEVEL Nivel de log INFO
MAX_TASK_TIME_SECONDS Timeout máximo por tarea 300
MAX_CONCURRENT_TASKS Tareas concurrentes máximas 3
SHODAN_API_KEY API Key de Shodan (opcional)
ABUSEIPDB_API_KEY API Key de AbuseIPDB (opcional)
HIBP_API_KEY API Key de Have I Been Pwned (opcional)
VIRUSTOTAL_API_KEY API Key de VirusTotal (opcional)
EMAILREP_API_KEY API Key de EmailRep (opcional)
TINEYE_API_KEY API Key de TinEye (opcional)

Seguridad

  • Sin ejecución de comandos raw en modo safe.
  • Allowlist estricta de binarios y argumentos CLI.
  • Validación de todos los inputs antes de cualquier ejecución.
  • Enmascarado de PII y API keys en outputs.
  • Docker sandbox: no-new-privileges, cap_drop: ALL, read_only.
  • Rate limiting por cliente y por API externa.
  • Tool poisoning: resultados de internet se tratan como datos no confiables.

Estructura del proyecto

mcp-osint-server/
├── mcp_server/         # Servidor MCP (stdio + SSE)
│   ├── server.py       # Entry point, 13 herramientas MCP
│   └── schemas/        # Pydantic models compartidos
├── osint_api/          # FastAPI backend
│   ├── main.py
│   ├── runners/        # Ejecución segura de CLIs
│   ├── parsers/        # Parsers de output por herramienta
│   ├── connectors/     # APIs externas (AbuseIPDB, HIBP, etc.)
│   ├── workflows/      # 8 workflows OSINT
│   ├── catalog/        # Catálogo de herramientas
│   ├── security/       # Allowlist, validator, sanitizer, rate limiter
│   └── reports/        # Generadores Markdown/JSON/HTML
├── docker/             # Dockerfile.kali + docker-compose.yml
├── config/             # tools.yml, policies.yml, .env.example
├── docs/               # Documentación de conexión por cliente
└── tests/              # Tests unitarios

Roadmap

  • Fase 1 (actual): MVP — 8 workflows, Docker Kali, catálogo, informes
  • Fase 2: Autenticación, políticas por rol, cola de tareas, auditoría avanzada
  • Fase 3: Correlación de entidades, grafo OSINT, scoring avanzado, STIX/TAXII

Licencia

Para uso en OSINT defensivo y autorizado únicamente. No usar para:doxxing, stalking, fuerza bruta, explotación activa o cualquier actividad ilegal.

MCP Server · Populars

MCP Server · New

    Wide-Moat

    Open Computer Use

    MCP server that gives any LLM its own computer — managed Docker workspaces with live browser, terminal, code execution, document skills, and autonomous sub-agents. Self-hosted, open-source, pluggable into any model.

    Community Wide-Moat
    uarlouski

    🚀 TestRail MCP Server

    AI-native MCP server connecting Claude, Cursor, Windsurf, and other AI assistants to TestRail — manage test cases, runs, and results through natural-language conversation, with typed schemas built for LLMs.

    Community uarlouski
    metabase

    Metabase MCP Server

    The easy-to-use open source Business Intelligence and Embedded Analytics tool that lets everyone work with data :bar_chart:

    Community metabase
    mindsdb

    USE CASES

    Platform dedicated to building an open foundation for applied Artificial Intelligence, designed for people seeking production-ready AI systems they can truly control, extend and deploy anywhere.

    Community mindsdb
    reflex-search

    Reflex

    Reflex - The instant, code-aware local search engine.

    Community reflex-search