A schema-driven ORM with Prisma-style query interface for database operations via the Model Context Protocol
RediORM MCP server defines 18 tools with consistent structure and descriptions, but exhibits several critical gaps that prevent higher scoring. Most tools have descriptions (avg ~60 chars) and basic parameter documentation, but lack specification of return types, output schemas, and actionable error guidance. Parameter schemas are present but incomplete, many use generic object types without nested property definitions (e.g., 'where', 'data', 'include' are type:object with no constraining properties documented). Tool naming follows verb_noun convention well (findMany, create, update, delete, aggregate). No tool descriptions mention data destructiveness clearly, and error handling lacks recovery guidance. The server correctly avoids secrets in parameters and implements logging, but does not annotate destructive tools or document output schemas.
Apply pending migrations to the database
Create a new migration based on schema changes
Show current migration status
Perform aggregation queries
Count records with optional filters
Create a new record
Delete records
No output schema documentation for any tool. LLMs cannot determine what fields to expect from responses, forcing them to guess at downstream data extraction and risk broken tool chains.
Destructive tools (model.delete, schema.removeField) lack explicit error guidance, confirmation patterns, or dry-run support. Agents may execute irreversible operations without clear recovery paths.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 52 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 43 | - | v1 |
Query multiple records with Prisma-style filters
Find a single record by unique field
Update existing records
Add a field to an existing model
Add a relation between models
Create a new model schema
Get detailed information about a specific model
List all models with their fields and relationships
Remove a field from a model
Update an existing model schema
Execute multiple operations in a transaction
Generic parameter types (where, data, include are all type:object with no nested schema). LLMs receive no guidance on valid structure, required fields, or constraints, inviting invalid payloads.
No tool descriptions specify what data risk (READ_ONLY vs WRITE vs DESTRUCTIVE) means to the agent, nor do descriptions mention side effects. 'Create a new record' does not explain that this is irreversible or requires careful input validation.
No tool has documented when to use it vs similar tools. E.g., model.findMany vs model.aggregate, what's the usage distinction? When should the agent prefer one?
Transaction tool accepts a generic 'operations' array with object items containing 'tool' and 'arguments' fields, but does not document what tool names are valid, what arguments each tool expects, or error behavior if one operation fails.
No tool descriptions include pagination, limit, or result-capping guidance. model.findMany, schema.models, and model.aggregate could return large result sets that exhaust context windows, but lack explicit limits or pagination parameters.