Skip to main content
Glama

Prisma MCP Server

Official
by prisma
Apache 2.0
4
44,192
  • Linux
  • Apple
dmmf.ts6.27 kB
import { ReadonlyDeep } from './util' export type Document = ReadonlyDeep<{ datamodel: Datamodel schema: Schema mappings: Mappings }> export type Mappings = ReadonlyDeep<{ modelOperations: ModelMapping[] otherOperations: { read: string[] write: string[] } }> export type OtherOperationMappings = ReadonlyDeep<{ read: string[] write: string[] }> export type DatamodelEnum = ReadonlyDeep<{ name: string values: EnumValue[] dbName?: string | null documentation?: string }> export type SchemaEnum = ReadonlyDeep<{ name: string values: string[] }> export type EnumValue = ReadonlyDeep<{ name: string dbName: string | null }> export type Datamodel = ReadonlyDeep<{ models: Model[] enums: DatamodelEnum[] types: Model[] indexes: Index[] }> export type uniqueIndex = ReadonlyDeep<{ name: string fields: string[] }> export type PrimaryKey = ReadonlyDeep<{ name: string | null fields: string[] }> export type Model = ReadonlyDeep<{ name: string dbName: string | null schema: string | null fields: Field[] uniqueFields: string[][] uniqueIndexes: uniqueIndex[] documentation?: string primaryKey: PrimaryKey | null isGenerated?: boolean }> export type FieldKind = 'scalar' | 'object' | 'enum' | 'unsupported' export type FieldNamespace = 'model' | 'prisma' export type FieldLocation = 'scalar' | 'inputObjectTypes' | 'outputObjectTypes' | 'enumTypes' | 'fieldRefTypes' export type Field = ReadonlyDeep<{ kind: FieldKind name: string isRequired: boolean isList: boolean isUnique: boolean isId: boolean isReadOnly: boolean isGenerated?: boolean // does not exist on 'type' but does on 'model' isUpdatedAt?: boolean // does not exist on 'type' but does on 'model' /** * Describes the data type in the same the way it is defined in the Prisma schema: * BigInt, Boolean, Bytes, DateTime, Decimal, Float, Int, JSON, String, $ModelName */ type: string /** * Native database type, if specified. * For example, `@db.VarChar(191)` is encoded as `['VarChar', ['191']]`, * `@db.Text` is encoded as `['Text', []]`. */ nativeType?: [string, string[]] | null dbName?: string | null hasDefaultValue: boolean default?: FieldDefault | FieldDefaultScalar | FieldDefaultScalar[] relationFromFields?: string[] relationToFields?: string[] relationOnDelete?: string relationOnUpdate?: string relationName?: string documentation?: string }> export type FieldDefault = ReadonlyDeep<{ name: string args: Array<string | number> }> export type FieldDefaultScalar = string | boolean | number export type Index = ReadonlyDeep<{ model: string type: IndexType isDefinedOnField: boolean name?: string dbName?: string algorithm?: string clustered?: boolean fields: IndexField[] }> export type IndexType = 'id' | 'normal' | 'unique' | 'fulltext' export type IndexField = ReadonlyDeep<{ name: string sortOrder?: SortOrder length?: number operatorClass?: string }> export type SortOrder = 'asc' | 'desc' export type Schema = ReadonlyDeep<{ rootQueryType?: string rootMutationType?: string inputObjectTypes: { // For now there are no `model` InputTypes model?: InputType[] prisma?: InputType[] } outputObjectTypes: { model: OutputType[] prisma: OutputType[] } enumTypes: { model?: SchemaEnum[] prisma: SchemaEnum[] } fieldRefTypes: { prisma?: FieldRefType[] } }> export type Query = ReadonlyDeep<{ name: string args: SchemaArg[] output: QueryOutput }> export type QueryOutput = ReadonlyDeep<{ name: string isRequired: boolean isList: boolean }> export type TypeRef<AllowedLocations extends FieldLocation> = { isList: boolean type: string location: AllowedLocations namespace?: FieldNamespace } export type InputTypeRef = TypeRef<'scalar' | 'inputObjectTypes' | 'enumTypes' | 'fieldRefTypes'> export type SchemaArg = ReadonlyDeep<{ name: string comment?: string isNullable: boolean isRequired: boolean inputTypes: InputTypeRef[] requiresOtherFields?: string[] deprecation?: Deprecation }> export type OutputType = ReadonlyDeep<{ name: string fields: SchemaField[] }> export type SchemaField = ReadonlyDeep<{ name: string isNullable?: boolean outputType: OutputTypeRef args: SchemaArg[] deprecation?: Deprecation documentation?: string }> export type OutputTypeRef = TypeRef<'scalar' | 'outputObjectTypes' | 'enumTypes'> export type Deprecation = ReadonlyDeep<{ sinceVersion: string reason: string plannedRemovalVersion?: string }> export type InputType = ReadonlyDeep<{ name: string constraints: { maxNumFields: number | null minNumFields: number | null fields?: string[] } meta?: { source?: string grouping?: string } fields: SchemaArg[] }> export type FieldRefType = ReadonlyDeep<{ name: string allowTypes: FieldRefAllowType[] fields: SchemaArg[] }> export type FieldRefAllowType = TypeRef<'scalar' | 'enumTypes'> export type ModelMapping = ReadonlyDeep<{ model: string plural: string findUnique?: string | null findUniqueOrThrow?: string | null findFirst?: string | null findFirstOrThrow?: string | null findMany?: string | null create?: string | null createMany?: string | null createManyAndReturn?: string | null update?: string | null updateMany?: string | null updateManyAndReturn?: string | null upsert?: string | null delete?: string | null deleteMany?: string | null aggregate?: string | null groupBy?: string | null count?: string | null findRaw?: string | null aggregateRaw?: string | null }> export enum ModelAction { findUnique = 'findUnique', findUniqueOrThrow = 'findUniqueOrThrow', findFirst = 'findFirst', findFirstOrThrow = 'findFirstOrThrow', findMany = 'findMany', create = 'create', createMany = 'createMany', createManyAndReturn = 'createManyAndReturn', update = 'update', updateMany = 'updateMany', updateManyAndReturn = 'updateManyAndReturn', upsert = 'upsert', delete = 'delete', deleteMany = 'deleteMany', groupBy = 'groupBy', count = 'count', // TODO: count does not actually exist in DMMF aggregate = 'aggregate', findRaw = 'findRaw', aggregateRaw = 'aggregateRaw', }

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/prisma/prisma'

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