!mysql
Query and manage MySQL databases by specifying connection details like host, database, user, and password. Simplify database operations with structured input for efficient data handling.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| connection | Yes |
Implementation Reference
- src/index.ts:75-97 (registration)Registration of the '!mysql' MCP tool, including inline handler for connecting to MySQL database via DatabaseService.server.tool( "!mysql", mysqlConnectionSchema, async (args: { connection: DatabaseConnectionConfig }) => { try { const config: DatabaseConfig = { type: 'mysql', connection: args.connection }; dbService = new DatabaseService(config); await dbService.connect(); return { content: [{ type: "text", text: "Successfully connected to MySQL database!" }], }; } catch (error: unknown) { const errorMessage = error instanceof Error ? error.message : 'Unknown error'; return { content: [{ type: "text", text: `MySQL connection error: ${errorMessage}` }], isError: true, }; } } );
- src/index.ts:32-40 (schema)Zod schema definition for MySQL connection parameters used in '!mysql' tool.const mysqlConnectionSchema = { connection: z.object({ host: z.string(), port: z.number().optional(), database: z.string(), user: z.string(), password: z.string(), }), };
- src/services/database.ts:24-28 (helper)MySQL-specific connection establishment in DatabaseService.connect() method, called by '!mysql' handler.case 'mysql': { const config = this.config.connection as any; this.mysqlConnection = await mysql.createConnection(config); break; }
- src/services/database.ts:2-2 (helper)Import of mysql2 library used for MySQL connections in DatabaseService.import mysql from 'mysql2/promise';