bytebase/dbhub

by bytebase

247 stars
14.1k downloads
Not rated
GitHub Website

About

Provides a universal database gateway for connecting to PostgreSQL, MySQL, SQLite, and DuckDB, enabling table browsing, schema inspection, and read-only SQL queries with built-in safety checks

Details

Author
bytebase
Repository
bytebase/dbhub
GitHub stars
247
Downloads
14,081
License
MIT License
Categories
Database, Community, Other, Design, Developer Tools, AI, Knowledge Base, Infrastructure
Tags
#web

- Zero dependency and token efficient with only two MCP tools
- Multi-database support: PostgreSQL, MySQL, MariaDB, SQL Server, SQLite
- Multi-connection configuration via TOML files
- Guardrails: read-only mode, row limiting, query timeout
- Secure access: SSH tunneling and SSL/TLS encryption
- Built-in web interface (Workbench) for query execution and tracing

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name bytebase/dbhub
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 @highlight/mcp-server

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

npx @bytebase/dbhub@latest --transport http --port 8080 --dsn "postgres://user:password@localhost:5432/dbname?sslmode=disable"

Also available as:

- Docker image
- MCP Bundle (one-click install, read-only)
- Claude Code plugin

See the Installation Guide for all options, Command-Line Options for parameters, and Multi-Database Configuration for connecting several databases at once.

pnpm install

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.

explain_sql

Show a query's execution plan without running it.

health_check

Report connection pool state and buffer cache hit ratio.

Custom Tools

Define reusable, parameterized SQL operations in your dbhub.toml configuration file.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "bytebase/dbhub": {
            "command": "npx",
            "args": [
                "-y",
                "@highlight/mcp-server"
            ],
            "env": {}
        }
    }
}

Macos

{
    "command": "npx",
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "env": []
}

Windows

{
    "command": "cmd",
    "args": [
        "/c",
        "npx",
        "-y",
        "@highlight/mcp-server"
    ],
    "env": "$2a:props:children:props:children:props:mcp:inferred_config:macos:env"
}

Linux

{
    "command": "npx",
    "args": "$2a:props:children:props:children:props:mcp:inferred_config:macos:args",
    "env": "$2a:props:children:props:children:props:mcp:inferred_config:macos:env"
}
> [!NOTE] > Brought to you by [Bytebase](https://www.bytebase.com/), open-source database governance platform. <p align="center"> <a href="https://dbhub.ai/" target="_blank"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/bytebase/dbhub/main/docs/images/logo/full-dark.svg" width="75%"> <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/bytebase/dbhub/main/docs/images/logo/full-light.svg" width="75%"> <img src="https://raw.githubusercontent.com/bytebase/dbhub/main/docs/images/logo/full-light.svg" width="75%" alt="DBHub Logo"> </picture> </a> </p> ```bash +------------------+ +--------------+ +------------------+ | | | | | | | | | | | | | Claude Desktop +--->+ +--->+ PostgreSQL | | | | | | | | Claude Code +--->+ +--->+ SQL Server | | | | | | | | Cursor +--->+ DBHub +--->+ SQLite | | | | | | | | VS Code +--->+ +--->+ MySQL | | | | | | | | Copilot CLI +--->+ +--->+ MariaDB | | | | | | | | | | | | | +------------------+ +--------------+ +------------------+ MCP Clients MCP Server Databases ``` DBHub is a minimal MCP server: token-efficient, zero-dependency, and just two tools by default with opt-in extras. This lightweight gateway allows MCP-compatible clients to connect to and explore different databases: - **Minimal**: Zero dependency, token efficient with a minimal set of 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 mode, row limiting, and query timeout to prevent runaway operations - **Secure Access**: SSH tunneling and SSL/TLS encryption > DBHub is the official example in the [Claude Code docs](https://code.claude.com/docs/en/mcp#example-query-your-postgresql-database) for connecting to PostgreSQL via MCP. ## Token Efficiency DBHub loads just 2 tools by default at **1.4k tokens** — 13-14x fewer than alternatives — keeping the context window open for your actual work. | MCP Server | Default Config | Default Tools | |------------|---------------|--------------| | **DBHub** | **1.4k** | 2 (`execute_sql`, `search_objects`) | | MCP Toolbox | 19.0k | 28 | | Supabase MCP | 19.3k | all | ## Use Cases - **Local Development**: Schema exploration, query validation, and data debugging with Claude Code, VS Code, Cursor, etc. - **Non-Technical Access**: Expose curated, read-only views to non-technical staff via Claude Desktop, VS Code, Cursor, etc. - **Multi-Database Consolidation**: Replace separate MCP servers for each database with a single DBHub process - **Production Troubleshooting**: Read-only diagnostics with guardrails against runaway queries ## Supported Databases PostgreSQL, MySQL, SQL Server, MariaDB, and SQLite. ## MCP Tools DBHub implements MCP tools for database operations: - **[execute_sql](https://dbhub.ai/tools/execute-sql)**: Execute SQL queries with transaction support and safety controls - **[search_objects](https://dbhub.ai/tools/search-objects)**: Search and explore database schemas, tables, columns, indexes, and procedures with progressive disclosure - **[explain_sql](https://dbhub.ai/tools/explain-sql)** (opt-in): Show a query's execution plan without running it - **[health_check](https://dbhub.ai/tools/health-check)** (opt-in): Report connection pool state and buffer cache hit ratio - **[Custom Tools](https://dbhub.ai/tools/custom-tools)**: Define reusable, parameterized SQL operations in your `dbhub.toml` configuration file ## Workbench DBHub includes a [built-in web interface](https://dbhub.ai/workbench/overview) 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. ![workbench](https://raw.githubusercontent.com/bytebase/dbhub/main/docs/images/workbench/workbench.webp) ## Installation ```bash npx @bytebase/dbhub@latest --transport http --port 8080 --dsn "postgres://user:password@localhost:5432/dbname?sslmode=disable" ``` Also available as: - [Docker image](https://dbhub.ai/installation#docker) - [MCP Bundle](https://dbhub.ai/mcpb) (one-click install, read-only) - [Claude Code plugin](https://dbhub.ai/claude-code-plugin) See the [Installation Guide](https://dbhub.ai/installation) for all options, [Command-Line Options](https://dbhub.ai/config/command-line) for parameters, and [Multi-Database Configuration](https://dbhub.ai/config/toml) for connecting several databases at once. ## Development Requires Node.js >= 22.5.0 (DBHub uses the built-in `node:sqlite` module). ```bash # 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](.claude/skills/testing/SKILL.md) and [Debug](https://dbhub.ai/config/debug). ## Contributors <a href="https://github.com/bytebase/dbhub/graphs/contributors"> <img src="https://contrib.rocks/image?repo=bytebase/dbhub" /> </a> ## Star History <a href="https://www.star-history.com/?repos=bytebase%2Fdbhub&type=date&legend=top-left"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/chart?repos=bytebase/dbhub&type=date&theme=dark&legend=top-left" /> <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/chart?repos=bytebase/dbhub&type=date&legend=top-left" /> <img alt="Star History Chart" src="https://api.star-history.com/chart?repos=bytebase/dbhub&type=date&legend=top-left" /> </picture> </a>
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.