Registry / database / multiple-mysql-mcp

multiple-mysql-mcp

JSON →
library1.0.0jsnpmunverified

An MCP stdio server providing read-only access to multiple MySQL instances through a single MCP connection. Version 1.0.0. Leverages the Model Context Protocol (MCP) to expose MySQL databases as tools for AI agents, with independent connection pools per instance. Key differentiators: multi-instance support via external JSON config, strict read-only enforcement (only SELECT/SHOW/DESCRIBE/EXPLAIN), real-time availability detection with list_instances, and timezone configuration per query. Ideal for LLM-driven database tools.

npm install multiple-mysql-mcp
INSTALL
IMPORT
SIG · MULTIPLE-MYSQL-MCP
M
multiple-mysql-mcp
databasejavascriptv1.0.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

MultipleMySQLMCP
import { MultipleMySQLMCP } from 'multiple-mysql-mcp'
const MultipleMySQLMCP = require('multiple-mysql-mcp')
This package is ESM-only; CommonJS require() will fail.
startServer
import { startServer } from 'multiple-mysql-mcp'
import startServer from 'multiple-mysql-mcp'
startServer is a named export, not default.
ConfigSchema
import type { ConfigSchema } from 'multiple-mysql-mcp'
import { ConfigSchema } from 'multiple-mysql-mcp'
ConfigSchema is a TypeScript type, not a runtime value.

Shows how to configure and run the MCP server, including external instance config and MCP client setup.

// Run the MCP server via CLI // 1. Create config file: mysql-instances.json { "instances": [ { "name": "prod-main", "description": "Production primary", "host": "prod-mysql.example.com", "port": 3306, "user": "readonly_user", "password": "your_password", "database": "app_db", "connectionLimit": 10, "queueLimit": 0, "connectTimeout": 10000 } ] } // 2. Set environment variable and start server export MYSQL_CONFIG_FILE="/path/to/mysql-instances.json" node /path/to/multiple-mysql-mcp/build/index.js // 3. Configure MCP client (e.g., .kiro/settings/mcp.json) { "mcpServers": { "multiple-mysql": { "command": "node", "args": ["/path/to/multiple-mysql-mcp/build/index.js"], "env": { "MYSQL_CONFIG_FILE": "/path/to/mysql-instances.json" } } } }
Debug
Known issues
breakingESM-only package: CommonJS require() will throw ERR_REQUIRE_ESM.
fix
Use import syntax or dynamic import().
affects: >=1.0.0
gotchaAll queries are read-only; UPDATE/DELETE/INSERT are silently rejected.
fix
Ensure application only sends SELECT, SHOW, DESCRIBE, EXPLAIN.
affects: >=1.0.0
gotchaInstance name in config must be unique; duplicate names cause undefined behavior.
fix
Validate config file for duplicate 'name' fields.
affects: >=1.0.0
deprecatedConfig file path via env var MYSQL_CONFIG_FILE is required; no default fallback.
fix
Always set MYSQL_CONFIG_FILE environment variable.
affects: >=1.0.0
Errors
Common errors & fixes
Error: Cannot find module '@modelcontextprotocol/sdk'
Missing @modelcontextprotocol/sdk dependency.
fix
Run 'npm install @modelcontextprotocol/sdk' in your project.
Error: MYSQL_CONFIG_FILE environment variable not set
Required env var missing.
fix
Set MYSQL_CONFIG_FILE to the path of your JSON config file.
Error: connect ECONNREFUSED prod-mysql.example.com:3306
MySQL server unreachable or wrong host/port.
fix
Check host, port, network connectivity, and firewall rules.
Error: Access denied for user 'readonly_user'@'host'
Invalid credentials or insufficient privileges.
fix
Verify username/password and ensure user has read-only grants.
Upgrade
Version history
1.0.0latest on npm
Audit
Dependencies
@modelcontextprotocol/sdkrequiredRequired for MCP server implementation
mysql2requiredMySQL client library for database connections
Agent activity
2 hits · last 30 days
node
2
Resources
multiple-mysql-mcp — npm install multiple-mysql-mcp · libregistry