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
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
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 fasesAPITaskAgent- Descubrimiento y obtención de API con protección SSRFPythonComputationalTool- Ejecución de Python para análisis de datosIronManusStateGraph- Gestión del estado de la sesiónSlideGenerator- Generación de diapositivas HTMLHealthCheck- 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

