UNPKG

mysql-query-mcp-server

Version:

MySQL Query MCP server for AI assistants - execute read-only MySQL queries from Cursor IDE, Windsurf, or Claude Desktop

64 lines (63 loc) 1.9 kB
import { z } from 'zod'; import type { Tool } from '@modelcontextprotocol/sdk/types.js'; export declare const Environment: z.ZodEnum<["local", "development", "staging", "production"]>; export type Environment = z.infer<typeof Environment>; export interface DatabaseConfig { host: string; user: string; password: string; database: string; ssl?: boolean; port?: number; connectionLimit?: number; } export declare const QueryParams: z.ZodObject<{ sql: z.ZodString; environment: z.ZodEnum<["local", "development", "staging", "production"]>; timeout: z.ZodDefault<z.ZodOptional<z.ZodNumber>>; }, "strip", z.ZodTypeAny, { sql: string; environment: "local" | "development" | "staging" | "production"; timeout: number; }, { sql: string; environment: "local" | "development" | "staging" | "production"; timeout?: number | undefined; }>; export type QueryParameters = z.infer<typeof QueryParams>; export declare const InfoParams: z.ZodObject<{ environment: z.ZodEnum<["local", "development", "staging", "production"]>; }, "strip", z.ZodTypeAny, { environment: "local" | "development" | "staging" | "production"; }, { environment: "local" | "development" | "staging" | "production"; }>; export type InfoParameters = z.infer<typeof InfoParams>; export interface QueryResult { rows: unknown[]; fields: { name: string; type: string; length: number; }[]; executionTime: number; rowCount: number; } export interface DatabaseInfo { version: string; status: string; variables: Record<string, string>; processlist: unknown[]; databases: string[]; } export interface DatabaseError extends Error { code?: string; errno?: number; sqlState?: string; sqlMessage?: string; } export interface MySQLTools { query: Tool; info: Tool; environments: Tool; }