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.
Pick the AI app you use, then copy the settings.
Passed 3/3 checks · Runs on your computer · ✓ Commands checked Nov 14, 2026
First: which AI do you use?
Pick your app and the steps appear below.
Works with Claude, with some setup first
You need a Approval gate for databases key (create it on the maker’s site) · 1 setting(s) to fill in (HIBIRA_APP_ID) · Install Node.js on your computer first (one time) · Only the Claude desktop app (Windows or Mac), not the web or phone
Copy this message into a Claude chat. The AI checks your computer, tells you which file it will change, and waits for your OK every time.
Please install the MCP server Approval gate for databases for Claude on this computer, in this order: 1) Check Node.js with node -v. If it is missing, tell me to install it from https://nodejs.org/en/download; do not install it yourself. 2) Use only this config (already checked by 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) Tell me the full path of the file you will change, or the command you will run, and wait for my OK. 4) For GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID, leave "your-value" in place and tell me to paste the real value myself into the file or the app’s field. Never ask me to type a key in chat. 5) Do what we agreed, then check that the Approval gate for databases tools really show up.This message has no key in it. If a key is needed, the AI will ask you to paste it yourself into the file or the app’s field.
Already installed? Check first · Open Terminal, type this command and press Enter
node -vMac: press ⌘ + Space, type Terminal, press Enter
Windows: open Start, type Windows PowerShell, then Open
Not installed: Open the official download page, pick the LTS version and the click-through installer: .pkg on Mac · .msi on Windows. Double-click and follow it to the end. No curl command needed
Open the Node.js download page ↗
When it’s done, close Terminal, open it again and run the same command. You should see a version number: node -v
Install once; it works for everything that needs Node.js
Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.
These are program settings, not keys. No sign-up needed; fill them in as the maker describes.
HIBIRA_APP_ID Hibira app ID (hibira.io portal)Descriptions are as written by the maker.
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"
}
}
}
}Paste the key only into the app’s field, never into a chat or to anyone
Use Approval gate for databases and tell me what you can do for me, then show me one thing✓ If Claude says it is using Approval gate for databases or shows a Approval gate for databases tool in the answer, you are connected
The command above works without these. Add them only if you want to change something, following the maker’s description.
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 · default writesDescriptions are as written by the maker.
Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version
ChatGPT cannot connect Approval gate for databases yet
Approval gate for databases runs on your computer, but ChatGPT can only connect servers that run on the web
A · Use an app that can connect Approval gate for databases
B · Others in Databases & datasets that work with ChatGPT
Picked from the most used in the same category, only ones that connect by address with no key
Works with Claude Code, with some setup first
You need a Approval gate for databases key (create it on the maker’s site) · 1 setting(s) to fill in (HIBIRA_APP_ID) · Install Node.js on your computer first (one time)
Copy this message into a Claude Code chat. The AI checks your computer, tells you which file it will change, and waits for your OK every time.
Please install the MCP server Approval gate for databases for Claude Code on this computer, in this order: 1) Check Node.js with node -v. If it is missing, tell me to install it from https://nodejs.org/en/download; do not install it yourself. 2) Use only this config (already checked by 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) Tell me the full path of the file you will change, or the command you will run, and wait for my OK. 4) For GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID, leave "your-value" in place and tell me to paste the real value myself into the file or the app’s field. Never ask me to type a key in chat. 5) Do what we agreed, then check that the Approval gate for databases tools really show up.This message has no key in it. If a key is needed, the AI will ask you to paste it yourself into the file or the app’s field.
Already installed? Check first · Open Terminal, type this command and press Enter
node -vMac: press ⌘ + Space, type Terminal, press Enter
Windows: open Start, type Windows PowerShell, then Open
Not installed: Open the official download page, pick the LTS version and the click-through installer: .pkg on Mac · .msi on Windows. Double-click and follow it to the end. No curl command needed
Open the Node.js download page ↗
When it’s done, close Terminal, open it again and run the same command. You should see a version number: node -v
Install once; it works for everything that needs Node.js
Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.
These are program settings, not keys. No sign-up needed; fill them in as the maker describes.
HIBIRA_APP_ID Hibira app ID (hibira.io portal)Descriptions are as written by the maker.
Mac: press Command+Space and type Terminal · Windows: open 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-gateReplace “your-value” with your key before pressing Enter
Paste the key only into the app’s field, never into a chat or to anyone
You should see Approval gate for databases listed as connected
Use Approval gate for databases and tell me what you can do for me, then show me one thing✓ If Claude Code says it is using Approval gate for databases or shows a Approval gate for databases tool in the answer, you are connected
The command above works without these. Add them only if you want to change something, following the maker’s description.
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 · default writesDescriptions are as written by the maker.
Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version
Works with Cursor, with some setup first
You need a Approval gate for databases key (create it on the maker’s site) · 1 setting(s) to fill in (HIBIRA_APP_ID) · Install Node.js on your computer first (one time)
Copy this message into a Cursor chat. The AI checks your computer, tells you which file it will change, and waits for your OK every time.
Please install the MCP server Approval gate for databases for Cursor on this computer, in this order: 1) Check Node.js with node -v. If it is missing, tell me to install it from https://nodejs.org/en/download; do not install it yourself. 2) Use only this config (already checked by 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) Tell me the full path of the file you will change, or the command you will run, and wait for my OK. 4) For GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID, leave "your-value" in place and tell me to paste the real value myself into the file or the app’s field. Never ask me to type a key in chat. 5) Do what we agreed, then check that the Approval gate for databases tools really show up.This message has no key in it. If a key is needed, the AI will ask you to paste it yourself into the file or the app’s field.
Already installed? Check first · Open Terminal, type this command and press Enter
node -vMac: press ⌘ + Space, type Terminal, press Enter
Windows: open Start, type Windows PowerShell, then Open
Not installed: Open the official download page, pick the LTS version and the click-through installer: .pkg on Mac · .msi on Windows. Double-click and follow it to the end. No curl command needed
Open the Node.js download page ↗
When it’s done, close Terminal, open it again and run the same command. You should see a version number: node -v
Install once; it works for everything that needs Node.js
Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.
These are program settings, not keys. No sign-up needed; fill them in as the maker describes.
HIBIRA_APP_ID Hibira app ID (hibira.io portal)Descriptions are as written by the maker.
In the Approval gate for databases settings, GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID is empty; add your key and save
Paste the key only into the app’s field, never into a chat or to anyone
Use Approval gate for databases and tell me what you can do for me, then show me one thing✓ If Cursor says it is using Approval gate for databases or shows a Approval gate for databases tool in the answer, you are connected
The command above works without these. Add them only if you want to change something, following the maker’s description.
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 · default writesDescriptions are as written by the maker.
Menu names checked against Cursor’s help page on Nov 11, 2026 · your screen may differ slightly by app version
Works with VS Code, with some setup first
You need a Approval gate for databases key (create it on the maker’s site) · 1 setting(s) to fill in (HIBIRA_APP_ID) · Install Node.js on your computer first (one time)
Copy this message into a VS Code chat. The AI checks your computer, tells you which file it will change, and waits for your OK every time.
Please install the MCP server Approval gate for databases for VS Code on this computer, in this order: 1) Check Node.js with node -v. If it is missing, tell me to install it from https://nodejs.org/en/download; do not install it yourself. 2) Use only this config (already checked by 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) Tell me the full path of the file you will change, or the command you will run, and wait for my OK. 4) For GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID, leave "your-value" in place and tell me to paste the real value myself into the file or the app’s field. Never ask me to type a key in chat. 5) Do what we agreed, then check that the Approval gate for databases tools really show up.This message has no key in it. If a key is needed, the AI will ask you to paste it yourself into the file or the app’s field.
Already installed? Check first · Open Terminal, type this command and press Enter
node -vMac: press ⌘ + Space, type Terminal, press Enter
Windows: open Start, type Windows PowerShell, then Open
Not installed: Open the official download page, pick the LTS version and the click-through installer: .pkg on Mac · .msi on Windows. Double-click and follow it to the end. No curl command needed
Open the Node.js download page ↗
When it’s done, close Terminal, open it again and run the same command. You should see a version number: node -v
Install once; it works for everything that needs Node.js
Open the maker’s site, sign up and create an API key for the next step. Check the maker’s site for pricing and free plans.
These are program settings, not keys. No sign-up needed; fill them in as the maker describes.
HIBIRA_APP_ID Hibira app ID (hibira.io portal)Descriptions are as written by the maker.
In the Approval gate for databases settings, GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET, HIBIRA_APP_ID is empty; add your key and save
Paste the key only into the app’s field, never into a chat or to anyone
Use Approval gate for databases and tell me what you can do for me, then show me one thing✓ If VS Code says it is using Approval gate for databases or shows a Approval gate for databases tool in the answer, you are connected
The command above works without these. Add them only if you want to change something, following the maker’s description.
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 · default writesDescriptions are as written by the maker.
Menu names checked against VS Code’s help page on Nov 11, 2026 · your screen may differ slightly by app version
Other apps that use MCP, such as Windsurf, Zed or Gemini CLI, each add servers differently. See how in the app list.
JSON settings are under “For developers” below
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 secret required envHIBIRA_APP_ID required envHIBIRA_KEY secret required envHIBIRA_SECRET secret required envGATE_LABEL envGATE_PUSH_INTERESTS envGATE_MODE envDescriptions are as written by the maker.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
npm: @hibira-io/mcp-approval-gateBased on how this server connects and on each app’s own docs, checked Nov 10, 2026.
Run on your computer in
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 16, 2026
The registry name was verified against the domain hibira.io (the registry checks domain ownership)
Code last changed 3 days ago
Uses MIT
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
No entries on OSV.dev for @hibira-io/mcp-approval-gate@0.4.0
Checks only this package version, not every dependency · checked Nov 16, 2026
Ask, share a tip or report that it does not work. Sorted by what people marked helpful.
No posts yet. Be the first to ask or share.
Posts here are written by users, not the PopNx team.
No reviews yet
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: GATE_COMMAND, HIBIRA_KEY, HIBIRA_SECRET
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed 3 days ago, and the latest version (0.4.0) reached the registry 3 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: QueryWeaver, Supabase, Neon, DBCode, Keboola MCP
Same category, other makers, commands already checked. Official ones first, then by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
An MCP server for Text2SQL: transforms natural language into SQL using graph schema understanding.
Supabase’s official server lets AI create tables, query data and review project settings in your Supabase database.
Official Neon MCP server for managing Neon projects and Lakebase Postgres databases.
Query and explore 100+ databases through your DBCode connections.
Connect your AI assistants to Keboola and expose your data, transformations, SQL queries, ...
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
@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 -