Allows managing multiple MariaDB databases, providing tools for schema exploration, SQL query execution (SELECT, INSERT, UPDATE, DELETE, DDL), and atomic transaction support with controlled read/write permissions.
Allows managing multiple MySQL databases, providing tools for schema exploration, SQL query execution (SELECT, INSERT, UPDATE, DELETE, DDL), and atomic transaction support with controlled read/write permissions.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MariaDB MCP Servershow me the schema for the orders table in the production database"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mariadb-mcp-server
MCP (Model Context Protocol) server for MariaDB/MySQL databases. Provides AI assistants with safe, controlled database access through per-connection read/write permissions.
Features
Multi-connection — manage multiple MariaDB/MySQL databases from a single server
Per-connection access control —
readandwriteflags per connectionOptional limits —
statement_timeout_ms,default_row_limit,max_row_limit(all optional, unlimited by default)SQL guard — validates queries to prevent accidental writes through read tools
Transaction support — atomic multi-query execution on writable connections
Installation
npm install -g @cemalturkcann/mariadb-mcp-serverOr use directly with npx:
npx @cemalturkcann/mariadb-mcp-serverConfiguration
The server looks for config.json in this order:
DB_MCP_CONFIG_PATHenvironment variableNext to the package (
../config.jsonrelative tosrc/)Current working directory
~/.config/mariadb-mcp/config.json
If no config is found, a default one is created automatically at ~/.config/mariadb-mcp/config.json with a local read-only connection.
Example config:
{
"connections": {
"local": {
"host": "localhost",
"port": 3306,
"user": "root",
"password": "",
"description": "Local MariaDB",
"read": true,
"write": true
},
"production": {
"host": "db.example.com",
"port": 3306,
"user": "readonly_user",
"password": "secret",
"database": "mydb",
"description": "Production (read-only)",
"read": true,
"write": false,
"statement_timeout_ms": 5000,
"default_row_limit": 50,
"max_row_limit": 500
}
}
}Connection options
Field | Type | Default | Description |
| string |
| Database host |
| number |
| Database port |
| string |
| Database user |
| string |
| Database password |
| string |
| Default database |
| string |
| Human-readable label |
| boolean |
| Allow read queries |
| boolean |
| Allow write queries |
| boolean/object |
| SSL configuration |
| number | none | Connection timeout (0 or omit = unlimited) |
| number | none | Default LIMIT for SELECT (0 or omit = unlimited) |
| number | none | Max allowed LIMIT (0 or omit = unlimited) |
MCP Tools
Tool | Description | Requires |
| List all configured connections | — |
| Show databases on a connection |
|
| Show tables (optionally in a specific database) |
|
| Show column definitions |
|
| Run SELECT / SHOW / DESCRIBE / EXPLAIN queries |
|
| Run INSERT / UPDATE / DELETE / DDL queries |
|
| Run multiple write queries atomically |
|
| Suggest a query for manual review | — |
MCP Client Setup
On first run, a default config is created automatically at ~/.config/mariadb-mcp/config.json (Linux/macOS) or %APPDATA%\mariadb-mcp\config.json (Windows). Edit it to add your connections.
Claude Code
Add to ~/.claude.json:
{
"mcpServers": {
"mariadb": {
"command": "npx",
"args": ["-y", "@cemalturkcann/mariadb-mcp-server"]
}
}
}OpenCode
Add to your opencode.json:
{
"mcp": {
"mariadb": {
"type": "local",
"command": ["npx", "-y", "@cemalturkcann/mariadb-mcp-server"]
}
}
}Other MCP Clients
Any MCP-compatible client can use this server. The binary name is mariadb-mcp-server and it communicates over stdio. To use a custom config path, set DB_MCP_CONFIG_PATH.
License
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.