badger-db-mcp
v0.19.8
Published
Badger DB MCP — minimal, token-efficient Database MCP Server for PostgreSQL, MySQL, SQL Server, SQLite, MariaDB
Downloads
412
Readme
[!NOTE]
Brought to you by Bytebase, open-source database DevSecOps platform.
flowchart LR
subgraph clients["MCP Clients"]
c1[Claude Desktop]
c2[Claude Code]
c3[Cursor]
c4[VS Code]
c5[Copilot CLI]
end
S[Badger DB MCP]
subgraph databases["Databases"]
d1[PostgreSQL]
d2[SQL Server]
d3[SQLite]
d4[MySQL]
d5[MariaDB]
end
clients --> S
S --> databasesBadger DB MCP is a zero-dependency, token efficient MCP server implementing the Model Context Protocol (MCP) server interface. This lightweight gateway allows MCP-compatible clients to connect to and explore different databases. It is a fork of DBHub.
- Local Development First: Zero dependency, token efficient with just two MCP tools to maximize context window
- Multi-Database: PostgreSQL, MySQL, MariaDB, SQL Server, and SQLite through a single interface
- Multi-Connection: Connect to multiple databases simultaneously with TOML configuration
- Guardrails: Read-only by default (single-DSN mode); use
--allow-destructive-sql=trueto allow writes. Row limiting and query timeout to prevent runaway operations - Secure Access: SSH tunneling and SSL/TLS encryption
Supported Databases
PostgreSQL, MySQL, SQL Server, MariaDB, and SQLite.
MCP Tools
Badger DB MCP implements MCP tools for database operations:
- execute_sql: Execute SQL queries with transaction support and safety controls
- search_objects: Search and explore database schemas, tables, columns, indexes, and procedures with progressive disclosure
- Custom Tools: Define reusable, parameterized SQL operations in your
dbhub.tomlconfiguration file
Workbench
Badger DB MCP includes a built-in web interface for interacting with your database tools. It provides a visual way to execute queries, run custom tools, and view request traces without requiring an MCP client.

Installation
See the full Installation Guide for detailed instructions.
Quick Start
Docker:
docker run --rm --init \
--name badger-db-mcp \
--publish 8080:8080 \
bytebase/dbhub \
--transport http \
--port 8080 \
--dsn "postgres://user:password@localhost:5432/dbname?sslmode=disable"NPM:
npx @bytebase/dbhub@latest --transport http --port 8080 --dsn "postgres://user:password@localhost:5432/dbname?sslmode=disable"Demo Mode:
npx @bytebase/dbhub@latest --transport http --port 8080 --demoWhen using a single DSN (no TOML config), the server runs in read-only mode by default; only SELECT and other read-only SQL is allowed. Pass --allow-destructive-sql=true to allow INSERT/UPDATE/DELETE/MERGE and similar operations.
See Command-Line Options for all available parameters.
Multi-Database Setup
Connect to multiple databases simultaneously using TOML configuration files. Perfect for managing production, staging, and development databases from a single Badger DB MCP instance.
See Multi-Database Configuration for complete setup instructions.
Development
# Install dependencies
pnpm install
# Run in development mode
pnpm dev
# Build and run for production
pnpm build && pnpm start --transport stdio --dsn "postgres://user:password@localhost:5432/dbname"See Testing and Debug for Badger DB MCP.
