Skip to main content
Glama
akmalkhaniub

Drizzle Sentinel MCP

by akmalkhaniub

🛡️ Drizzle Sentinel MCP

Servidor MCP de TypeScript de nivel de producción para inspección de esquemas de Drizzle ORM, linting de seguridad de migraciones y detección de desviación de esquemas.

TypeScript Turborepo Drizzle ORM MCP v1 Vitest


🌟 Resumen y propósito

Los agentes de codificación autónomos (Claude Code, Cursor, Codex) suelen alucinar o generar migraciones de base de datos inseguras, como añadir columnas NOT NULL sin valores predeterminados, eliminar columnas activas u olvidar índices en claves foráneas.

Drizzle Sentinel MCP está diseñado para stacks de ingeniería TypeScript modernos (Turborepo + Drizzle ORM + Express / Next.js). Inyecta gobernanza de bases de datos de bucle cerrado directamente en los flujos de trabajo de desarrollo agénticos a través del Model Context Protocol oficial.


Related MCP server: schema-lint-mcp

🏗️ Arquitectura del sistema

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)]

🛠️ Herramientas MCP incluidas

  1. inspect_drizzle_schema: Analiza en profundidad los esquemas Drizzle de TypeScript, mapea tablas y relaciones e identifica claves foráneas sin cobertura de índice.

  2. lint_drizzle_migration: Evalúa las sentencias SQL de migración según las reglas de seguridad de producción:

    • NO_RAW_DROP_TABLE: Bloquea los borrados destructivos de tablas.

    • NO_RAW_DROP_COLUMN: Exige migraciones de tipo expand-contract.

    • REQUIRE_DEFAULT_ON_NOT_NULL: Evita fallos de migración y bloqueos de tabla en tablas existentes.

    • NO_UNINDEXED_FOREIGN_KEYS: Advierte sobre la falta de cobertura de índice en las claves foráneas.

  3. detect_schema_drift: Compara el esquema TypeScript declarado con las tablas reales de la base de datos, identifica con precisión las columnas/tablas ausentes y emite SQL de remediación no disruptivo con cero tiempo de inactividad.

  4. explain_query_plan: Aplica un sandbox de ejecución estricto de solo lectura y marca malos olores de rendimiento (MISSING_LIMIT, WILDCARD_PROJECTION, SORT_MEMORY_RISK).


📁 Estructura del repositorio

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

🚀 Inicio rápido y configuración

1. Instalar dependencias y compilar

npm install
npm run build

2. Ejecutar la suite de pruebas

npm test

3. Registrar el servidor en la configuración MCP de Claude Code / Cursor

Añade el servidor a tu claude_desktop_config.json o a .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