Skip to main content
Glama
akmalkhaniub

Drizzle Sentinel MCP

by akmalkhaniub

🛡️ Drizzle Sentinel MCP

TypeScript MCP-сервер производственного уровня для инспекции схем Drizzle ORM, проверки безопасности миграций и обнаружения расхождений схем.

TypeScript Turborepo Drizzle ORM MCP v1 Vitest


🌟 Обзор и назначение

Автономные агенты программирования (Claude Code, Cursor, Codex) часто галлюцинируют или генерируют небезопасные миграции базы данных — например, добавляют колонки NOT NULL без значений по умолчанию, удаляют активные колонки или забывают про индексы на внешних ключах.

Drizzle Sentinel MCP создан для современных TypeScript-стеков (Turborepo + Drizzle ORM + Express / Next.js). Он встраивает управление базой данных с замкнутым циклом непосредственно в агентные процессы разработки через официальный Model Context Protocol.


Related MCP server: schema-lint-mcp

🏗️ Системная архитектура

graph TD
  Agent[Agentic IDE / Claude Code / Cursor] -->|MCP Protocol / stdio| Sentinel[🛡️ Drizzle Sentinel MCP Server]
  
  subgraph Tools [MCP Governance Toolsuite]
    Sentinel --> T1[🔍 inspect_drizzle_schema]
    Sentinel --> T2[🚨 lint_drizzle_migration]
    Sentinel --> T3[🩺 detect_schema_drift]
    Sentinel --> T4[⚡ explain_query_plan]
  end

  T1 --> Parser[Drizzle Schema AST Parser]
  T2 --> Engine[Rules Engine: NO_DROP, DEFAULT_ON_NOT_NULL, UNINDEXED_FK]
  T3 --> Drift[Drift Doctor & Safe Patch Generator]
  T4 --> Sandbox[Read-Only Query Sandbox & Smell Detector]

  Parser --> AppCode[TypeScript Drizzle Schemas]
  Engine --> Migrations[Drizzle Migration .sql Files]
  Drift --> Database[(PostgreSQL / SQLite / MySQL)]

🛠️ Предоставляемые инструменты MCP

  1. inspect_drizzle_schema: Глубоко анализирует TypeScript-схемы Drizzle, сопоставляет таблицы и отношения, выявляет внешние ключи без покрытия индексами.

  2. lint_drizzle_migration: Оценивает SQL-выражения миграций на соответствие правилам безопасности продакшена:

    • NO_RAW_DROP_TABLE: Блокирует разрушительное удаление таблиц.

    • NO_RAW_DROP_COLUMN: Обеспечивает выполнение миграций по схеме expand-contract.

    • REQUIRE_DEFAULT_ON_NOT_NULL: Предотвращает сбои миграций и блокировки таблиц на существующих таблицах.

    • NO_UNINDEXED_FOREIGN_KEYS: Предупреждает об отсутствии покрытия внешних ключей индексами.

  3. detect_schema_drift: Сравнивает объявленную TypeScript-схему с актуальными таблицами базы данных, выявляет отсутствующие колонки/таблицы и формирует не нарушающий работу SQL для устранения расхождений без простоев.

  4. explain_query_plan: Обеспечивает строгую read-only песочницу выполнения и отмечает признаки проблем производительности (MISSING_LIMIT, WILDCARD_PROJECTION, SORT_MEMORY_RISK).


📁 Структура репозитория

drizzle-sentinel-mcp/
├── packages/
│   ├── mcp-server/       # TypeScript MCP server implementation
│   │   ├── src/tools/    # Tool handlers (inspect, lint, drift, sandbox)
│   │   ├── src/services/ # AST & schema parsers
│   │   └── src/index.ts  # Stdio server entrypoint
│   └── rules-engine/     # AST & regex defensive migration rules
├── apps/
│   └── demo-service/     # Express + Drizzle ORM reference application
├── tests/                # Vitest comprehensive unit & integration test suite
├── turbo.json            # Turborepo task pipeline
├── CLAUDE.md             # Agentic guidelines & operating rules
└── README.md

🚀 Быстрый старт и настройка

1. Установка зависимостей и сборка

npm install
npm run build

2. Запуск тестов

npm test

3. Регистрация в конфигурации MCP для Claude Code / Cursor

Добавьте сервер в ваш claude_desktop_config.json или .cursor/mcp.json:

{
  "mcpServers": {
    "drizzle-sentinel": {
      "command": "node",
      "args": ["<path-to-repo>/packages/mcp-server/dist/index.js"]
    }
  }
}
F
license - not found
Not graded
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 Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Give AI agents structured database intelligence. Deterministic SQL, NULL trap detection, EXPLAIN pre-flight. MIT licensed.
    1
    MIT
  • F
    license
    B
    quality
    D
    maintenance
    Validates schema files against customizable lint rules using Claude or Gemini AI, supporting JSON and SQL schemas with rules for naming, structure, and migration safety.
    1
  • F
    license
    B
    quality
    F
    maintenance
    Provides database schema management, query execution, and schema introspection through Drizzle ORM and drizzle-kit CLI tools, supporting SQLite and PostgreSQL.
    5
    15

View all related MCP servers

Related MCP Connectors

  • Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.

  • The grounded data layer for any LLM: governed SQL, metrics, lineage and catalog over your data.

  • Manage Supabase projects end to end across database, auth, storage, realtime, and migrations. Moni…

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/akmalkhaniub/drizzle-sentinel-mcp'

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