About SpendGate
SpendGate evaluates planned spending for autonomous agents before payment, returning a deterministic score, verdict, and reasons. It supports spending decisions but does not make payments or hold wallet keys.
Key features
- 01Score planned spending
- 02Return approve, ask-human, or block verdicts
- 03Block amounts exceeding supplied budgets
- 04Verify payment wallet authorization
- 05Check merchant trust signals
Use cases
- 01Review a crypto transfer before sending
- 02Check spending before buying a gift card
- 03Verify budget before starting a subscription
- 04Assess risk before paying an API or merchant
MCP support
It provides a Streamable HTTP MCP server that exposes spending evaluation tools to clients.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://spendgate.toolweather.workers.dev/mcpclaude mcp add --transport http toolweather-spendgate https://spendgate.toolweather.workers.dev/mcp{"mcpServers":{"toolweather-spendgate":{"type":"http","url":"https://spendgate.toolweather.workers.dev/mcp"}}}Open in Cursor{"servers":{"toolweather-spendgate":{"type":"http","url":"https://spendgate.toolweather.workers.dev/mcp"}}}Open in VS Code{"mcpServers":{"toolweather-spendgate":{"type":"http","url":"https://spendgate.toolweather.workers.dev/mcp"}}}{"mcpServers":{"toolweather-spendgate":{"serverUrl":"https://spendgate.toolweather.workers.dev/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
https://spendgate.toolweather.workers.dev/mcpAuth requiredTools
4| Parameter | Type | Required | Description |
|---|---|---|---|
| amount | number | Yes | Planned spend in USD, not token atomic units. Required. |
| api_key | string | No | Optional sg_live_ key. Uses the 1,000/day bucket. An unrecognized key returns invalid_api_key instead of falling back to anonymous. |
| purpose | string | No | Short note, max 280 characters. When category is omitted, this text is matched as a category name; other prose is unknown risk. When category is set, this is echoed and not scored. |
| agent_id | string | No | Agent or key id. Echoed, not scored in v1. |
| category | string | No | Risk class. Wins over purpose. One of status_check, api_call, saas, infra, gift_card, crypto_transfer, irreversible. Any other string is unknown risk. |
| currency | string | No | Payment currency. Defaults to USDC. |
| endpoint | string | No | Payee used only when merchant is omitted. Ignored if merchant is also set. |
| merchant | string | No | Payee name or https URL. Used instead of endpoint when both are set. A missing payee is penalized. |
| risk_hints | array | No | Self-reported hints. Raising: new_payee, new_merchant, first_payment, high_velocity, mismatched_purpose, off_platform, shared_wallet. Lowering: trusted_repeat, within_policy, human_preapproved. known_merchant marks the payee known. |
| from_wallet | string | No | 0x account that would sign or pay gas. Omit to score as before, with no wallet verdict. A published Hardhat, Anvil, Ganache, or other public dev-mnemonic account is block, reason dev_wallet. |
| allowed_wallets | array | No | 0x addresses allowed to spend on this call. When set, including an empty array, this list is used instead of the stored per-key allowlist. Omit to use the list from set_wallet_allowlist. |
| daily_budget_remaining | number | No | USD left today. When set, a greater amount is blocked. Omit to skip this check. |
| monthly_budget_remaining | number | No | USD left this month. When set, a greater amount is blocked. Omit to skip this check. |
Details
The maintainer has not added details yet. Check the README in the repository.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.