Skip to main content
Glama
gong8

Sentinel

by gong8

Sentinel

Локально развертываемый уровень управления для MCP-серверов. Sentinel располагается между вашими ИИ-агентами и вызываемыми ими инструментами, оценивает каждый запрос на соответствие вашим политикам и фиксирует в журнале аудита все произошедшее.

Полностью работает на вашей собственной машине. Postgres — единственная жесткая зависимость: никаких API-ключей, облачного аккаунта и «звонков домой».

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

Зачем это нужно

Если вы даете агенту набор MCP-инструментов, вы вручаете ему возможность действовать. В большинстве конфигураций нет ответа на три вопроса:

  • Какие инструменты этому агенту разрешено вызывать и при каких условиях?

  • Что он на самом деле сделал?

  • Кто утвердил действие, затронувшее продакшен?

Sentinel отвечает на все три вопроса: движок политик оценивает условия для каждого вызова, журнал аудита с режимом только добавления хранит снимки «до/после», а процесс утверждения покрывает все, что вы пометите как чувствительное.

Что входит в комплект

Движок политик

Правила ALLOW/DENY с деревьями условий. DENY всегда побеждает — его нельзя переопределить более поздним ALLOW

Условия

Два режима: SIMPLE (плоский массив) и ADVANCED (вложенные деревья выражений AND/OR)

MCP-прокси

Несколько транспортов: HTTP, STDIO, WebSocket, SSE

Журнал аудита

Каждый вызов инструмента, изменение политики, событие аутентификации и действие администратора, со снимками «до/после»

Мультитенантность

Организации → рабочие пространства → участники, с ограничением на уровне запросов

Согласования

Помечайте инструменты как чувствительные; вызовы блокируются до утверждения человеком

Учетные данные

Шифрование AES-256-GCM при хранении для учетных данных вышестоящих серверов

Административный MCP-сервер

40 инструментов, чтобы агент мог администрировать сам Sentinel

A2A-прокси

Поддержка протокола Agent-to-Agent

Веб-интерфейс

Полноценная консоль администратора и пользователя

Быстрый старт

Требуются Node 20+, pnpm и 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

Нужен Postgres? docker compose up -d postgres запустит его.

Вот что вы получите:

Сервис

URL

Веб-консоль

http://localhost:5173

Сайт документации

http://localhost:5174

API

http://localhost:3000

MCP-прокси

http://localhost:3001

Административный MCP

http://localhost:3003

Сид-скрипт создает организацию Acme Corporation с тремя пользователями и выводит их токены доступа. Запустите pnpm db:creds в любое время, чтобы вывести их снова.

Подключите к нему агента

Добавьте прокси в конфигурацию вашего MCP-клиента:

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

Зарегистрируйте вышестоящие серверы в веб-консоли, создайте политики для их инструментов — и теперь каждый вызов проходит через движок политик.

Опционально: возможности агента

В Sentinel есть встроенный административный агент (вся настройка — через чат). Ему нужна LLM, и он поддерживает несколько провайдеров — включая полностью локальные, так что вам никогда не придется покупать API-ключ:

  • Ollama или любая совместимая с OpenAI конечная точка (LM Studio, llama.cpp, vLLM) — локально и бесплатно

  • Anthropic, OpenAI или Gemini — если предпочитаете использовать свой ключ

Все остальное в Sentinel работает вообще без настроенной LLM.

Архитектура

Монорепозиторий на pnpm + Turborepo.

Пакет

Строки

Что делает

api

~72k

tRPC API — сервисы, маршрутизаторы, оценка политик, аудит

web

~73k

Консоль администратора и пользователя на React

docs

~11k

Сайт документации

shared

~6k

Общие типы, оценка условий, определения административных инструментов

mcp

~4.7k

MCP-прокси-сервер (HTTP, STDIO, WebSocket, SSE)

db

~3.3k

Схема Prisma — 67 моделей

a2a

~2.5k

Прокси протокола Agent-to-Agent

mcp-admin

~1.7k

Административный MCP-сервер (40 инструментов)

Примерно 177k строк исходного кода и 163k строк тестов в 218 тестовых файлах.

Самый переиспользуемый компонент — packages/api/src/services/policyCondition.ts — оценщик деревьев условий объемом ~1300 строк без зависимостей, кроме Zod и логгера. Он ничего не знает об MCP, Prisma или Sentinel, и его можно перенести в любой проект, которому нужны выражения политик.

Более подробная документация находится в docs/ — начните с docs/README.md.

Тестирование

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

Соглашения проекта

Эта кодовая база придерживается нескольких незыблемых правил, которые обеспечиваются конфигурацией линтера и git-хуками в .claude/hooks/:

  • Никаких утверждений типа as (кроме as const), никакого any, @ts-ignore и eslint-disable

  • Каждый запрос к базе данных ограничен organizationId

  • Все входные данные проверяются с помощью Zod

  • Учетные данные шифруются перед хранением

  • Чувствительные действия записываются в журнал аудита, действия администратора — со снимками «до/после»

  • Политики DENY нельзя обойти, и это явно проверяется тестами

Полное руководство по разработке см. в CLAUDE.md.

Участие в разработке

См. CONTRIBUTING.md. Проблемы безопасности: SECURITY.md.

Лицензия

GNU AGPL-3.0. Если вы запускаете модифицированный Sentinel как сетевой сервис, вы должны предоставить его пользователям доступ к вашим изменениям.

-
license - not tested
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • See, price, and control every tool call your AI agents make: policy checks, cost, and audit tools.

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • Hosted MCP server for agent governance: MCP config audits, injection scans, scope-policy checks.

View all MCP Connectors

Latest Blog Posts

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/gong8/sentinel-oss'

If you have feedback or need assistance with the MCP directory API, please join our Discord server