Send Approval Gate MCP: Plan, Approve, Send, Verify
An MCP server that makes an AI agent plan, present an exact hash-bound approval, send once and verify, and records every step.

Polar is the main checkout. Paddle is the alternative, for card or PayPal: Developer $29 · Commercial $99
One-time purchase.
What it is
Send Approval Gate MCP is a Node.js 22+ MCP server (stdio) with six tools: status, account, contacts, plan-send, send and verify-send. The approval binds plan ID, account, recipient, message SHA-256, backend and environment hash, so any change needs a new approval. Duplicate sends are blocked, an uncertain result becomes result_unknown and is never retried, and every step goes to a local ledger with crash recovery. You attach your own channel through a small backend plugin contract; a mock backend and example plugin are included. 47 tests, no npm dependencies. It keeps a cooperative agent's sends exact, single and auditable; it is not a security boundary against an agent you do not trust.
Quick start
node --test test/*.test.mjs
node src/cli.mjs --backend mock mcp
add it to your MCP client configCompared with
| Tool | Type | Notes |
|---|---|---|
| Hand-written confirm prompt | Ask the agent to confirm | No hash binding, no ledger, retries can double-send |
| Generic HITL frameworks | Approval steps inside an agent framework | Tied to one framework; not an MCP server |
| Send Approval Gate MCP | MCP server, source included | $29 one-time; hash-bound approval, single send, result_unknown, ledger |
FAQ
How do I stop an AI agent from sending a message twice?
Route sends through plan-send and send. A plan can be sent once; a timeout or adapter failure is recorded as result_unknown and never retried automatically.
Does it include a Slack, email or messenger backend?
No. You write a small plugin with status, account, contacts, send and verifySend for your own channel. A mock backend and an example plugin are included.
Is it a security boundary?
No. The approval is a value passed to send, so an agent that can call every tool can build one. For human-only approval, create the approval and call send from a channel the agent cannot reach.
What do I need?
Node.js 22 or later and an MCP client that speaks stdio. No npm dependencies.
Is it a subscription?
No. One-time purchase, full source included.
Polar is the main checkout. Paddle is the alternative, for card or PayPal: Developer $29 · Commercial $99
One-time purchase.

