Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

DB Connect MCP

by yugui923version 0.3.1i★ –iRuns on your computer
Registry nameio.github.yugui923/db-connect-mcp

Install

Overview

Description from the maker (original English)

Multi-database MCP server for PostgreSQL, MySQL, and ClickHouse

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Databases & datasets
  • You need to fill in: DATABASE_URL

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: DATABASE_URL

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • PyPIPython’s uv installed (for the uvx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "db-connect": {
      "command": "uvx",
      "args": [
        "db-connect-mcp"
      ],
      "env": {
        "DATABASE_URL": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add db-connect --env DATABASE_URL=your-value -- uvx db-connect-mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "db-connect": {
      "command": "uvx",
      "args": [
        "db-connect-mcp"
      ],
      "env": {
        "DATABASE_URL": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "db-connect": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "db-connect-mcp"
      ],
      "env": {
        "DATABASE_URL": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • DATABASE_URL secret required env
    Database connection URL (e.g., postgresql+asyncpg://user:pass@host:5432/db)

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account yugui923, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Databases & datasetsi

  • More stars than 0% of the other 1146 servers in this category
  • Published to the registry more recently than 4% of the other 1146 servers in this category
  • Basic checks equal to or better than 100% of the other 1146 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is DB Connect MCP safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: DATABASE_URL

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.3.1) reached the registry 9 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.

What can I use instead?

In the same category: Supabase, MongoDB MCP Server, Elasticsearch MCP Server

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Supabase

Supabase’s official server lets AI create tables, query data and review project settings in your Supabase database.

by supabaseWidely used↓ 235.4K/wk★ 3KUpdated 2 days ago

Computer or cloud✓ supabase.com

MongoDB MCP Server

MongoDB Model Context Protocol Server

by mongodb-jsWidely used↓ 157.1K/wk★ 1.2KUpdated 4 days ago

Runs on your computer

Elasticsearch MCP Server

MCP server for interacting with Elasticsearch

by cr7258Growing↓ 2.7K/wk★ 315Updated 14 months ago

Runs on your computer

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

db-connect-mcp - Multi-Database MCP Server

A read-only MCP (Model Context Protocol) server for exploratory data analysis across multiple database systems. This server provides safe, read-only access to PostgreSQL, MySQL, and ClickHouse databases with comprehensive analysis capabilities.

Demo

Quick Start

  1. Install:
   pip install db-connect-mcp
  1. Add to Claude Desktop claude_desktop_config.json:
   {

"mcpServers": { "db-connect": { "command": "python", "args": ["-m", "db_connect_mcp"], "env": { "DATABASE_URL": "postgresql://user:pass@localhost:5432/mydb" } } } }

  1. Restart Claude Desktop and start querying your database!

Note: Using python -m db_connect_mcp ensures the command works even if Python's Scripts directory isn't in your PATH. Existing mcpServers configurations remain valid: stdio is still the default. The optional remote Streamable HTTP mode serves both older initialize-based clients and 2026-07-28 session-free MCP clients at /mcp without changing the database or SSH configuration. Existing HTTP deployments must review forwarded Host/Origin values: the upgrade enables transport validation and may require MCP_ALLOWED_HOSTS / MCP_ALLOWED_ORIGINS.

Features

🗄️ Multi-Database Support
  • PostgreSQL - Full support with advanced metadata and statistics
  • MySQL - Complete support for MySQL and MariaDB databases
  • ClickHouse - Support for analytical workloads and columnar storage
🔍 Database Exploration
  • List schemas - View all schemas in the database
  • List tables - See all tables with metadata (size, row counts, comments)
  • Describe tables - Get detailed column information, indexes, and constraints
  • View relationships - Understand foreign key relationships between tables
📊 Data Analysis
  • Column profiling - Statistical analysis of column data
  • Basic statistics (count, unique values, nulls)
  • Numeric statistics (mean, median, std dev, quartiles)
  • Value frequency distribution
  • Cardinality analysis
  • Data sampling - Preview table data with configurable limits
  • Custom queries - Execute read-only SQL queries safely
  • Object search - Find schemas, tables, views, columns, and indexes without loading the full catalog
  • Query plans - Inspect estimated plans or opt into EXPLAIN ANALYZE where supported
  • Hypothetical indexes (PostgreSQL, opt-in) - Compare HypoPG planner estimates without creating a real index. Requires an administrator-installed HypoPG extension, DB_HYPOPG_ENABLED=true on the server, and opt_in=true on each compare_hypothetical_index call. Provide a single simple SELECT, schema, table, and 1–4 column names; comments, CTEs, functions, literals, parameters, and multiple statements are rejected. The tool uses one read-only connection and EXPLAIN without ANALYZE, caps planning/lock waits at 5s/1s, and rolls back session-local changes. The response reports hypothetical_index_used by matching the HypoPG index name in the resulting plan; an unused candidate may be irrelevant or simply not chosen by the planner. The candidate requires schema USAGE and table SELECT privileges. These estimates are not measured speedups.
🔒 Safety Features
  • Read-only enforcement - All connections are read-only at multiple levels
  • Query validation - Only SELECT and WITH queries are allowed
  • Automatic limits - Queries are automatically limited to prevent large result sets
  • Connection string safety - Automatically adds read-only parameters
  • Database-specific safety - Each adapter implements appropriate safety measures
🔭 Observability

db-connect-mcp inherits the MCP SDK's built-in OpenTelemetry server instrumentation. The API is a no-op until the launching process configures an SDK and exporter. Review exporter sampling and redaction before production use, because database identifiers and error details may be sensitive.

💡 Best Practices

Tip: db-connect-mcp works best with databases that have proper comments on tables and columns. When your database includes descriptive comments, the MCP server can provide richer context to AI assistants, leading to better understanding of your data model and more accurate query suggestions.

Adding comments in PostgreSQL:

COMMENT ON TABLE users IS 'Registered user accounts with profile information';

COMMENT ON COLUMN users.email IS 'Primary email address, used for authentication'; COMMENT ON COLUMN users.is_verified IS 'Whether email has been verified via confirmation link';

Adding comments in MySQL:

ALTER TABLE users COMMENT = 'Registered user accounts with profile information';

ALTER TABLE users MODIFY COLUMN email VARCHAR(255) COMMENT 'Primary email address, used for authentication';

The server automatically retrieves and displays these comments when describing tables, helping AI assistants understand the purpose and semantics of your data.

🔐 SSH Tunnel Support
  • Secure remote access - Connect to databases behind firewalls via SSH tunnels
  • Automatic tunnel management - Tunnel lifecycle handled transparently (start, health check, restart, cleanup)
  • Reliable native forwarding - Paramiko SSHClient transport with target preflight and stable-port recovery
  • Flexible authentication - Password or private key based SSH authentication
  • Any database type - Works with PostgreSQL, MySQL, and ClickHouse through the same tunnel

See the SSH Tunnel Guide for configuration details.

Installation

Prerequisites
  • Python 3.10 or higher
  • A database: PostgreSQL (9.6+), MySQL/MariaDB (5.7+/10.2+), or ClickHouse
Install via pip
pip install db-connect-mcp

That's it! The package is now ready to use.

For developers: See Development Guide for setting up a development environment.

Configuration

Create a .env file with your database connection string:

DATABASE_URL=your_database_connection_string_here

The server automatically detects the database type and adds appropriate read-only parameters.

For PostgreSQL, set ENABLE_PG_STAT_STATEMENTS=true to advertise the optional get_top_queries tool. It reads bounded cumulative statistics for the current user/database if pg_stat_statements was installed and preloaded by the database administrator. It does not install extensions. Query text is omitted unless explicitly requested and can contain sensitive information. See the top-query report contract for bounds and statuses.

Connection String Examples

The server now provides more flexible and secure URL handling:

  • Automatic driver detection: Async drivers are automatically added if not specified
  • JDBC URL support: JDBC prefixes are automatically handled
  • jdbc:postgresql://... → postgresql+asyncpg://...
  • jdbc:mysql://... → mysql+aiomysql://...
  • Works with all dialect variations (e.g., jdbc:postgres://, jdbc:mariadb://)
  • Database dialect variations: Common variations are automatically normalized
  • PostgreSQL: postgresql, postgres, pg, psql, pgsql
  • MySQL/MariaDB: mysql, mariadb, maria
  • ClickHouse: clickhouse, ch, click
  • Allowlist-based parameter filtering: Only known-safe parameters are preserved
  • Database-specific parameters: Each database type has its own set of supported parameters
  • Robust parsing: Handles various URL formats gracefully

PostgreSQL:

# Simple URL (driver automatically added)

DATABASE_URL=postgresql://user:password@localhost:5432/mydb

Common variations (all normalized to postgresql+asyncpg)

DATABASE_URL=postgres://user:pass@host:5432/db # Heroku, AWS RDS style DATABASE_URL=pg://user:pass@host:5432/db # Short form DATABASE_URL=psql://user:pass@host:5432/db # CLI style

JDBC URLs (automatically converted)

DATABASE_URL=jdbc:postgresql://user:pass@host:5432/db # From Java apps DATABASE_URL=jdbc:postgres://user:pass@host:5432/db # JDBC with variant

With explicit async driver

DATABASE_URL=postgresql+asyncpg://user:pass@host:5432/db

With supported parameters (see list below)

DATABASE_URL=postgres://user:pass@host:5432/db?application_name=myapp&connect_timeout=10

Supported PostgreSQL Parameters:

  • application_name - Identifies your app in pg_stat_activity (useful for monitoring)
  • connect_timeout - Connection timeout in seconds
  • command_timeout - Default timeout for operations
  • ssl / sslmode - SSL connection requirements (automatically converted for asyncpg compatibility)
  • server_settings - Server settings dictionary
  • options - Command-line options to send to server
  • Performance tuning: prepared_statement_cache_size, max_cached_statement_lifetime, etc.

MySQL/MariaDB:

# Simple URL (driver automatically added)

DATABASE_URL=mysql://root:password@localhost:3306/mydb

MariaDB URLs (normalized to mysql+aiomysql)

DATABASE_URL=mariadb://user:pass@host:3306/db # MariaDB style DATABASE_URL=maria://user:pass@host:3306/db # Short form

JDBC URLs (automatically converted)

DATABASE_URL=jdbc:mysql://user:pass@host:3306/db # From Java apps DATABASE_URL=jdbc:mariadb://user:pass@host:3306/db # JDBC MariaDB

With explicit async driver

DATABASE_URL=mysql+aiomysql://user:pass@host:3306/db

With charset (critical for proper Unicode support)

DATABASE_URL=mariadb://user:pass@remote.host:3306/db?charset=utf8mb4

Supported MySQL Parameters:

  • charset - Character encoding (e.g., utf8mb4) - critical for data integrity
  • use_unicode - Enable Unicode support
  • connect_timeout, read_timeout, write_timeout - Various timeouts
  • autocommit - Transaction autocommit mode
  • init_command - Initial SQL command to run
  • sql_mode - SQL mode settings
  • time_zone - Time zone setting

ClickHouse:

# Simple URL (driver automatically added)

DATABASE_URL=clickhouse://default:@localhost:9000/default

Short forms (normalized to clickhouse+asynch)

DATABASE_URL=ch://user:pass@host:9000/db # Short form DATABASE_URL=click://user:pass@host:9000/db # Alternative

JDBC URLs (automatically converted)

DATABASE_URL=jdbc:clickhouse://user:pass@host:9000/db # From Java apps DATABASE_URL=jdbc:ch://user:pass@host:9000/db # JDBC with short form

With explicit async driver

DATABASE_URL=clickhouse+asynch://user:pass@host:9000/db

With performance settings

DATABASE_URL=ch://user:pass@host:9000/db?timeout=60&max_threads=4

Supported ClickHouse Parameters:

  • database - Default database selection
  • timeout, connect_timeout, send_receive_timeout - Various timeouts
  • compress, compression - Enable compression
  • max_block_size, max_threads - Performance tuning

Note:

  • SSL parameters (ssl, sslmode) are automatically converted to the correct format for asyncpg
  • Certificate file parameters (`sslc

Only the beginning is shown; read the rest in the repo

Ask PopNx