DB Gateway MCP server
io.github.sijunkim/db-gateway·v1.0.4145+ tools across 8 databases: MySQL, PostgreSQL, Redshift, MongoDB, Redis, Kafka, and more
0 stars32 downloads/wk
Reviews
Write oneNobody has reviewed DB Gateway yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
DB Gateway tools (100, 29 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
dynamodb_batch_get_itemGet multiple items from one or more DynamoDB tables in a single request
dynamodb_batch_write_itemwrite actionPut or delete multiple items in one or more DynamoDB tables
dynamodb_create_tablewrite actionCreate a new DynamoDB table
dynamodb_delete_itemwrite actionDelete an item from a DynamoDB table
dynamodb_delete_tablewrite actionDelete a DynamoDB table (WARNING: This permanently removes the table and all its data)
dynamodb_describe_tableGet detailed information about a DynamoDB table
dynamodb_get_itemGet an item from a DynamoDB table by its primary key
dynamodb_list_tablesList all tables in DynamoDB
dynamodb_put_itemwrite actionCreate or replace an item in a DynamoDB table
dynamodb_queryQuery items from a DynamoDB table using key conditions
dynamodb_scanScan all items in a DynamoDB table (use with caution on large tables)
dynamodb_transact_write_itemswrite actionPerform multiple Put, Update, Delete, or ConditionCheck operations atomically across one or more tables
dynamodb_update_itemwrite actionUpdate an existing item in a DynamoDB table
elasticsearch_aggregatePerform aggregations on documents
elasticsearch_bulkPerform bulk operations (index, update, delete) in a single request
elasticsearch_countCount documents matching a query
elasticsearch_create_aliaswrite actionCreate an alias for an index
elasticsearch_create_indexwrite actionCreate a new index with optional settings and mappings
elasticsearch_delete_aliaswrite actionDelete an alias from an index
elasticsearch_delete_documentwrite actionDelete a document by ID
elasticsearch_delete_indexwrite actionDelete an index (WARNING: This permanently removes the index and all its data)
elasticsearch_get_cluster_healthGet the health status of the ElasticSearch/OpenSearch cluster
elasticsearch_get_cluster_infoGet basic information about the ElasticSearch/OpenSearch cluster
elasticsearch_get_documentGet a document by its ID
elasticsearch_get_indexGet detailed information about a specific index
elasticsearch_get_index_settingsGet the settings of an index
elasticsearch_get_mappingGet the mapping definition of an index
elasticsearch_index_documentIndex (create or update) a document
elasticsearch_list_aliasesList all index aliases
elasticsearch_list_indicesList all indices in the ElasticSearch/OpenSearch cluster
elasticsearch_refresh_indexRefresh an index to make recent changes searchable
elasticsearch_searchSearch for documents using Query DSL
elasticsearch_update_documentwrite actionPartially update an existing document
kafka_add_partitionsIncrease the number of partitions for a topic (cannot decrease partitions)
kafka_alter_topic_configModify configuration settings for a Kafka topic
kafka_create_topicwrite actionCreate a new Kafka topic with specified partitions and replication factor
kafka_delete_consumer_groupwrite actionDelete a consumer group. Group must be inactive (no running consumers)
kafka_delete_topicwrite actionDelete a Kafka topic (WARNING: This permanently removes the topic and all its data)
kafka_describe_consumer_groupGet detailed information about a consumer group including members and their assignments
kafka_describe_topicGet detailed information about a Kafka topic including partitions, leaders, and replicas
kafka_get_cluster_infoGet Kafka cluster information including brokers, controller, and cluster ID
kafka_get_consumer_group_offsetsGet committed offsets for a consumer group on a specific topic
kafka_get_latest_messagesGet the most recent messages from a topic across all partitions
kafka_get_messagesRead messages from a specific partition starting from a given offset
kafka_get_topic_configGet configuration settings for a Kafka topic (retention, cleanup policy, etc.)
kafka_get_topic_offsetsGet offset information for each partition of a topic (current, high, low watermarks)
kafka_list_consumer_groupsList all consumer groups in the Kafka cluster
kafka_list_topicsList all topics in the Kafka cluster (excludes internal topics starting with __)
kafka_produce_messageProduce a message to a Kafka topic (for testing purposes)
kafka_reset_consumer_offsetsReset consumer group offsets for reprocessing messages. Group must be inactive (no running consumers)
kafka_search_messages_by_contentSearch for messages by content (value contains search text). Scans from beginning of topic
kafka_search_messages_by_keySearch for messages by key (exact match or contains). Scans from beginning of topic
kafka_search_messages_by_timestampSearch for messages within a specific time range
mongodb_aggregatePerform an aggregation pipeline on a MongoDB collection
mongodb_collection_statsGet statistics about a MongoDB collection (size, count, indexes, storage)
mongodb_countCount documents in a MongoDB collection matching an optional filter
mongodb_create_indexwrite actionCreate an index on a specified MongoDB collection
mongodb_delete_manywrite actionDelete multiple documents from a MongoDB collection
mongodb_delete_onewrite actionDelete a single document from a MongoDB collection
mongodb_distinctGet distinct values for a field in a MongoDB collection
mongodb_drop_collectionwrite actionDrop a collection from a specified MongoDB database
mongodb_find_manyFind multiple documents in a MongoDB collection
mongodb_find_oneFind a single document in a MongoDB collection
mongodb_insert_manywrite actionInsert multiple documents into a MongoDB collection
mongodb_insert_onewrite actionInsert a single document into a MongoDB collection
mongodb_list_collectionsList all collections in a specified MongoDB database
mongodb_list_databasesList all databases in MongoDB
mongodb_list_indexesList all indexes on a MongoDB collection
mongodb_update_manywrite actionUpdate multiple documents in a MongoDB collection
mongodb_update_onewrite actionUpdate a single document in a MongoDB collection
mysql_describe_tableDescribe the structure of a MySQL table
mysql_execute_batchwrite actionExecute multiple SQL queries sequentially on a single connection. Useful for running several queries at once. All queries share the same connection, so SET variables and temporary tables persist across queries. Returns an array of { query, result } pairs.
mysql_execute_querywrite actionExecute SQL query on MySQL database
mysql_explain_queryGet the execution plan for a SQL query (EXPLAIN)
mysql_get_all_schemasGet CREATE TABLE statements for all tables in the current database
mysql_get_schemaGet the CREATE TABLE statement for a specific MySQL table
mysql_get_table_relationshipsGet all foreign key relationships between tables in the current database
mysql_kill_processwrite actionKill a MySQL connection/query by process ID
mysql_list_connectionsList all configured MySQL connections with their status (connected/disconnected)
mysql_list_databasesList all databases the current user can see in MySQL
mysql_list_indexesList all indexes on a specific MySQL table
mysql_show_processlistShow all running queries and connections in MySQL (SHOW FULL PROCESSLIST)
mysql_show_statusShow MySQL server status variables (connections, queries, etc.)
mysql_show_tablesShow all tables in the current MySQL database
mysql_show_variablesShow MySQL server configuration variables
mysql_table_statsGet table statistics including row count, data size, and index size
mysql_use_databaseSwitch to a different MySQL database
postgresql_describe_tableDescribe the structure of a PostgreSQL table
postgresql_execute_querywrite actionExecute SQL query on PostgreSQL database
postgresql_explain_queryGet the execution plan for a SQL query (EXPLAIN FORMAT JSON)
postgresql_get_schemaGet the schema information for a specific PostgreSQL table
postgresql_kill_processwrite actionTerminate a PostgreSQL connection/query by PID (pg_terminate_backend)
postgresql_list_databasesList all databases the current user can see in PostgreSQL
postgresql_list_indexesList all indexes on a specific PostgreSQL table
postgresql_show_processlistShow all active queries and connections in PostgreSQL (pg_stat_activity)
postgresql_show_statusShow PostgreSQL database statistics (connections, transactions, cache hits)
postgresql_show_tablesShow all tables in the current PostgreSQL database (public schema)
postgresql_show_variablesShow PostgreSQL server configuration variables (pg_settings)
postgresql_table_statsGet table statistics including row count, size, and vacuum info
postgresql_use_databaseSwitch to a different PostgreSQL database (reconnects)
Public scan report
scanner v0.1.9 · 2026-09-23 · same rubric, same numbers if you re-run it
- Code scan49 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 45 days ago12/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How DB Gateway compares
Against every graded Databases MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 78/100
- higher than 47% of 802 Databases servers
- Tools
- 100
- the typical Databases server has 8
- Tools that change things
- 29%
- typical: 10%. Fewer write tools means less an agent can break
- Downloads a week
- 32
- more than 19% of 324 Databases servers with a package
What its tools let an agent do: 60 read · 27 change · 13 send or post
Install DB Gateway in Claude Code, Cursor or VS Code
Runs npx -y db-gateway on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add db-gateway -- npx -y db-gateway
What the publisher says
From the DB Gateway repository's README, as published. We do not edit it. Read it on GitHub
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 JOINWhy db-gateway?
Most database MCP servers cover one engine, or a handful of relational ones. If your stack is MySQL for the app, Redshift for analytics, Redis for cache, and Kafka for events, that means four servers with four different config styles.
This is one server, one config block:
DBS decides which of them are enabled — only those tools get registered, so a MySQL-only setup stays a MySQL-only tool list.
See It Work
Every screenshot below is one real session against a development MySQL database holding 249 rows — unedited output, not mock data. The agent calls a single tool, mysqlexecutequery, and never sees a host, port, or password: those stay in the client config, and the agent only ever names the alias.
Point the same server at production with READ_ONLY=true and steps 2 through 4 simply do not exist — the write tools are never registered, so the agent cannot see them to call them.
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.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
DB Gateway: common questions
- Is DB Gateway MCP server safe?
- Mostly: it is graded B (78/100). Read the DB Gateway safety report
- How do I install DB Gateway?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does DB Gateway need an API key?
- Yes. The registry entry asks for
MYSQL,POSTGRESQL,REDSHIFT,MONGODBand 5 more. - Is DB Gateway maintained?
- The last commit was 85 days ago (2026-08-09). The latest release is v1.0.4.
- What can I use instead of DB Gateway?
- Servers from other publishers that do the same job: DBHub MCP server, Faucet MCP server and Quarry MCP server.
- How does DB Gateway compare with other Databases MCP servers?
- safety score 78/100 (higher than 47% of 802 Databases servers); tools 100 (the typical Databases server has 8); tools that change things 29% (typical: 10%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to DB Gateway
Same job from other publishers: the closest match first, then the best rated.
- DBHubToken-efficient database MCP server for PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLitenot reviewedWidely usedA
- FaucetSQL database to MCP tools and REST API: PostgreSQL, MySQL, SQL Server, Oracle, SQLite, Snowflake.not reviewedEstablishedA
- QuarrySafety-railed database access: Postgres, MySQL, SQLite, Redis. Read-only by default.not reviewedGrowingA
- AppwriteBuild and deploy backends: auth, Postgres/MySQL/vector databases, storage, functions, hosting, CDNnot reviewedEstablishedA
- KubesharkReal-time Kubernetes network traffic visibility and API analysis for HTTP, gRPC, Redis, Kafka, DNS.not reviewedEstablishedA