Back to Discover

db-gateway

connector

sijunkim

145+ tools across 8 databases: MySQL, PostgreSQL, Redshift, MongoDB, Redis, Kafka, and more

View on GitHub
0 starsSynced Aug 6, 2026

Install to Claude Code

/plugin marketplace add sijunkim/db-gateway

README

DB Gateway MCP Server

English | 한국어

An MCP server that gives AI agents direct access to your databases — 145+ tools across 8 engines.

The point is that the agent reads your schema itself instead of you pasting DDL into a prompt:

You: "Find users who signed up last month and never placed an order"

  1. mysql_get_all_schemas          → reads every table definition
  2. mysql_get_table_relationships  → finds the users ↔ orders foreign key
  3. mysql_execute_query            → runs the LEFT JOIN
EngineToolsEngineTools
MySQL16Redis21
PostgreSQL16DynamoDB13
Redshift27Elasticsearch19
MongoDB14Kafka19

Quick Start

Requires Node.js 18+. Register it with your MCP client — no install step:

{
  "mcpServers": {
    "db-gateway": {
      "command": "npx",
      "args": ["-y", "db-gateway"],
      "env": {
        "DBS": "mysql,redis",
        "MYSQL": "mysql://<user>:<password>@<host>:3306/<database>?alias=dev&default=true",
        "REDIS": "redis://:@<host>:6379/0?alias=dev&default=true"
      }
    }
  }
}

DBS decides which engines are enabled — only those tools get registered.

Connection strings

One string per engine. Semicolons separate multiple instances.

VariableFormat
MYSQLmysql://<user>:<password>@<host>:<port>/<db>?alias=name
POSTGRESQLpostgresql://<user>:<password>@<host>:<port>/<db>?alias=name&ssl=true
REDISredis://:<password>@<host>:<port>/<db-index>?alias=name
MONGODBmongodb://<user>:<password>@<host>:<port>/<db>?alias=name
REDSHIFTredshift://<user>:<password>@<host>:<port>/<db>?alias=name&ssl=true
ELASTICSEARCHelasticsearch://<user>:<password>@<host>:<port>?alias=name, or http(s)://<host>:<port>?alias=name
KAFKAkafka://<user>:<password>@<broker>:<port>,<broker2>:<port>?alias=name&mechanism=plain

alias is required. It is how tools address a specific instance — omit it and that engine fails to connect.

Several instances of the same engine — separate their connection strings with a semicolon. The agent picks one by passing an alias argument to any tool; default=true marks the one used when no alias is given:

MYSQL="mysql://<user>:<password>@<dev-host>:3306/<db>?alias=dev&default=true;mysql://<user>:<password>@<prod-host>:3306/<db>?alias=prod"

DynamoDB is the exception — it takes DYNAMODB_REGION, DYNAMODB_ACCESS_KEY_ID, and DYNAMODB_SECRET_ACCESS_KEY instead. See .env.example for every option.

Read-Only Mode

READ_ONLY=true hides write tools from the tool list entirely and restricts *_execute_query to SELECT-style statements.

Register production as a second MCP server with this flag on. The agent then cannot modify production data — the write tools do not exist as far as it can see.

"db-gateway-prod": {
  "command": "npx",
  "args": ["-y", "db-gateway"],
  "env": { "READ_ONLY": "true", "DBS": "mysql", "MYSQL": "..." }
}

Documentation

License

MIT

Rendered live from sijunkim/db-gateway's GitHub README — not stored, always reflects the source repo.

1 Install Method

NameDescriptionCategorySource
npm packageInstall via npm (stdio transport)mcp-serverdb-gateway

0 Comments

Login required
Log in to post a comment or update on this repo.

No comments yet — be the first to share an update.