agentic-ops-builder
SENTINEL AGENT — un constructor de aplicaciones operativas agénticas
La capa de comandos de IA para una ontología operativa estilo Foundry: un agente LLM que se conecta a través de MCP, responde preguntas en lenguaje natural con datos reales consultados, propone acciones aprobadas por humanos y genera paneles operativos bajo demanda — una herramienta operativa auto-construida, al estilo Palantir AIP.
Linaje: este proyecto evoluciona el agente generador de sitios web de IA que construí para Locari (mi SaaS de generación de leads — en producción en vivo; repositorio privado) de "LLM genera un sitio web" a "LLM opera sobre una ontología empresarial con gobernanza": el mismo ADN de bucle de agente, pero cada capacidad ahora está tipada, en lista blanca, previsualizada, aprobada por humanos y auditada. Se empareja con PACIFIC SENTINEL (Proyecto 1), cuya ontología FastAPI este agente puede consumir directamente.

La demo de 3 indicaciones
Ejecuta todo (sin conexión, no se necesita clave API):
.venv/bin/python scripts/demo.pyO escribe estos en la aplicación web:
# | Indicación | Lo que verás |
1 |
| El agente se fundamenta en el esquema de la ontología, ejecuta una consulta filtrada y responde con una tabla — cada llamada de herramienta se transmite en vivo en el panel derecho. |
2 |
| El agente propone; una tarjeta de vista previa muestra el estado antes/después + comprobaciones de restricciones. Nada cambia hasta que tú hagas clic en Aprobar y ejecutar. Luego vuelve a preguntar el inventario del depósito para ver el cambio de estado, y |
3 |
| El agente consulta datos en vivo y publica una especificación JSON de panel; el lienzo renderiza mosaicos de estadísticas, una tabla y un gráfico de barras. |
|
|
|
|
Related MCP server: Enterprise Architecture MCP Server
¿Qué es MCP y cómo refleja esto a Palantir AIP?
MCP (Model Context Protocol) es un protocolo abierto que proporciona a un LLM una superficie de herramientas tipada, descubrible y acotada sobre sistemas externos. Un servidor expone herramientas (nombre + descripción + esquema JSON); cualquier cliente — un agente, un IDE, una aplicación de chat — se conecta, las lista y las llama. El límite del protocolo es el límite de gobernanza: el modelo solo puede hacer lo que el servidor expone.
Este proyecto es una miniatura de la arquitectura AIP de Palantir:
Este proyecto | Equivalente Palantir AIP / Foundry |
Backends de ontología ( | La Ontología Foundry: objetos semánticos sobre datos sin procesar, un centro consumido por todas las superficies posteriores |
Herramientas de lectura MCP ( | APIs de ontología / consultas de objetos que los agentes AIP usan para fundamentarse |
| Tipos de Acción AIP con criterios de envío + flujos de trabajo de aprobación humana — las escrituras son operaciones gobernadas y validadas, nunca ediciones directas de tablas |
Aprobación con clave de operador + tokens de un solo uso + lista blanca de herramientas del agente | Separación de la capacidad del agente de la autoridad humana en AIP |
Registro de auditoría de solo añadidura de cada propuesta/aprobación/ejecución/denegación | Rastros de evaluación y auditoría de AIP |
Especificación JSON | Aplicaciones operativas estilo Workshop construidas sobre datos de ontología (configuración declarativa, no código arbitrario) |
El bucle del agente (Claude + herramientas MCP + flujo de eventos) | Agentes de AIP Agent Studio con acceso a herramientas + razonamiento transmitido |
Cómo funciona el humano en el bucle
user ──ask──▶ Agent (LLM) MCP server FastAPI (operator)
│ propose_action(...) ──▶ validate params
│ run constraint checks
│ build before/after PREVIEW (no mutation)
│ ◀── proposal + action_id ─┘
UI shows preview card ──── human clicks Approve ──▶ approve_action(operator_key)
└─ mints SINGLE-USE token
execute_action(token)
├─ re-validates vs CURRENT state
├─ applies the change
└─ audit log: proposed→approved→executedTres capas de aplicación mantienen al agente solo como proponente:
Lista blanca —
approve_action/reject_action/execute_actionse eliminan de la lista de herramientas del LLM; el bucle del agente rechaza cualquier llamada a una herramienta que no se le haya dado.Restricción de capacidad — la aprobación requiere una
OPERATOR_KEYque existe solo en el proceso del servidor de orquestación (inyectada en el entorno del subproceso MCP). Ningún contexto del LLM la contiene nunca, por lo que un agente no puede acuñar tokens de aprobación ni siquiera en principio.Mecánica de tokens — los tokens son de un solo uso (
secrets.compare_digest, quemados en el primer uso) y la ejecución vuelve a validar cada restricción contra el estado actual, por lo que una aprobación obsoleta no puede sobregirar un depósito.
La misma filosofía rige los paneles: el agente emite una especificación JSON estrictamente
validada (extra="forbid", 3 tipos de widget, tamaños acotados) que
componentes React fijos interpretan — nunca HTML, JSX o código ejecutable.
Arquitectura
React 18 + Vite + TS + Tailwind FastAPI (port 8100) MCP server (stdio subprocess)
┌──────────────┬───────────────┐ WS ┌──────────────────────┐ MCP ┌─────────────────────────┐
│ Chat panel │ Actions cards │ ◀─────▶ │ /ws agent events │ ◀─────▶ │ 9 tools over ontology │
│ (markdown) │ Live trace │ HTTP │ /actions/{id}/approve│ stdio │ ┌─ StubOntology (dflt) │
│ │ Dashboard │ ◀─────▶ │ /actions/{id}/reject │ │ └─ HttpOntology ──▶ Project 1
│ │ canvas │ │ /audit /health │ │ (pacific-sentinel)
└──────────────┴───────────────┘ │ OpsAgent loop + LLM │ └─────────────────────────┘
│ (Claude ⟷ MockLLM) │
└──────────────────────┘Ejecútalo
# Backend
python3.11 -m venv .venv && .venv/bin/pip install -e ".[dev]"
.venv/bin/python -m pytest # 60 tests, fully offline
.venv/bin/python scripts/demo.py # scripted 3-prompt demo (mock LLM)
.venv/bin/python scripts/smoke_mcp.py # raw MCP stdio smoke run
# CLI
.venv/bin/python -m ops_agent.cli --llm mock "Which units are critically low on water?"
# Web app: API on :8100, frontend on :5174
LLM_MODE=mock .venv/bin/python -m uvicorn ops_agent.server:app --port 8100
cd frontend && npm install && npm run dev # open http://localhost:5174
npm test # 8 Vitest component tests
# Real LLM (claude-opus-4-8; key read from env, never hardcoded)
export ANTHROPIC_API_KEY=sk-ant-...
.venv/bin/python -m ops_agent.cli "Which units are critically low on water?"
# Against Project 1's live ontology instead of the stub
ONTOLOGY_BACKEND=http ONTOLOGY_API_URL=http://localhost:8000 ...Modos LLM — LLM_MODE=auto (predeterminado: en vivo si ANTHROPIC_API_KEY está configurada,
si no, simulado) / mock / live. El MockLLM se comporta como un modelo de llamada a herramientas
(consulta de fundamentación → consulta filtrada → respuesta; análisis de acción; construcción
de panel) para que cada flujo — incluidas las pruebas y la demo — se ejecute sin conexión y
de manera determinista.
Hitos
M1 Servidor MCP: herramientas de ontología de solo lectura sobre un backend intercambiable + pruebas
M2 Bucle del agente: llamada a herramientas LLM sobre MCP, lista blanca, eventos de auditoría, CLI
M3 Transmisión WebSocket FastAPI + interfaz de chat/rastreo React
M4 Proponer → aprobar humano (clave de operador + token de un solo uso) → ejecutar → auditar
M5 Generación de especificación de panel (JSON seguro) + renderizador React (recharts)
M6 Script de demo, capturas de pantalla, este README
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityBmaintenanceTurns warehouse/lakehouse tables into a governed entity-relationship knowledge graph exposed through MCP, enabling AI agents to answer multi-table business questions without hard-coded SQL or large schema prompts.Apache 2.0
- Flicense-qualityCmaintenanceEnables natural language interaction with enterprise tools including file, database, GitHub, Slack, browser, calendar, email, vector search, and Python calculation through OpenAI and MCP Client.
- Flicense-qualityCmaintenanceEnables engineers and plant managers to interact with manufacturing systems using natural language, providing machine health analysis, KPI dashboards, predictive maintenance, and automated workflow execution via MCP.
- Alicense-qualityBmaintenanceEnables governed, agent-agnostic data exploration by allowing users to ask natural language questions through MCP-compatible agents, executing safe, permission-scoped queries against data sources and returning interactive charts.48Apache 2.0
Related MCP Connectors
An AI concierge that turns static forms into adaptive AI conversations. From any MCP client.
GibsonAI MCP server: manage your databases with natural language
Official Microsoft MCP Server to query Microsoft Entra data using natural language
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/aryanpatel27/sentinel-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server


