Iron Manus MCP

Un servidor MCP modular para orquestación de tareas, integración de API y síntesis de conocimiento utilizando una máquina de estados finitos.

Documentación

MseeP.ai Security Assessment Badge

Iron Manus MCP Banner

Build Status Tests TypeScript Node.js License: MIT Docker Hub GitHub Container Registry Source Code

Iron Manus MCP

Servidor de Protocolo de Contexto de Modelo para orquestación de flujos de trabajo de IA inspirado en los patrones de orquestación de Manus AI y la analogía del "Hombre de Hierro" de Andrej Karpathy.

Gestión de contexto extendida mediante delegación de agentes y Todos como herramienta personalizada de despacho de agentes

Demo

Iron Manus MCP Demo

🎥 Tutorial en video

Iron Manus MCP Deep Dive

Mira el recorrido detallado

Notas históricas: Patrones arquitectónicos

Nota: Este proyecto está archivado. Las siguientes notas documentan decisiones arquitectónicas que luego aparecieron en herramientas de IA convencionales.

Varios patrones implementados en Iron Manus MCP (junio de 2024) fueron adoptados posteriormente por Claude Code y herramientas similares. Surgieron de la experimentación independiente más que de la previsión, resolviendo problemas que resultaron ser comunes en todo el ecosistema.

Patrones que se volvieron estándar

1. Todos como cola de despacho de subagentes

interface TodoItem {
  type?: 'TaskAgent' | 'SubAgent' | 'DirectExecution';
  meta_prompt?: MetaPrompt;  // Declarative agent configuration
}

Este MCP fue el primero en usar todos como una cola de despacho de subagentes. Claude Code tenía TodoWrite/TodoRead en ese momento, pero nadie (incluida Anthropic) pensaba en todos como una primitiva de coordinación de agentes. La herramienta Task existía pero era solo agentes no especializados. Nuestra implementación conectó ambos: los todos se convierten en despachos de tareas. Boris Cherny anunció "Estamos convirtiendo Todos en Tasks" el 22 de enero de 2026, siete meses después de que nosotros lanzáramos la misma idea.

2. Acceso a herramientas restringido por fases

const PHASE_ALLOWED_TOOLS = {
  PLAN: ['TodoWrite'],
  EXECUTE: ['TodoRead', 'TodoWrite', 'Task', 'Bash', 'Read', 'Write', 'Edit'],
  VERIFY: ['TodoRead', 'Read'],  // Read-only during verification
};

Restringir la disponibilidad de herramientas por fase evitó el mal uso (por ejemplo, escribir archivos durante la verificación). Este patrón aparece en Claude Code Agent Teams (febrero de 2026) mediante permisos basados en fases.

3. Fase de planificación estructurada

El flujo de trabajo explícito INIT → QUERY → ENHANCE → KNOWLEDGE → PLAN → EXECUTE → VERIFY → DONE imponía la planificación antes de la ejecución. El Modo Plan de Claude Code (agosto de 2025) proporciona una estructura similar.

4. Aislamiento de contexto mediante comunicación basada en archivos

./iron-manus-sessions/{session_id}/
├── synthesized_knowledge.md
├── primary_research.md
└── agent_output.md

Los agentes Task() tienen contextos aislados y no pueden compartir estado directamente. Este proyecto usó espacios de trabajo de sesión para la coordinación entre agentes. Claude Code Agent Teams implementa patrones similares mediante ~/.claude/teams/ y ~/.claude/tasks/.

5. Cambio de prompts basado en roles

Nueve roles especializados (planner, coder, critic, researcher, analyzer, synthesizer, ui_architect, ui_implementer, ui_refiner) con metodologías de pensamiento distintas. Los subagentes personalizados de Claude Code (julio de 2025) proporcionan una especialización similar.

6. DSL de meta-prompt para la generación de agentes

(ROLE: coder) (CONTEXT: auth_system) (PROMPT: Implement JWT auth) (OUTPUT: auth_module.ts)

Sintaxis declarativa para la configuración de agentes incrustada en el contenido de los todos. Patrones similares aparecen en la configuración de subagentes de Claude Code.

Contexto de la línea de tiempo

Iron Manus MCP (junio de 2024) introdujo todos como despacho de subagentes, herramientas restringidas por fases, fases de planificación estructuradas, aislamiento de contexto y agentes basados en roles. Claude Code adoptó estos patrones entre julio de 2025 y febrero de 2026. Estos patrones surgieron de la necesidad práctica. La orquestación multiagente requiere descomposición de tareas, aislamiento de contexto y estructura de flujo de trabajo, todo lo cual eventualmente apareció en herramientas de producción.

Qué hace

Orquestación de flujo de trabajo en 8 fases: INIT → QUERY → ENHANCE → KNOWLEDGE → PLAN → EXECUTE → VERIFY → DONE

Herramientas:

  • JARVIS - Controlador de flujo de trabajo de 8 fases
  • APITaskAgent - Descubrimiento y obtención de API con protección SSRF
  • PythonComputationalTool - Ejecución de Python para análisis de datos
  • IronManusStateGraph - Gestión del estado de la sesión
  • SlideGenerator - Generación de diapositivas HTML
  • HealthCheck - Diagnóstico de tiempo de ejecución

Inicio rápido

Desde el código fuente

git clone https://github.com/dnnyngyen/iron-manus-mcp
cd iron-manus-mcp
npm install
npm run build
npm start

Docker

docker build -t iron-manus-mcp .
docker run -d --name iron-manus-mcp iron-manus-mcp

O con docker-compose:

docker-compose up -d

Integración con MCP

Agregar a Claude Code:

claude mcp add iron-manus-mcp node dist/index.js

O agregar a tu configuración de MCP:

{
  "mcpServers": {
    "iron-manus-mcp": {
      "command": "node",
      "args": ["path/to/iron-manus-mcp/dist/index.js"]
    }
  }
}

Configuración

ALLOWED_HOSTS=api.github.com,httpbin.org    # SSRF whitelist
ENABLE_SSRF_PROTECTION=true                  # Enable security
KNOWLEDGE_MAX_CONCURRENCY=2                  # API concurrency limit
KNOWLEDGE_TIMEOUT_MS=4000                    # Request timeout (ms)

Desarrollo

npm run build     # Compile TypeScript
npm run lint      # Check code style
npm run format    # Format code
npm start         # Run server
npm run dev       # Build + watch mode

Seguridad

  • La protección SSRF bloquea IP privadas (192.168.x.x, 127.x.x.x, etc.)
  • Validación de URL (solo HTTP/HTTPS)
  • Aplicación de lista blanca de hosts
  • Tiempo de espera de solicitud y límites de tamaño

Licencia

MIT