Supabase
MCP server for interacting with the Supabase platform
作者による説明(英語の原文)
The trust and intelligence layer between AI agents and your database.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
DATABASE_URL「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"schemabrain": {
"command": "uvx",
"args": [
"schemabrain",
"serve",
"--url-env",
"DATABASE_URL",
"--store-path",
"{store_path}"
],
"env": {
"DATABASE_URL": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add schemabrain --env DATABASE_URL=your-value -- uvx schemabrain serve --url-env DATABASE_URL --store-path '{store_path}'動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"schemabrain": {
"command": "uvx",
"args": [
"schemabrain",
"serve",
"--url-env",
"DATABASE_URL",
"--store-path",
"{store_path}"
],
"env": {
"DATABASE_URL": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"schemabrain": {
"type": "stdio",
"command": "uvx",
"args": [
"schemabrain",
"serve",
"--url-env",
"DATABASE_URL",
"--store-path",
"{store_path}"
],
"env": {
"DATABASE_URL": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント Arun-kc で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:DATABASE_URL
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.6.0)がレジストリに届いたのは5 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:Supabase, MongoDB MCP Server, Elasticsearch MCP Server
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP server for interacting with the Supabase platform
MongoDB Model Context Protocol Server
MCP server for interacting with Elasticsearch
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Stop giving AI agents raw database connection strings.
Give them SchemaBrain instead — a read-only trust and intelligence layer where the agent never writes SQL, PII is refused before the query runs, and every call lands in a tamper-evident audit log.
Works with Claude Desktop · Claude Code · Cursor · Windsurf · any MCP host
SchemaBrain compiles every query from definitions you control — no path from a prompt to raw SQL at your database.
Three guarantees that close the trust gap between AI agents and your database:
execute() tool, no query() tool, no path from agent prompt to a write at your database.audit verify exits non-zero if any past row was rewritten.See it in action — ask for something the schema can't answer, and it refuses instead of fabricating a join:
You: *compute usage volume by plan tier*
SchemaBrain → agent:
{ "kind": "unreachable_entity", "recovery": { "suggested_tool": "resolve_join" } }— there's noplan_idon usage events, so it won't invent one.
Claude: I can't fake that join — here's contracted revenue by plan tier instead, which actually resolves. ✓
→ Full session, with the SQL and results
Watch it run — a live Postgres schema becomes a governed knowledge graph, the firewall computes the safe metric and refuses the leaks, and every call lands in a tamper-evident audit log. No agent, no API key:
uvx schemabrain init
Cost: $0 to run the bundled demo (pre-curated pack, no API key) · ~$0.03 to LLM-index a fresh 84-column schema · $0 to re-index unchanged schemas. Detail in Sample session.
Status: 0.6.0 (beta). Postgres supported today (the local store itself is SQLite). SQLite / Snowflake / BigQuery / MySQL source connectors on the roadmap.
Read next based on what you need:
| Goal | Where to go |
|---|---|
| Try it on the bundled fixture | Quickstart |
| Understand the safety guarantees | Safety guarantees |
| Wire up your MCP client | Claude Desktop · Claude Code · Cursor · Windsurf · Cline · ChatGPT (roadmap) |
| Plug into your own agent loop | docs/setup/manual.md |
| Build a semantic layer | docs/semantic-layer.md |
| Run in production (audit, drift, Docker) | docs/operations.md |
| Observe the agent (tail, audit log, OTel) | docs/observability.md |
| Compare with Querybear / Anthropic reference Postgres MCP | vs Querybear · vs Anthropic reference |
| Compare with Vanna / Atlan / dbt-mcp / WrenAI | docs/landscape.md |
Just want to see what it does?
uvx schemabrain demo— one command, zero prompts. Builds the sample SaaS layer, then lets you open the dashboard or run a terminal firewall showcase. No API key, and no Docker for the dashboard / showcase paths. The steps below are for wiring SchemaBrain into your own agent against your own database.
Three steps from uvx schemabrain init to a working Claude Desktop integration. If you paste your own Postgres URL — no Docker needed, ~30s. Press Enter for the bundled demo and init invokes Docker + downloads a ~67 MB embedding model first time; ~45s once cached.
uvx schemabrain init # zero-install: runs the wizard in one shot
pipx install schemabrain # (or) pip install schemabrain schemabrain --version
Source install (git clone + uv sync --extra dev) is documented in docs/setup.md.
schemabrain init
init is a seven-stage wizard that takes you from "I have a Postgres database" to "Claude Desktop can answer questions about it" in one command. On first run it prompts for what it needs:
schemabrain entities suggest --apply once you have a key.SchemaBrain init — activation wizard
[1/7] Source check ✓ source reachable + read-only [2/7] Index schema ✓ 12 tables, 84 columns indexed [3/7] Curate entities ✓ 12 entities applied (bundled demo pack) [4/7] Curate metrics ✓ 5 metrics applied (bundled demo pack) [5/7] Curate joins ✓ 11 canonical joins applied (bundled demo pack) [6/7] Wire host ✓ wrote schemabrain entry to claude_desktop_config.json (default; switch with --host claude-code|cursor|windsurf|manual) [7/7] Next ✓ restart your MCP host, then ask: "list the entities SchemaBrain knows about"
Full wizard reference (stages explained, flags, dbt auto-detection, --print-only for non-Claude-Desktop hosts, --no-entities / --no-metrics / --no-joins opt-outs, cost-cap pauses): docs/setup.md.
list the entities SchemaBrain knows about
If Claude calls list_entities and reports user, order, etc., you're done. If not, see Troubleshooting.
After the wizard, schemabrain inspect shows what the agent has and schemabrain tail streams every tool call live — see docs/operations.md.
init writes just ./schemabrain.db (the local store — gitignore it) plus your host config. To tune the PII policy and semantic layer as editable YAML, re-run with --emit-yaml-dir:
schemabrain init --url-env DATABASE_URL --emit-yaml-dir ./schemabrain
Edit a file, schemabrain apply ./schemabrain, schemabrain check to validate, restart serve. There is no schemabrain.yaml — config is CLI flags + SCHEMABRAIN_* env vars (auto-loaded from .env) + that YAML tree. Full map: Your project.
Six properties SchemaBrain enforces at the SQL boundary today:
The MCP surface exposes twelve tools — none of which can write. No execute(), no query(), no path from agent prompt to a write at your database, regardless of session state — the guarantee is structural, not a flag the agent can flip. schemabrain serve also pins default_transaction_read_only=on as belt-and-suspenders. Read-only by architecture →
get_metric tool boundaryAny get_metric touching a blocked PII category returns a refused envelope — the compiled SQL never runs and the refusal lands in mcp_audit. describe_entity enforces the same at the column level (blocked columns ship redacted=True). init blocks the catastrophic-leak set by default (credential,payment_card,government_id); --pii-block replaces the set, so widen by listing the full target. Detection is column-name pattern matching across twelve GDPR / CCPA / HIPAA / PCI categories; content-aware classification is on the roadmap. PII taxonomy & propagation →
Every tool call writes one row to an append-only mcp_audit table — PII categories, content-addressable fingerprints, sha256 hash chain. audit verify re-walks the chain and exits non-zero if any past row was rewritten.
schemabrain audit verify # exit 0 = chain clean
Tamper-evident audit chain →
Every non-success call — refused, error, or degraded — returns a structured recovery.suggested_args block, not a message to parse. PII blocks (status: "refused") ship the entity to ret
冒頭だけを表示しています。続きはリポジトリで読めます