DB MCP Server
db-mcp-server
An MCP server for several databases with protection: a read-only mode per database and a row limit. Written in Go, launched in Docker
- 465 ★ on the repository
- Last commit
- MIT
Broad access
Why this level
- Without an API key the transport is open
- With read_only off the agent writes to the databases
Install
- Works in
Manual install
docker run -p 9092:9092 ... -e DB_MCP_API_KEY=...See the README for the full command with database setup. Or git clone https://github.com/FreePeak/db-mcp-server.git.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Without an API key the transport is open
- With read_only off the agent writes to the databases
This is third-party code. Review the repository files before installing.
What it does
DB MCP Server gives an agent access to several databases through one MCP server. Protection: a `read_only` mode per database and a row limit in the response. Docker launch: `docker run -p 9092:9092 ... -e DB_MCP_API_KEY=...`, also `git clone https://github.com/FreePeak/db-mcp-server.git`. Without an API key the transport stays open, which is a single-user mode. A Go program, version 1.9.0 from 11.04.2026, MIT license.
Who it is for. For developers and analysts who want to read several databases from an agent with write limits.
Good fit when
- You need agent access to several databases through one server
- You need a read-only mode per database
- You need to limit the number of rows in a response
Not a fit when
- You cannot let an agent write to production databases
- You need protection stronger than an API key
Example request
Show the ten latest orders from the test database and how many there were in a week, read onlyMCP
- Transport
- http
- Authentication
- API key
Environment variables
DB_MCP_API_KEYrequired, secret- Environment variable DB_MCP_API_KEY, the value is set in the client or a .env file
Limitations
Without an API key the transport is open (a single-user mode): set DB_MCP_API_KEY. With read_only on, access is extended and with it off it is wide: the agent writes to the databases. Turn read_only on for each database and connect test copies.
How to disable. Stop the container and remove the server entry from the client and revoke the DB_MCP_API_KEY key.
FAQ
What does the server do?
It gives an agent access to several databases with a read_only mode per database and a row limit.
How do I launch it?
In Docker: docker run -p 9092:9092 with the DB_MCP_API_KEY key, or git clone.
What happens without an API key?
The transport stays open, a single-user mode.
Discussion
No questions or reviews yet.
Related
MCP serversMCP server that gives an agent access to MySQL: schema inspection and queries, read-only by default, writes behind flags
A Python MCP server for MySQL: listing tables, reading data, running SQL and inspecting schema through a controlled interface
A token-lean MCP server for PostgreSQL, MySQL, MariaDB, SQL Server and SQLite with a read-only mode
Official YDB MCP server
YDB MCP
YDB's own official MCP server from the database's developers: parameterized SQL queries, execution plans, directory browsing, and a base for custom servers
Official MongoDB MCP server: queries and aggregations, index management, Atlas clusters and local deployments
A lightweight database workspace with an MCP server: the agent reads the schema, runs queries and explores data in PostgreSQL, MySQL and more
Comparison with similar tools
Entries that share the main search query, and how they differ.
| Entry | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| DB MCP Server (this entry) | no | API key | 465 | |
| ArcticDB MCP | no | not required | 775 | the ArcticDB time series store |
| dbt MCP | yes | API key | 608 | dbt projects, the Semantic Layer and running dbt commands |
README in short
The README describes an MCP server for several databases with a read_only mode, a row limit and Docker launch. MIT license.