Skip to main content
Glama
ateeqdesktop-dot

SentinelMCP

SentinelMCP

CI License: MIT Python 3.11+ Code Style: Ruff

Детерминированный файрвол политик и движок управления средой выполнения для Model Context Protocol (MCP)


Обзор

SentinelMCP — это шлюз безопасности и фреймворк управления средой выполнения производственного уровня, специально созданные для серверов Model Context Protocol (MCP) и мультиагентных ИИ-систем. По мере того как ИИ-агенты всё чаще получают автономный доступ к корпоративным файловым системам, базам данных и API через MCP, резко возросло количество таких угроз безопасности, как промпт-инъекции, несанкционированные вызовы инструментов и утечка данных.

SentinelMCP действует как встроенный файрвол политик: перехватывает вызовы инструментов MCP в формате JSON-RPC, проверяет аргументы на соответствие декларативным правилам на основе AST, применяет ограничения безопасности и записывает неизменяемый криптографически проверяемый журнал аудита.


Related MCP server: AgentGuard MCP Server

Ключевая архитектура и возможности

  • Движок «Политика как код»: декларативные определения политик в формате JSON/YAML, поддерживающие сопоставление шаблонов glob по именам инструментов, проверку значений аргументов регулярными выражениями и строгую валидацию схемы аргументов [2].

  • Криптографический реестр происхождения: журнал аудита с режимом только добавления, в котором каждая запись о выполнении связана хэшами SHA-256, что обеспечивает защищённую от подделки прослеживаемость для комплаенса и аудита.

  • Высокопроизводительный прокси-шлюз: построенный на FastAPI и Pydantic v2, обеспечивает субмиллисекундную задержку перехвата с асинхронной обработкой запросов.

  • CLI и набор инструментов для тестирования: встроенный CLI для оценки вызовов инструментов на соответствие политикам, запуска сервера-шлюза и проверки целостности журнала.

  • CI/CD корпоративного уровня: полностью протестирован с помощью pytest, матричное тестируется на Python 3.11 и 3.12, интегрирован с рабочими процессами GitHub Actions.


Установка

Клонируйте репозиторий и установите пакет в режиме editable с зависимостями для разработки:

git clone https://github.com/ateeqdesktop-dot/sentinel-mcp.git
cd sentinel-mcp
pip install -e .[dev]

Использование

1. Оценка вызова инструмента через CLI

Вы можете проверить, как SentinelMCP оценивает любой вызов инструмента MCP на соответствие вашим политикам безопасности:

sentinel-mcp evaluate --tool fs_delete --args '{"path": "/home/user/document.txt"}' --policy policy.json

2. Запуск сервера-шлюза

Запустите прокси-сервер SentinelMCP локально:

sentinel-mcp serve --host 127.0.0.1 --port 8000 --policy policy.json

3. Проверка целостности журнала аудита

Убедитесь, что журнал аудита в режиме только добавления не был подделан:

sentinel-mcp verify --ledger sentinel_audit.jsonl

Пример конфигурации политики (policy.json)

{
  "version": "1.0",
  "default_action": "allow",
  "rules": [
    {
      "id": "block-destructive-fs",
      "tool_pattern": "fs_*",
      "action": "deny",
      "forbidden_arguments": [
        "rm\\s+-rf",
        "/etc/passwd",
        "drop\\s+database"
      ]
    },
    {
      "id": "limit-sql-queries",
      "tool_pattern": "db_*",
      "action": "allow",
      "max_string_length": 500
    }
  ]
}

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

Запустите набор тестов с помощью pytest и оценкой покрытия кода:

pytest --cov=sentinel tests/ -v

Лицензия

Распространяется под лицензией MIT. См. LICENSE для получения дополнительной информации.


Ссылки

  1. Спецификация Anthropic Model Context Protocol (MCP). Доступно онлайн.

  2. Принципы Open Policy Agent (OPA) для безопасности в cloud-native средах. Доступно онлайн.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Provides policy-driven runtime authorization and security evaluation for MCP-based agents, including MCP streaming HTTP gateway, mock MCP servers, deterministic agent demos, and audited tool invocation with redacted PostgreSQL audit chains.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enforces fine-grained, context-aware access control on MCP tool calls, with a tamper-evident, replayable audit log that records denials and verifies every decision.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enforces allow/deny/ask policies on MCP tool calls before they reach downstream servers, with tamper-evident audit logging.
    MIT