- Production Safe Mysql Mcp Server
Production Safe Mysql Mcp Server
A Model Context Protocol (MCP) server that gives AI agents direct access to MySQL databases even on production environments.
Overview
What It Can Do
Data Query & Mutation
execute_query— Run SELECT, INSERT, UPDATE, or DELETE statements with parameterized query support (?placeholders)execute_transaction— Execute multiple statements as an atomic batch; if any statement fails the entire transaction is automatically rolled back
Schema Management
create_table— Create a new tablealter_table— Add/drop columns, rename columns, add indexes, and moredrop_table— Drop a table (requiresALLOW_DESTRUCTIVE_DDL=true)show_tables— List all tables in a databasedescribe_table— Show column structure of a table
Database Management
list_databases— List all user databases (system databases excluded)create_database— Create a new database with optional charset and collationdrop_database— Drop a database (requiresALLOW_DESTRUCTIVE_DDL=true)
Introspection
ping— Check MySQL connection healthshow_columns— Show detailed column information for a tableget_server_info— Return MySQL version, character set, and collation (read-only)
Multi-Database Support
Every tool accepts a database parameter. You can query different databases within the same session without any extra configuration.
What It Cannot Do
The following operations are permanently blocked by the security filter and cannot be bypassed under any circumstances:
| Category | Blocked Commands |
|---|---|
| MySQL settings | SET GLOBAL, SET @@global.*, SET @@SESSION.sql_mode |
| User management | CREATE USER, DROP USER, ALTER USER, RENAME USER |
| Privilege management | GRANT, REVOKE |
| System commands | FLUSH, KILL, SHUTDOWN |
| Replication | RESET MASTER/REPLICA, START/STOP SLAVE/REPLICA, CHANGE MASTER |
| File access | LOAD DATA INFILE, SELECT INTO OUTFILE/DUMPFILE |
| Plugins | INSTALL PLUGIN, UNINSTALL PLUGIN |
Additional constraints:
- Multiple statements separated by
;in a single call are not allowed — useexecute_transactioninstead drop_tableanddrop_databaseare disabled by default and will return an error unlessALLOW_DESTRUCTIVE_DDL=trueis set- Query results are capped at
MAX_ROWSrows (default: 1000); add aLIMITclause for large tables
Server Config
{
"mcpServers": {
"mysql": {
"command": "node",
"args": [
"/absolute/path/to/mysql-mcp/dist/index.js"
],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_PORT": "3306",
"MYSQL_USER": "mcp_user",
"MYSQL_PASSWORD": "your_password",
"MYSQL_DATABASE": "",
"MAX_ROWS": "1000",
"ALLOW_DESTRUCTIVE_DDL": "false"
}
}
}
}Project Info
Created At
25 days agoUpdated At
25 days agoAuthor Name
turkeryildirimStar
-Language
-License
-Recommend Servers
View AllPuter Mcp
a day ago
Achivx Forum
a day ago
Tavily Mcp
@tavily-ai
JavaScript
a year ago
Playwright Mcp
@microsoft
Playwright MCP server
TypeScript
10 months ago
Serper MCP Server
@garymengcom
A Serper MCP Server
Python
a year ago
Amap Maps
@amap
高德地图官方 MCP Server
a year ago