Skip to main content
Glama
gong8

Sentinel

by gong8

Sentinel

Una capa de gobernanza autoalojada para servidores MCP. Sentinel se sitúa entre tus agentes de IA y las herramientas que llaman, evalúa cada solicitud según tus políticas y escribe un registro de auditoría de lo que sucedió.

Se ejecuta completamente en tu propia máquina. Postgres es la única dependencia obligatoria: sin claves de API, sin cuenta en la nube, sin llamadas a casa.

agent ──▶ Sentinel proxy ──▶ policy engine ──▶ MCP server
                                   │
                                   └──▶ audit log

Por qué existe esto

Si le das a un agente un conjunto de herramientas MCP, le has dado la capacidad de actuar. La mayoría de las configuraciones no tienen respuesta a tres preguntas:

  • ¿Qué herramientas puede llamar este agente y bajo qué condiciones?

  • ¿Qué hizo realmente?

  • ¿Quién aprobó lo que tocó producción?

Sentinel responde a las tres con un motor de políticas que evalúa condiciones por llamada, un registro de auditoría de solo añadidura con instantáneas antes/después, y un flujo de aprobación para cualquier cosa que marques como sensible.

Related MCP server: AISentinel

Qué incluye

Motor de políticas

Reglas ALLOW/DENY con árboles de condiciones. DENY siempre gana: no puede ser anulado por un ALLOW posterior

Condiciones

Dos modos: SIMPLE (matriz plana) y ADVANCED (árboles de expresiones AND/OR anidados)

Proxy MCP

Multitransporte: HTTP, STDIO, WebSocket, SSE

Registro de auditoría

Cada llamada a herramienta, cambio de política, evento de autenticación y acción de administración, con instantáneas antes/después

Multitenencia

Organizaciones → espacios de trabajo → miembros, con alcance en la capa de consulta

Aprobaciones

Marca herramientas como sensibles; las llamadas se bloquean pendientes de aprobación humana

Credenciales

Cifrado AES-256-GCM en reposo para credenciales de servidores ascendentes

Servidor MCP de administración

40 herramientas para que un agente pueda administrar el propio Sentinel

Proxy A2A

Soporte del protocolo agente a agente

Interfaz web

Consola completa de administración y usuario

Inicio rápido

Requiere Node 20+, pnpm y Postgres.

git clone https://github.com/gong8/sentinel-oss.git
cd sentinel-oss
cp .env.example .env        # generate secrets, point DATABASE_URL at your Postgres
pnpm setup                  # install, generate client, push schema, seed
pnpm dev

¿Necesitas Postgres? docker compose up -d postgres inicia uno.

Eso te da:

Servicio

URL

Consola web

http://localhost:5173

Sitio de documentación

http://localhost:5174

API

http://localhost:3000

Proxy MCP

http://localhost:3001

MCP de administración

http://localhost:3003

La semilla crea una organización Acme Corporation con tres usuarios e imprime sus tokens de acceso. Ejecuta pnpm db:creds en cualquier momento para volver a imprimirlos.

Apunta un agente a ello

Añade el proxy a la configuración de tu cliente MCP:

{
  "mcpServers": {
    "sentinel": {
      "url": "http://localhost:3001/mcp",
      "headers": { "Authorization": "Bearer YOUR_ACCESS_TOKEN" }
    }
  }
}

Registra servidores ascendentes en la consola web, escribe políticas para sus herramientas y cada llamada ahora se enruta a través del motor de políticas.

Opcional: funciones de agente

Sentinel tiene un agente administrador integrado (configuración mediante chat). Necesita un LLM y admite varios proveedores, incluidos los totalmente locales, para que nunca tengas que comprar una clave de API:

  • Ollama o cualquier endpoint compatible con OpenAI (LM Studio, llama.cpp, vLLM): local y gratuito

  • Anthropic, OpenAI o Gemini, si prefieres traer una clave

Todo lo demás en Sentinel funciona sin ningún LLM configurado.

Arquitectura

Un monorepo de pnpm + Turborepo.

Paquete

Líneas

Qué hace

api

~72k

API tRPC: servicios, enrutadores, evaluación de políticas, auditoría

web

~73k

Consola de administración y usuario en React

docs

~11k

Sitio de documentación

shared

~6k

Tipos compartidos, evaluación de condiciones, definiciones de herramientas de administración

mcp

~4.7k

Servidor proxy MCP (HTTP, STDIO, WebSocket, SSE)

db

~3.3k

Esquema de Prisma: 67 modelos

a2a

~2.5k

Proxy del protocolo agente a agente

mcp-admin

~1.7k

Servidor MCP de administración (40 herramientas)

Aproximadamente 177 mil líneas de código fuente y 163 mil líneas de pruebas en 218 archivos de prueba.

La pieza más reutilizable es packages/api/src/services/policyCondition.ts: un evaluador de árboles de condiciones de ~1300 líneas sin más dependencias que Zod y un registrador. No sabe nada de MCP, Prisma ni Sentinel, y podría extraerse a cualquier proyecto que necesite expresiones de políticas.

La documentación más detallada está en docs/: comienza en docs/README.md.

Pruebas

pnpm test:unit          # no database needed
pnpm test:integration   # requires TEST_DATABASE_URL
pnpm test:security      # tenant isolation, DENY precedence
pnpm test:e2e           # Playwright
pnpm check              # format, lint, types, tests

Convenciones del proyecto

Este código base se adhiere a algunas reglas innegociables, aplicadas por la configuración de lint y los ganchos de git en .claude/hooks/:

  • Sin aserciones de tipo as (excepto as const), sin any, sin @ts-ignore, sin eslint-disable

  • Cada consulta a la base de datos con alcance a organizationId

  • Toda entrada validada con Zod

  • Credenciales cifradas antes de almacenarse

  • Acciones sensibles registradas en auditoría, acciones de administración con instantáneas antes/después

  • Las políticas DENY no se pueden eludir, y eso se prueba explícitamente

Consulta CLAUDE.md para la guía de desarrollo completa.

Contribuciones

Consulta CONTRIBUTING.md. Problemas de seguridad: SECURITY.md.

Licencia

GNU AGPL-3.0. Si ejecutas un Sentinel modificado como servicio de red, debes poner tus modificaciones a disposición de sus usuarios.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    A local-first control plane for AI agent tools, providing policy enforcement, spend caps, rate limiting, and audit trails for MCP servers.
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    An open-source MCP server that protects AI agents at runtime by evaluating every tool call against YAML policies and generating audit trails.
    1
    Apache 2.0
  • F
    license
    A
    quality
    B
    maintenance
    A governance layer for MCP servers that classifies tools by risk, enforces agent permissions, lets safe tools earn autonomy through a track record, and keeps an audit trail. Requires human approval for irreversible actions and provides blast radius context.
    14
    -