MCP Toolbox for Databases

Lets an assistant explore schemas and query databases: PostgreSQL, MySQL, BigQuery, Spanner, Snowflake.

Official · Google APIs Go Local · stdio Databases

92 popularity score ★ 17k ↓ 42k/wk

Connect your client

Local (npm)

Add in one click

Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.

Or add it by command or config

It needs POSTGRES_DATABASE, POSTGRES_USER, POSTGRES_PASSWORD. Replace each <NAME> with your value.

Claude CodeTerminal
claude mcp add toolbox-for-databases -e POSTGRES_DATABASE=<POSTGRES_DATABASE> -e POSTGRES_USER=<POSTGRES_USER> -e POSTGRES_PASSWORD=<POSTGRES_PASSWORD> -- npx -y @toolbox-sdk/server --prebuilt=postgres --stdio
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "toolbox-for-databases": {
      "command": "npx",
      "args": [
        "-y",
        "@toolbox-sdk/server",
        "--prebuilt=postgres",
        "--stdio"
      ],
      "env": {
        "POSTGRES_DATABASE": "<POSTGRES_DATABASE>",
        "POSTGRES_USER": "<POSTGRES_USER>",
        "POSTGRES_PASSWORD": "<POSTGRES_PASSWORD>"
      }
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "toolbox-for-databases": {
      "command": "npx",
      "args": [
        "-y",
        "@toolbox-sdk/server",
        "--prebuilt=postgres",
        "--stdio"
      ],
      "env": {
        "POSTGRES_DATABASE": "<POSTGRES_DATABASE>",
        "POSTGRES_USER": "<POSTGRES_USER>",
        "POSTGRES_PASSWORD": "<POSTGRES_PASSWORD>"
      }
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "toolbox-for-databases": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@toolbox-sdk/server",
        "--prebuilt=postgres",
        "--stdio"
      ],
      "env": {
        "POSTGRES_DATABASE": "<POSTGRES_DATABASE>",
        "POSTGRES_USER": "<POSTGRES_USER>",
        "POSTGRES_PASSWORD": "<POSTGRES_PASSWORD>"
      }
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.toolbox-for-databases]
command = "npx"
args = ["-y", "@toolbox-sdk/server", "--prebuilt=postgres", "--stdio"]

[mcp_servers.toolbox-for-databases.env]
POSTGRES_DATABASE = "<POSTGRES_DATABASE>"
POSTGRES_USER = "<POSTGRES_USER>"
POSTGRES_PASSWORD = "<POSTGRES_PASSWORD>"
Gemini CLITerminal
gemini mcp add --scope user -e POSTGRES_DATABASE=<POSTGRES_DATABASE> -e POSTGRES_USER=<POSTGRES_USER> -e POSTGRES_PASSWORD=<POSTGRES_PASSWORD> toolbox-for-databases npx -- -y @toolbox-sdk/server --prebuilt=postgres --stdio

Settings 6

POSTGRES_HOST Optional: PostgreSQL host (PostgreSQL prebuilt).
POSTGRES_PORT Optional: PostgreSQL port.
POSTGRES_DATABASE Required: Database name.
POSTGRES_USER Required: Database user.
POSTGRES_PASSWORD Required: Database password.
POSTGRES_QUERY_PARAMS Optional: Extra connection query parameters.

What it does

MCP Toolbox for Databases is Google's open-source MCP server for connecting assistants, IDEs and agents to databases (formerly Gen AI Toolbox for Databases). It serves two purposes. As a ready-to-use server, a --prebuilt flag loads generic tools for one database, so an assistant can list tables and schemas, run SQL, inspect query plans and check performance and configuration. Prebuilt configs cover Google Cloud databases (AlloyDB, BigQuery, Cloud SQL, Spanner, Firestore, Bigtable, Knowledge Catalog) and others including PostgreSQL, MySQL, SQL Server, Oracle, MongoDB, Redis, Elasticsearch, Neo4j, ClickHouse, Snowflake, SQLite and more.

As a framework, a tools.yaml file defines sources, custom tools (structured queries, semantic search, NL2SQL), toolsets and prompts for production agents, with connection pooling, IAM-integrated auth and OpenTelemetry tracing; SDKs exist for Python, JavaScript, Go and Java.

The quick start runs npx -y @toolbox-sdk/server --prebuilt=postgres --stdio, with connection settings in environment variables; change postgres to the database you use (the tools listed here are the PostgreSQL prebuilt set). Binaries and a container image are also published, and the server can run over HTTP. Google also offers managed MCP servers for its cloud databases.

What it needs

RuntimeNode.js

Tools 29

execute_sql
Executes a SQL query (PostgreSQL prebuilt).
list_tables
Lists tables in the database (PostgreSQL prebuilt).
list_schemas
Lists schemas in the database (PostgreSQL prebuilt).
list_views
Lists views with schema name, view name and owner (PostgreSQL prebuilt).
list_indexes
List available user indexes (PostgreSQL prebuilt).
list_sequences
List sequences in the database (PostgreSQL prebuilt).
list_triggers
Lists triggers in the database (PostgreSQL prebuilt).
list_stored_procedure
Lists stored procedures (PostgreSQL prebuilt).
get_query_plan
Generate the execution plan of a statement (PostgreSQL prebuilt).
database_overview
Fetches current state of the PostgreSQL server (PostgreSQL prebuilt).
list_active_queries
Lists ongoing queries (PostgreSQL prebuilt).
long_running_transactions
Identifies transactions exceeding a specified time limit (PostgreSQL prebuilt).
list_locks
Identifies all locks held by active processes (PostgreSQL prebuilt).
list_query_stats
Lists query statistics (PostgreSQL prebuilt).
list_table_stats
Lists table statistics (PostgreSQL prebuilt).
list_database_stats
Lists key performance statistics for each database (PostgreSQL prebuilt).
get_column_cardinality
Gets column cardinality (PostgreSQL prebuilt).
list_top_bloated_tables
List top bloated tables (PostgreSQL prebuilt).
list_invalid_indexes
Lists invalid indexes (PostgreSQL prebuilt).
list_available_extensions
Discover all PostgreSQL extensions available (PostgreSQL prebuilt).
list_installed_extensions
List all installed PostgreSQL extensions (PostgreSQL prebuilt).
list_autovacuum_configurations
Lists autovacuum configurations (PostgreSQL prebuilt).
list_memory_configurations
Lists memory-related configurations (PostgreSQL prebuilt).
list_pg_settings
List configuration parameters for the PostgreSQL server (PostgreSQL prebuilt).
replication_stats
Lists each replica's process ID and sync state (PostgreSQL prebuilt).
list_replication_slots
Lists replication slots (PostgreSQL prebuilt).
list_publication_tables
List publication tables (PostgreSQL prebuilt).
list_tablespaces
Lists tablespaces in the database (PostgreSQL prebuilt).
list_roles
Lists all user-created roles in the database (PostgreSQL prebuilt).

Similar servers