Supabase
MCP server for interacting with the Supabase platform
作者提供的说明(英文原文)
Scout your PostgreSQL databases with AI - safety features, monitoring, and data quality
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"postgres-scout": {
"command": "npx",
"args": [
"-y",
"postgres-scout-mcp",
"read-only",
"postgresql://localhost:5432/postgres"
]
}
}
}在终端中运行这条命令
claude mcp add postgres-scout -- npx -y postgres-scout-mcp read-only postgresql://localhost:5432/postgres粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"postgres-scout": {
"command": "npx",
"args": [
"-y",
"postgres-scout-mcp",
"read-only",
"postgresql://localhost:5432/postgres"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"postgres-scout": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"postgres-scout-mcp",
"read-only",
"postgresql://localhost:5432/postgres"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 bluwork 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.0.3)于8个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Supabase, MongoDB MCP Server, Elasticsearch MCP Server
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP server for interacting with the Supabase platform
MongoDB Model Context Protocol Server
MCP server for interacting with Elasticsearch
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Scout your PostgreSQL databases with AI - A production-ready Model Context Protocol server with built-in safety features, monitoring, and data quality tools.
You ask:
*"How healthy is my production database? Any urgent issues?"*
Postgres Scout returns:
Component Breakdown
| Component | Score | Status |
|---|---|---|
| Cache Performance | 94/100 | Healthy |
| Index Efficiency | 82/100 | Good |
| Table Bloat | 61/100 | Needs Attention |
| Connection Usage | 75/100 | Fair |
Issues Found
orders has 34% bloat (2.1 GB wasted). VACUUM FULL recommended.sessions consuming 890 MB.analytics_events is 71% (target: >90%).Recommendations
VACUUM FULL orders during maintenance windowidx_sessions_legacy, idx_sessions_old_token, idx_sessions_tempanalytics_events to shared_buffers or partitioning by dateThat's getHealthScore — one of 38 tools covering exploration, diagnostics, optimization, monitoring, data quality, and safe writes.
claude mcp add postgres-scout -- npx -y postgres-scout-mcp postgresql://localhost:5432/mydb
Then ask: *"Show me the largest tables and whether they have any bloat issues."*
Claude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": { "postgres-scout": { "command": "npx", "args": ["-y", "postgres-scout-mcp", "postgresql://localhost:5432/mydb"], "type": "stdio" } } }
Cursor / VS Code
Add to your MCP settings:
{
"postgres-scout": { "command": "npx", "args": ["-y", "postgres-scout-mcp", "postgresql://localhost:5432/mydb"] } }
Read-Only vs Read-Write
The server runs in read-only mode by default. For write operations, run a separate instance:
{
"mcpServers": { "postgres-scout-readonly": { "command": "npx", "args": ["-y", "postgres-scout-mcp", "--read-only", "postgresql://localhost:5432/production"], "type": "stdio" }, "postgres-scout-readwrite": { "command": "npx", "args": ["-y", "postgres-scout-mcp", "--read-write", "postgresql://localhost:5432/development"], "type": "stdio" } } }
listDatabases — databases the user has access togetDatabaseStats — size, cache hit ratio, connection infolistSchemas — all schemas in the current databaselistTables — tables with size and row statisticsdescribeTable — columns, constraints, indexes, and moreexecuteQuery — run SELECT queries (or writes in read-write mode)explainQuery — EXPLAIN plans for performance analysisoptimizeQuery — optimization recommendations for a specific querygetHealthScore — overall health score with component breakdowndetectAnomalies — anomalies in performance, connections, and dataanalyzeTableBloat — bloat analysis for VACUUM planninggetSlowQueries — slow query analysis (requires pg_stat_statements)suggestVacuum — VACUUM recommendations based on dead tuples and bloatsuggestIndexes — missing index recommendations from query patternssuggestPartitioning — partitioning strategies for large tablesgetIndexUsage — identify unused or underused indexesgetCurrentActivity — active queries and connectionsanalyzeLocks — lock contention and blocking queriesgetLiveMetrics — real-time metrics over a time windowgetHottestTables — tables with highest activitygetTableMetrics — comprehensive per-table I/O and scan statsfindDuplicates — duplicate rows by column combinationfindMissingValues — NULL analysis across columnsfindOrphans — orphaned records with invalid foreign keyscheckConstraintViolations — test constraints before adding themanalyzeTypeConsistency — type inconsistencies in text columnsexploreRelationships — multi-hop foreign key traversalanalyzeForeignKeys — foreign key health and performancefindRecent — rows within a time windowanalyzeTimeSeries — window functions and anomaly detectiondetectSeasonality — seasonal pattern detectionexportTable — CSV, JSON, JSONL, or SQLgenerateInsertStatements — INSERT statements for migrationpreviewUpdate / previewDelete — see what would change before committingsafeUpdate — UPDATE with dry-run, row limits, empty WHERE protectionsafeDelete — DELETE with dry-run, row limits, empty WHERE protectionsafeInsert — INSERT with validation, batching, ON CONFLICT support*"What are the largest tables and do they have bloat?"*
listTables({ schema: "public" })
analyzeTableBloat({ schema: "public", minSizeMb: 100 })
*"Find duplicate emails in the users table."*
findDuplicates({ table: "users", columns: ["email"] })
*"Which queries are slowest and how can I speed them up?"*
getSlowQueries({ minDurationMs: 100, limit: 10 })
suggestIndexes({ schema: "public" })
*"Show me what's happening on the database right now."*
getCurrentActivity()
getLiveMetrics({ metrics: ["queries", "connections", "cache"], duration: 30000, interval: 1000 }) getHottestTables({ limit: 5, orderBy: "seq_scan" })
*"Find orphaned orders that reference deleted customers."*
findOrphans({ table: "orders", foreignKey: "customer_id", referenceTable: "customers", referenceColumn: "id" })
| Variable | Default | Description |
|---|---|---|
QUERY_TIMEOUT | 30000 | Query timeout in milliseconds |
MAX_RESULT_ROWS | 10000 | Maximum rows returned per query |
ENABLE_RATE_LIMIT | true | Enable rate limiting |
RATE_LIMIT_MAX_REQUESTS | 100 | Requests per window |
RATE_LIMIT_WINDOW_MS | 60000 | Rate limit window (ms) |
PGMAXPOOLSIZE | 10 | Connection pool max size |
PGMINPOOLSIZE | 2 | Connection pool min size |
PGIDLETIMEOUT | 10000 | Idle connection timeout (ms) |
ENABLE_LOGGING | false | Enable file logging |
LOG_DIR | ./logs | Log file directory |
LOG_LEVEL | info | Log verbosity: debug, info, warn, error |
CLI flags: --read-only (default), --read-write, --mode
File logging is disabled by default. Set ENABLE_LOGGING=true to enable. Two log files are created in LOG_DIR:
Connection strings are automatically redacted in all output.
git clone https://github.com/bluwork/postgres-scout-mcp.git
cd postgres-scout-mcp pnpm install pnpm build pnpm test
Apache-2.0