About Mariadb MCP Server
Mariadb MCP Server is an MCP server published by cemalturkcan in the Data category: mCP server for MariaDB/MySQL with per-connection read/write access control.
The repository has 5 stars and 0 forks, with the last commit 6 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/cemalturkcan/mariadb-mcp-serverThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Mariadb MCP Server
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository yesterday. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
- ✓Dependencies pinnedA lockfile pins dependency versions.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
1 check has not been run yet.
Releases
README
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 connection - Optional 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-server
Or use directly with npx:
npx @cemalturkcann/mariadb-mcp-server
Configuration
The server looks for config.json in this order:
DB_MCP_CONFIG_PATHenvironment variable- Next 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 |
|---|---|---|---|
host |
string | localhost |
Database host |
port |
number | 3306 |
Database port |
user |
string | root |
Database user |
password |
string | "" |
Database password |
database |
string | "" |
Default database |
description |
string | "" |
Human-readable label |
read |
boolean | true |
Allow read queries |
write |
boolean | false |
Allow write queries |
ssl |
boolean/object | false |
SSL configuration |
statement_timeout_ms |
number | none | Connection timeout (0 or omit = unlimited) |
default_row_limit |
number | none | Default LIMIT for SELECT (0 or omit = unlimited) |
max_row_limit |
number | none | Max allowed LIMIT (0 or omit = unlimited) |
MCP Tools
| Tool | Description | Requires |
|---|---|---|
list_connections |
List all configured connections | — |
list_databases |
Show databases on a connection | read |
list_tables |
Show tables (optionally in a specific database) | read |
describe_table |
Show column definitions | read |
execute_select |
Run SELECT / SHOW / DESCRIBE / EXPLAIN queries | read |
execute_write |
Run INSERT / UPDATE / DELETE / DDL queries | write |
execute_transaction |
Run multiple write queries atomically | write |
suggest_query |
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
README fetched from the repository yesterday. The original is authoritative.