Skip to main content
Glama
gong8

Sentinel

by gong8

Sentinel

MCP 서버를 위한 자체 호스팅 거버넌스 레이어. Sentinel은 AI 에이전트와 에이전트가 호출하는 도구 사이에 위치하여 모든 요청을 정책에 따라 평가하고 발생한 일에 대한 감사 추적을 기록합니다.

전적으로 사용자 자신의 머신에서 실행됩니다. 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 서버

에이전트가 Sentinel 자체를 관리할 수 있는 40개의 도구

A2A 프록시

에이전트 간(A2A) 프로토콜 지원

웹 UI

전체 관리자 및 사용자 콘솔

빠른 시작

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로 시작할 수 있습니다.

그러면 다음을 얻을 수 있습니다:

시드 데이터는 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

에이전트 간(A2A) 프로토콜 프록시

mcp-admin

~1.7k

관리 MCP 서버 (40개 도구)

대략 소스 177k 줄테스트 163k 줄218개 테스트 파일에 걸쳐 있습니다.

가장 재사용 가능한 부분은 packages/api/src/services/policyCondition.ts — Zod와 로거 외에는 의존성이 없는 약 1,300줄의 조건 트리 평가기입니다. 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

프로젝트 규칙

이 코드베이스는 몇 가지 양보할 수 없는 규칙을 지키며, .claude/hooks/의 린트 구성과 git 훅으로 강제됩니다:

  • 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