QueryWeaver
An MCP server for Text2SQL: transforms natural language into SQL using graph schema understanding.
Wraps a database MCP server: reads pass, writes wait for a supervisor to approve them.
使っているAIアプリを選んで、設定をコピーしてください。
チェック 3/3 合格 · あなたのパソコンで動きます · ✓ コマンド確認済み 2026年11月14日
まず:どの AI を使っていますか?
使っているアプリを選ぶと、下に手順が表示されます。
Claude につなげますが、先に準備が必要です
Approval gate for databases のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (HIBIRA_APP_ID) · 先にパソコンへ Node.js を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません
このメッセージを Claude のチャットに貼り付けます。AI がパソコンを確認し、変更するファイルを伝え、毎回あなたの了承を待ちます。
このパソコンの Claude に MCP server Approval gate for databases を入れてください。順番に:1) node -v で Node.js があるか確認。なければ https://nodejs.org/en/download から入れるよう私に伝え、自分では入れない。2) この設定だけを使う(PopNx MCP の確認済み):{ "mcpServers": { "approval-gate": { "command": "npx", "args": [ "-y", "@hibira-io/mcp-approval-gate" ], "env": { "GATE_COMMAND": "your-value", "HIBIRA_APP_ID": "your-value", "HIBIRA_KEY": "your-value", "HIBIRA_SECRET": "your-value" } } } } 3) 変更するファイルのフルパスか実行するコマンドを伝えて、私の了承を待つ。4) GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID は "your-value" のままにして、本当の値は私がファイルかアプリの入力欄に自分で貼るよう伝える。チャットにキーを書かせない。5) 了承した内容を実行し、Approval gate for databases のツールが本当に表示されるか確認する。このメッセージにあなたのキーは含まれません。キーが必要な場合は、AI がファイルやアプリの入力欄にご自身で貼るよう案内します。
もう入っていますか?先に確認 · ターミナルを開き、このコマンドを入力して Enter
node -vMac:⌘ + Space を押し、Terminal と入力して Enter
Windows:スタートメニューを開き、Windows PowerShell と入力して「開く」
まだ入っていない場合: 公式ダウンロードページで LTS 版と、クリックで進むインストーラーを選びます:Mac は .pkg、Windows は .msi。ダブルクリックして最後まで進めるだけで、curl コマンドは不要です
入れ終わったらターミナルを閉じて開き直し、同じコマンドをもう一度実行します。バージョン番号が出れば完了です: node -v
一度入れれば、Node.js を使うすべてのツールで使えます
提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。
これはプログラムの設定でキーではありません。登録は不要で、作者の説明どおりに入力します。
HIBIRA_APP_ID Hibira app ID (hibira.io portal)説明は英語の原文のままです。
SettingsDeveloperEdit Config
{
"mcpServers": {
"approval-gate": {
"command": "npx",
"args": [
"-y",
"@hibira-io/mcp-approval-gate"
],
"env": {
"GATE_COMMAND": "your-value",
"HIBIRA_APP_ID": "your-value",
"HIBIRA_KEY": "your-value",
"HIBIRA_SECRET": "your-value"
}
}
}
}キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください
Approval gate for databases を使って、私に何ができるか教えて、1 つやってみせて✓ Claude が Approval gate for databases を使っていると言うか、回答に Approval gate for databases のツール名が出れば接続成功です
上のコマンドはこれらがなくても動きます。変えたいときだけ作者の説明に沿って追加してください。
GATE_LABEL The database's name on the approval pageGATE_PUSH_INTERESTS Comma-separated push interests that receive approval requestsGATE_MODE writes (default), all or none · 初期値 writes説明は英語の原文のままです。
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
ChatGPT はまだ Approval gate for databases につなげません
Approval gate for databases はパソコンに入れて使うものですが、ChatGPT は Web 上で動くサーバーにしかつなげません
A · Approval gate for databases につなげるアプリを使う
B · データベース・データセット の中で ChatGPT につなげる別のサーバー
同じカテゴリでよく使われているものから、キーなしでアドレスだけでつなげるものを選びました
Claude Code につなげますが、先に準備が必要です
Approval gate for databases のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (HIBIRA_APP_ID) · 先にパソコンへ Node.js を入れてください(1 回だけ)
このメッセージを Claude Code のチャットに貼り付けます。AI がパソコンを確認し、変更するファイルを伝え、毎回あなたの了承を待ちます。
このパソコンの Claude Code に MCP server Approval gate for databases を入れてください。順番に:1) node -v で Node.js があるか確認。なければ https://nodejs.org/en/download から入れるよう私に伝え、自分では入れない。2) この設定だけを使う(PopNx MCP の確認済み):claude mcp add --scope user approval-gate --env GATE_COMMAND=your-value --env HIBIRA_APP_ID=your-value --env HIBIRA_KEY=your-value --env HIBIRA_SECRET=your-value -- npx -y @hibira-io/mcp-approval-gate 3) 変更するファイルのフルパスか実行するコマンドを伝えて、私の了承を待つ。4) GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID は "your-value" のままにして、本当の値は私がファイルかアプリの入力欄に自分で貼るよう伝える。チャットにキーを書かせない。5) 了承した内容を実行し、Approval gate for databases のツールが本当に表示されるか確認する。このメッセージにあなたのキーは含まれません。キーが必要な場合は、AI がファイルやアプリの入力欄にご自身で貼るよう案内します。
もう入っていますか?先に確認 · ターミナルを開き、このコマンドを入力して Enter
node -vMac:⌘ + Space を押し、Terminal と入力して Enter
Windows:スタートメニューを開き、Windows PowerShell と入力して「開く」
まだ入っていない場合: 公式ダウンロードページで LTS 版と、クリックで進むインストーラーを選びます:Mac は .pkg、Windows は .msi。ダブルクリックして最後まで進めるだけで、curl コマンドは不要です
入れ終わったらターミナルを閉じて開き直し、同じコマンドをもう一度実行します。バージョン番号が出れば完了です: node -v
一度入れれば、Node.js を使うすべてのツールで使えます
提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。
これはプログラムの設定でキーではありません。登録は不要で、作者の説明どおりに入力します。
HIBIRA_APP_ID Hibira app ID (hibira.io portal)説明は英語の原文のままです。
Mac:Command+スペースで Terminal と入力 · Windows:PowerShell を開く
claude mcp add --scope user approval-gate --env GATE_COMMAND=your-value --env HIBIRA_APP_ID=your-value --env HIBIRA_KEY=your-value --env HIBIRA_SECRET=your-value -- npx -y @hibira-io/mcp-approval-gateEnter の前に「your-value」を自分のキーに書き換えてください
キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください
Approval gate for databases が一覧にあり、接続済みと表示されれば OK です
Approval gate for databases を使って、私に何ができるか教えて、1 つやってみせて✓ Claude Code が Approval gate for databases を使っていると言うか、回答に Approval gate for databases のツール名が出れば接続成功です
上のコマンドはこれらがなくても動きます。変えたいときだけ作者の説明に沿って追加してください。
GATE_LABEL The database's name on the approval pageGATE_PUSH_INTERESTS Comma-separated push interests that receive approval requestsGATE_MODE writes (default), all or none · 初期値 writes説明は英語の原文のままです。
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Cursor につなげますが、先に準備が必要です
Approval gate for databases のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (HIBIRA_APP_ID) · 先にパソコンへ Node.js を入れてください(1 回だけ)
このメッセージを Cursor のチャットに貼り付けます。AI がパソコンを確認し、変更するファイルを伝え、毎回あなたの了承を待ちます。
このパソコンの Cursor に MCP server Approval gate for databases を入れてください。順番に:1) node -v で Node.js があるか確認。なければ https://nodejs.org/en/download から入れるよう私に伝え、自分では入れない。2) この設定だけを使う(PopNx MCP の確認済み):{ "mcpServers": { "approval-gate": { "command": "npx", "args": [ "-y", "@hibira-io/mcp-approval-gate" ], "env": { "GATE_COMMAND": "your-value", "HIBIRA_APP_ID": "your-value", "HIBIRA_KEY": "your-value", "HIBIRA_SECRET": "your-value" } } } } 3) 変更するファイルのフルパスか実行するコマンドを伝えて、私の了承を待つ。4) GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID は "your-value" のままにして、本当の値は私がファイルかアプリの入力欄に自分で貼るよう伝える。チャットにキーを書かせない。5) 了承した内容を実行し、Approval gate for databases のツールが本当に表示されるか確認する。このメッセージにあなたのキーは含まれません。キーが必要な場合は、AI がファイルやアプリの入力欄にご自身で貼るよう案内します。
もう入っていますか?先に確認 · ターミナルを開き、このコマンドを入力して Enter
node -vMac:⌘ + Space を押し、Terminal と入力して Enter
Windows:スタートメニューを開き、Windows PowerShell と入力して「開く」
まだ入っていない場合: 公式ダウンロードページで LTS 版と、クリックで進むインストーラーを選びます:Mac は .pkg、Windows は .msi。ダブルクリックして最後まで進めるだけで、curl コマンドは不要です
入れ終わったらターミナルを閉じて開き直し、同じコマンドをもう一度実行します。バージョン番号が出れば完了です: node -v
一度入れれば、Node.js を使うすべてのツールで使えます
提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。
これはプログラムの設定でキーではありません。登録は不要で、作者の説明どおりに入力します。
HIBIRA_APP_ID Hibira app ID (hibira.io portal)説明は英語の原文のままです。
Approval gate for databases の設定で GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID が空です。自分のキーを入れて保存します
キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください
Approval gate for databases を使って、私に何ができるか教えて、1 つやってみせて✓ Cursor が Approval gate for databases を使っていると言うか、回答に Approval gate for databases のツール名が出れば接続成功です
上のコマンドはこれらがなくても動きます。変えたいときだけ作者の説明に沿って追加してください。
GATE_LABEL The database's name on the approval pageGATE_PUSH_INTERESTS Comma-separated push interests that receive approval requestsGATE_MODE writes (default), all or none · 初期値 writes説明は英語の原文のままです。
メニュー名は 2026年11月11日 に Cursor のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
VS Code につなげますが、先に準備が必要です
Approval gate for databases のキーが必要です(提供元のサイトで作成) · 設定を 1 項目入力 (HIBIRA_APP_ID) · 先にパソコンへ Node.js を入れてください(1 回だけ)
このメッセージを VS Code のチャットに貼り付けます。AI がパソコンを確認し、変更するファイルを伝え、毎回あなたの了承を待ちます。
このパソコンの VS Code に MCP server Approval gate for databases を入れてください。順番に:1) node -v で Node.js があるか確認。なければ https://nodejs.org/en/download から入れるよう私に伝え、自分では入れない。2) この設定だけを使う(PopNx MCP の確認済み):{ "servers": { "approval-gate": { "type": "stdio", "command": "npx", "args": [ "-y", "@hibira-io/mcp-approval-gate" ], "env": { "GATE_COMMAND": "your-value", "HIBIRA_APP_ID": "your-value", "HIBIRA_KEY": "your-value", "HIBIRA_SECRET": "your-value" } } } } 3) 変更するファイルのフルパスか実行するコマンドを伝えて、私の了承を待つ。4) GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID は "your-value" のままにして、本当の値は私がファイルかアプリの入力欄に自分で貼るよう伝える。チャットにキーを書かせない。5) 了承した内容を実行し、Approval gate for databases のツールが本当に表示されるか確認する。このメッセージにあなたのキーは含まれません。キーが必要な場合は、AI がファイルやアプリの入力欄にご自身で貼るよう案内します。
もう入っていますか?先に確認 · ターミナルを開き、このコマンドを入力して Enter
node -vMac:⌘ + Space を押し、Terminal と入力して Enter
Windows:スタートメニューを開き、Windows PowerShell と入力して「開く」
まだ入っていない場合: 公式ダウンロードページで LTS 版と、クリックで進むインストーラーを選びます:Mac は .pkg、Windows は .msi。ダブルクリックして最後まで進めるだけで、curl コマンドは不要です
入れ終わったらターミナルを閉じて開き直し、同じコマンドをもう一度実行します。バージョン番号が出れば完了です: node -v
一度入れれば、Node.js を使うすべてのツールで使えます
提供元のサイトで登録し、次の手順で使う API キーを作ります。料金や無料プランは提供元のサイトで確認してください。
これはプログラムの設定でキーではありません。登録は不要で、作者の説明どおりに入力します。
HIBIRA_APP_ID Hibira app ID (hibira.io portal)説明は英語の原文のままです。
Approval gate for databases の設定で GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID が空です。自分のキーを入れて保存します
キーはアプリの入力欄にだけ貼り付け、チャットに貼ったり人に送ったりしないでください
Approval gate for databases を使って、私に何ができるか教えて、1 つやってみせて✓ VS Code が Approval gate for databases を使っていると言うか、回答に Approval gate for databases のツール名が出れば接続成功です
上のコマンドはこれらがなくても動きます。変えたいときだけ作者の説明に沿って追加してください。
GATE_LABEL The database's name on the approval pageGATE_PUSH_INTERESTS Comma-separated push interests that receive approval requestsGATE_MODE writes (default), all or none · 初期値 writes説明は英語の原文のままです。
メニュー名は 2026年11月11日 に VS Code のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Windsurf、Zed、Gemini CLI など MCP を使える他のアプリは追加方法がそれぞれ違います。アプリ一覧で確認してください
JSON 設定は下の「開発者向け」にあります
Claude Code
claude mcp add --scope user approval-gate --env GATE_COMMAND=your-value --env HIBIRA_APP_ID=your-value --env HIBIRA_KEY=your-value --env HIBIRA_SECRET=your-value -- npx -y @hibira-io/mcp-approval-gateClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"approval-gate": {
"command": "npx",
"args": [
"-y",
"@hibira-io/mcp-approval-gate"
],
"env": {
"GATE_COMMAND": "your-value",
"HIBIRA_APP_ID": "your-value",
"HIBIRA_KEY": "your-value",
"HIBIRA_SECRET": "your-value"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"approval-gate": {
"command": "npx",
"args": [
"-y",
"@hibira-io/mcp-approval-gate"
],
"env": {
"GATE_COMMAND": "your-value",
"HIBIRA_APP_ID": "your-value",
"HIBIRA_KEY": "your-value",
"HIBIRA_SECRET": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"approval-gate": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@hibira-io/mcp-approval-gate"
],
"env": {
"GATE_COMMAND": "your-value",
"HIBIRA_APP_ID": "your-value",
"HIBIRA_KEY": "your-value",
"HIBIRA_SECRET": "your-value"
}
}
}
}GATE_COMMAND 秘密 必須 envHIBIRA_APP_ID 必須 envHIBIRA_KEY 秘密 必須 envHIBIRA_SECRET 秘密 必須 envGATE_LABEL envGATE_PUSH_INTERESTS envGATE_MODE env説明は英語の原文のままです。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
npm: @hibira-io/mcp-approval-gateこのサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。
パソコン上で動かせるアプリ
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月16日にチェック
レジストリ名はドメイン hibira.io で確認済みです(レジストリがドメインの所有を確認しています)
コードの最終更新:3 日前
MITを使用
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
OSV.dev に @hibira-io/mcp-approval-gate@0.4.0 の登録はありません
このバージョンのパッケージ本体のみ確認。すべての依存関係ではありません · 確認日 2026年11月16日
質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。
まだレビューはありません
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は3 日前、最新バージョン(0.4.0)がレジストリに届いたのは3 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:QueryWeaver, Supabase, Neon, DBCode, Keboola MCP
同じカテゴリでほかの作者のもの。コマンドは確認済み。公式を先に、次にスター順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
An MCP server for Text2SQL: transforms natural language into SQL using graph schema understanding.
Official Neon MCP server for managing Neon projects and Lakebase Postgres databases.
Connect your AI assistants to Keboola and expose your data, transformations, SQL queries, ...
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
@hibira-io/mcp-approval-gate sits in front of the MCP server that connects your assistant to a database. Reads go straight through. Anything that changes data or schema waits until another person approves it on a hosted approval page, sent to their phone as a push notification. Then it runs once, exactly as approved.
A real session: Claude Code asks to mark order 1042 as refunded through DBHub. The UPDATE waits and the assistant never gets the approval link. The request shows up in the store manager's Hibira Approvals inbox on her phone (it is also sent to her as a push notification); she opens it, checks the statement and approves, and the assistant finishes the change. (MP4 · the same request rejected)
It works with any MCP server, and is tested with:
postgres-mcp)mcp.supabase.com)and with Claude (Desktop, Code and claude.ai), Cursor, ChatGPT and any other MCP client.
assistant ──► approval gate ──► database MCP server ──► database
│ writes only ▼ Hibira approval page + push ──► supervisor taps Approve / Reject
Most database MCP servers offer two choices: read-only, or let the assistant write anything. Client-side "allow this tool?" prompts are answered by the same person who asked. The gate adds the step a team usually wants for production data: a supervisor approval by someone else, with the exact statement in front of them.
UPDATE, DROP TABLE, ...), warnings such as "DELETE without WHERE changes every row", and the full statement.-- is the database server's usual command. There are no keys to copy.To connect ahead of time from a terminal instead, run npx -y @hibira-io/mcp-approval-gate login. status and logout work the same way. The connection is a token, kept in ~/.config/hibira/approval-gate.json, that can only ask for and read that workspace's approvals. Admins see every connected gate in the workspace settings and can revoke one at any time.
claude mcp add shop-db -e GATE_LABEL=shop-production \
-- npx -y @hibira-io/mcp-approval-gate \ -- npx -y @bytebase/dbhub --transport stdio --dsn "postgres://user:pass@host:5432/shop"
claude_desktop_config.json, .cursor/mcp.json and the others take the same shape:
{
"mcpServers": { "shop-db": { "command": "npx", "args": [ "-y", "@hibira-io/mcp-approval-gate", "--label", "shop-production", "--", "npx", "-y", "@bytebase/dbhub", "--transport", "stdio", "--dsn", "postgres://user:pass@host:5432/shop" ] } } }
postgres-mcp:
"args": ["-y", "@hibira-io/mcp-approval-gate", "--label", "analytics", "--",
"uvx", "postgres-mcp", "--access-mode=unrestricted"], "env": { "DATABASE_URI": "postgresql://..." }
--access-mode=unrestricted is fine here: the gate is what holds writes back.
Supabase (local server):
"args": ["-y", "@hibira-io/mcp-approval-gate", "--label", "supabase-prod", "--",
"npx", "-y", "@supabase/mcp-server-supabase@latest", "--project-ref= "], "env": { "SUPABASE_ACCESS_TOKEN": "sbp_..." }
execute_sql with a SELECT runs right away; writes, apply_migration, deploy_edge_function, branch merges and project pauses wait for approval.
Supabase (hosted server):
"args": ["-y", "@hibira-io/mcp-approval-gate", "--label", "supabase-prod",
"--upstream-url", "https://mcp.supabase.com/mcp?project_ref= ", "--header", "Authorization: Bearer ${SUPABASE_ACCESS_TOKEN}"],
Web clients need an HTTPS URL, so run the gate as a small server next to your database and put HTTPS in front of it (your reverse proxy, a tunnel, or a platform such as Fly.io or Railway):
npx -y @hibira-io/mcp-approval-gate login # once, on the server
export GATE_TOKEN="$(openssl rand -hex 24)" # keep it secret npx -y @hibira-io/mcp-approval-gate --http --host 0.0.0.0 --port 8787 \ --label shop-production \ -- npx -y @bytebase/dbhub --transport stdio --dsn "$DATABASE_URL"
The endpoint is https://your-host/mcp/ ; clients that can send headers may use https://your-host/mcp with Authorization: Bearer .
The gate refuses to listen on a non-local address without GATE_TOKEN. A Dockerfile is included. In a container, where there is no terminal to sign in from, pass the workspace token as HIBIRA_APPROVALS_TOKEN (copy it from ~/.config/hibira/approval-gate.json after login on any machine), or watch the gate's log for the connect link on first start.
The gate works in front of any MCP server. For a few common ones, --preset knows which tools only read and which change something, and gives the approval a plain title such as "Stripe: POST /v1/refunds" or "GitHub: merge pull request acme/shop#42". --allow and --gate still win over a preset.
| Preset | Waits for approval | Runs right away |
|---|---|---|
stripe | stripe_api_write, send_money, transfer_money, convert_currency, ... | stripe_api_read, search, docs, analytics |
github | merges, pushes, file changes, new repos, workflow runs, comments | get_*, list_*, search_*, *_read |
gmail | sending, replying, forwarding, deleting, filters | reading, searching, drafts |
shopify | graphql_mutation, creating, updating, discounts, inventory | queries, analytics, docs |
Stripe (hosted server, with an agent API key):
claude mcp add stripe -- npx -y @hibira-io/mcp-approval-gate --preset stripe \
--upstream-url https://mcp.stripe.com --header 'Authorization: Bearer ${STRIPE_AGENT_KEY}'
GitHub (official server in Docker):
claude mcp add github -e GITHUB_PERSONAL_ACCESS_TOKEN=... \
-- npx -y @hibira-io/mcp-approval-gate --preset github \ -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server
For Gmail and Shopify, put --preset gmail or --preset shopify in front of the server you already use. Tools a preset does not know follow the usual rules below.
A write call waits up to 50 seconds (--wait) for the decision, sending progress updates so the client does not give up early:
approval_id. The gate adds one tool, check_approval: when the person says it is decided, the assistant calls it with that approval_id, and the call runs if it was approved. Asking for the same call again reuses the same request.The assistant does not get the approval link when the gate is connected to an Approvals workspace (its members are notified and decide signed in), or when the request reaches the supervisor another way (--push-interests, --push-users or --channel), so the person chatting with it cannot approve their own change from the chat. Without any of those, the link is the only way to reach a supervisor, so the assistant shows it for you to forward. --show-link always or never overrides this.
With the default --mode writes:
--gate always wait; tools in --allow never do (a trailing * matches a prefix).sql, query, statement, queries, ...) wait if any statement changes something: INSERT, UPDATE, DELETE, MERGE, CREATE, ALTER, DROP, TRUNCATE, GRANT, COPY, CALL, DO, SET, VACUUM, data-changing WITH, SELECT ... INTO, EXPLAIN ANALYZE of a write, SELECT of functions such as setval or pg_terminate_backend, and anything it cannot parse. Comments, strings and dollar-quoted bodies are skipped, so SELECT 'DROP TABLE x' is a read.readOnlyHint or named like a read (list_, get_, search_, describe_, explain_, analyze_, ...). Everything else waits.--mode all sends every call for approval, reads included. --mode none turns the gate off (useful while testing).
The gate is a second pair of eyes, not a permission system. Give the database user only the rights it needs too.
The same package is a hook for Claude Code, Codex, Cursor and Hermes Agent. Shell commands that are hard to take back wait until a second person in your Hibira Approvals workspace approves them; everything else runs as usual.
| Waits for approval | Examples |
|---|---|
| Deleting files | rm -rf src, find . -delete, git clean -fdx (not rm -rf node_modules, dist, build, ...) |
| Rewriting git history | git push --force, git reset --hard, git branch -D, deleting remote branches |
| Deploys and releases | `vercel -