DBeast PostgreSQL MCP

io.github.snss10由 GitHub 帳號 snss10 發布v2.0.2更新於 Oct 24, 2026

PostgreSQL MCP server for schema, query, health, security, and performance analysis.

概覽

AI 產生的概覽

為 AI 助理提供 21 個專注於 PostgreSQL 的 DBA 工具,涵蓋結構探索、唯讀查詢、影響預覽、效能、安全與維護分析。

可以做什麼
DBeast 透過 MCP stdio 將助理連接到 PostgreSQL 資料庫,提供橫跨十個類別的 21 個工具。內容包括連線與健康檢查、結構探索(可選產生 Mermaid ERD)、相依性梳理、附自動列數限制的唯讀 SELECT 查詢、查詢分析與索引建議、寫入操作影響預覽、效能與維護報告、安全與敏感資料稽核、資料品質檢查、設定檢視、複寫狀態,以及稽核日誌查詢。
適用情境
適合需要檢視或稽核 PostgreSQL 資料庫的情境:探索結構、回答查詢問題、診斷慢查詢、檢視 vacuum 與索引健康狀態、檢查角色與權限,或在執行刪除、封存前評估影響範圍。
執行需求
以 stdio 子程序方式在本機執行;清單列出 OCI 映像 ghcr.io/snss10/dbeast:2.0.2,README 則以 pip 從原始碼安裝。需要 PostgreSQL 連線,可透過 DATABASE_URL,或 DB_HOST、DB_PORT、DB_USER、DB_PASSWORD、DB_NAME 提供,也可用 AWS_SECRET_NAME 與 AWS_REGION 從 AWS Secrets Manager 取得。僅支援桌面用戶端,不需要 HTTP 服務。
安裝前請注意
憑證透過 DATABASE_URL、DB_PASSWORD 等環境變數傳給伺服器,因此會留在 MCP 用戶端設定中。伺服器會讀取資料庫結構與資料,其中敏感資料掃描會檢查欄位名稱與樣式,並預設記錄工具呼叫的稽核日誌。寫入語句只回傳影響預覽而不執行,但實際可執行範圍仍受所連線資料庫帳號本身的權限限制。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 DBeast PostgreSQL MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[DBeast]

A PostgreSQL MCP server that gives AI assistants expert DBA capabilities.

[Python 3.11+] [PostgreSQL 12+] [MCP Compatible] [License: MIT]

Quick Start · Demo · Tools · Safety · Configuration · Docs


DBeast connects AI assistants such as Claude, Cursor, Windsurf, and VS Code Copilot to PostgreSQL through the Model Context Protocol. Instead of exposing one broad execute_sql escape hatch, DBeast provides 21 focused tools for schema discovery, safe query execution, impact analysis, performance review, security checks, maintenance reporting, replication monitoring, and data quality inspection.


Demo

Watch Claude use DBeast MCP tools to audit a PostgreSQL database, identify security and maintenance risks, and preview cleanup impact without executing destructive SQL.


How It Works

text
AI assistant  --MCP stdio-->  DBeast server  --asyncpg-->  PostgreSQLClaude/Cursor                  Python local                 Local, RDS,Windsurf/VS Code               subprocess                   Supabase, Neon

DBeast runs as a local stdio MCP server. Your IDE or desktop assistant starts it as a subprocess and passes database credentials through environment variables. The assistant calls DBeast tools, DBeast queries PostgreSQL, and structured results come back to the assistant. No HTTP service or extra infrastructure is required.


Quick Start

1. Install

bash
git clone https://github.com/snss10/DBeast.gitcd DBeastpip install -e .

For development:

bash
pip install -e ".[dev]"

Optional: copy .env.example to .env and set your database credentials.

2. Verify

bash
dbeast

Or run the source entry point directly:

bash
python src/server.py

3. Configure Your MCP Client

Minimal Cursor or Windsurf config:

json
{  "mcpServers": {    "dbeast": {      "type": "stdio",      "command": "python",      "args": ["/absolute/path/to/DBeast/src/server.py"],      "env": {        "DATABASE_URL": "postgresql://user:password@localhost:5432/mydb"      }    }  }}

Common config locations:

ClientConfig location
Cursor.mcp.json in project root, or ~/.cursor/.mcp.json globally
VS Code.vscode/settings.json or user settings with key mcp.servers
Claude Desktop on macOS~/Library/Application Support/Claude/claude_desktop_config.json
Claude Desktop on Windows%APPDATA%\Claude\claude_desktop_config.json
Windsurf.mcp.json

See SETUP.md for full client examples, Docker, RDS, Supabase, Neon, SSH tunnels, AWS Secrets Manager, and troubleshooting.

4. Ask Simple or Complex Questions

Once connected, your assistant can answer quick lookup questions and also run multi-step database investigations.

Simple examples:

text
Show me the schema for the orders table.Which queries are slowest right now?Run a security audit on the public schema.Generate a Mermaid ERD for the sales schema.

More complex examples:

text
Before I archive old sessions, estimate how many rows would be affected, identify related tables, and tell me the rollback risk.Investigate why the dashboard query is slow, explain the execution plan, and suggest safe indexes.Review the public schema for maintenance issues, security risks, and data quality problems, then summarize the top priorities.Compare table growth, dead tuples, and index health across all schemas and recommend what to vacuum or reindex first.

Tools

DBeast exposes 21 MCP tools across 10 categories.

Connection

ToolDescription
connectConnect to PostgreSQL, check current status, or discover local databases
disconnectClose the current database connection
health_checkVerify connectivity, pool health, PostgreSQL version, and extensions

Schema Discovery

ToolDescription
get_schemaList schemas, tables, columns, indexes, relationships, and optional Mermaid ERDs
dependency_analysisMap object dependencies before renaming, dropping, or changing database objects

Data Access

ToolDescription
execute_queryRun read-only SELECT queries with automatic row-limit injection

Query Analysis

ToolDescription
analyze_queryParse and inspect query structure, warnings, and optimization hints
query_optimizerRecommend indexes and rewrites for a given query
analyze_impactPreview write-query impact, risk level, affected rows, and rollback context without executing

Database Health

ToolDescription
database_healthReview cache hit rates, connections, transaction age, table health, and overall health signals
query_performanceReport slow or expensive queries from PostgreSQL statistics

Security

ToolDescription
security_auditInspect roles, privileges, superuser accounts, and public schema exposure
sensitive_data_scanDetect likely PII or secrets by column names and schema patterns

Maintenance

ToolDescription
maintenance_analysisReview vacuum status, dead tuples, analyze timestamps, and index health
partition_analysisInspect partition health, row distribution, and missing partition risks

Data Quality

ToolDescription
data_quality_reportAnalyze null rates, cardinality, value distributions, and outliers
duplicate_detectionFind duplicate rows across selected key columns

Server Config

ToolDescription
configuration_reviewReview PostgreSQL configuration and tuning opportunities
replication_statusInspect replication lag, WAL sender/receiver state, and replication slots

Audit

ToolDescription
get_audit_logsRetrieve logged MCP tool calls for a given date
list_audit_filesList available audit log files

Recommended Workflow

Start by discovering schemas:

text
get_schema()get_schema(schema='public')

Run safe read queries:

text
execute_query(query='SELECT * FROM orders ORDER BY created_at DESC')

Preview risky writes:

text
analyze_impact(query='DELETE FROM sessions WHERE last_active < now() - interval ''30 days''')

Check health and maintenance:

text
database_health()maintenance_analysis(schema='public')query_performance()

Most analysis tools accept a schema parameter:

text
maintenance_analysis(schema='public')  -> analyze one schemamaintenance_analysis(schema='all')     -> analyze every schemaget_schema(format='mermaid')           -> generate an ERD diagram

Supported Databases

ProviderConnection method
Local PostgreSQLDATABASE_URL or individual DB_* variables
Docker PostgreSQLExplicit variables or connect(discover=true)
AWS RDS / AuroraDirect URL, SSH tunnel, or AWS Secrets Manager
SupabasePooler connection string from Dashboard settings
NeonConnection string from Console connection details
Railway / Render / Fly.ioProvider connection string
Any PostgreSQL hostStandard PostgreSQL URL

Configuration

Choose one connection method.

env
# Full URLDATABASE_URL=postgresql://user:pass@host:5432/db
# Or individual variablesDB_HOST=localhostDB_PORT=5432DB_USER=postgresDB_PASSWORD=secretDB_NAME=mydbDB_SSLMODE=prefer
# Or AWS Secrets ManagerAWS_SECRET_NAME=my-rds-secretAWS_REGION=us-west-2

You can also connect at runtime:

text
connect(url='postgresql://user:pass@host:5432/db')connect(host='localhost', user='postgres', password='secret', database='mydb')connect(aws_secret_name='my-secret', aws_region='us-west-2')

Key settings:

VariableDefaultDescription
DBEAST_DEFAULT_ROW_LIMIT100Max rows returned by execute_query
DBEAST_QUERY_TIMEOUT300Query execution timeout in seconds
DBEAST_COMMAND_TIMEOUT300SQL command timeout in seconds
DBEAST_SSL_VERIFYtrueSet false for SSH tunnels where certificates do not match localhost
DBEAST_SCHEMA_CACHE_TTL60Schema cache TTL in seconds, 0 disables caching
DBEAST_AUDIT_ENABLEDtrueLog MCP tool calls
DBEAST_AUDIT_DIRlogs/mcp_auditAudit log directory

See SETUP.md for the complete configuration reference.


Safety Model

Query typeWhat DBeast does
SELECTExecutes with automatic row limits
INSERT / UPDATE / DELETENever executed; returns an impact preview
DROP / TRUNCATENever executed; reports affected objects and risk

Formatted and JSON responses use a consistent wrapper:

json
{  "success": true,  "data": { "...": "..." },  "meta": {    "connected": true,    "source": "tool"  }}

Audit Logging

DBeast logs MCP tool calls for accountability and debugging.

env
DBEAST_AUDIT_ENABLED=trueDBEAST_AUDIT_DIR=logs/mcp_audit

Audit files are stored as daily markdown files and include timestamps, tool names, durations, masked parameters, truncated responses, and errors.


Development

bash
pip install -e ".[dev]"pre-commit installpytest tests/ -vruff check src/ tests/ruff format src/ tests/

Start the optional local PostgreSQL test database:

bash
docker compose up -d postgres

Legacy Compose:

bash
docker-compose up -d postgres

Documentation

  • SETUP.md - Full client setup, connection scenarios, configuration, and troubleshooting
  • CONTRIBUTING.md - Development setup, tests, style, commits, and PR process
  • CODE_OF_CONDUCT.md - Community guidelines

License

MIT

來源:README.md,提交 18f6dcf

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v2.0.2最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分