
presign-guard wallet
io.github.Fizzl13v0.3.0更新于 Oct 2, 2026
A wallet with spending limits for agents: pay x402 APIs, send USDC, phone approval over the limit.
概览
为 AI 代理提供一个带消费限额的加密钱包,用于支付 x402 API 和发送 USDC,超限时通过 Telegram 审批。
- 功能
- 在本地运行一个代理钱包,提供查询状态、支付返回 402 Payment Required 的 x402 API、发送 USDC、发送原生代币以及暂停消费等工具。每个签名先由 presign-guard 检查已知盗币合约、受制裁地址和仿冒代币,红色结论一律不签名。超过单笔或每日限额的支付需要你通过 Telegram 或钱包服务器面板批准;若检查、Telegram 或服务器无法访问,则不会签名。
- 适用场景
- 当代理需要自行支付 x402 API 或发送 USDC,而你希望有硬性预算上限并在超限时人工批准时使用。适合在 Base 或其他支持链上进行小额支出的代理工作流。
- 运行要求
- 通过 npx 启动的本地进程(需要 Node.js)。需要 AGENT_KEY,即独立代理钱包的私钥,并需设置限额或使用钱包服务器。可选:CHAIN、LIMIT_USDC_PER_DAY、LIMIT_USDC_PER_TX、MAX_PAYMENT_USD、RPC_URL、PRESIGN_CREDIT_KEY,以及用于审批的 TELEGRAM_BOT_TOKEN 与 TELEGRAM_CHAT_ID,或 WALLET_SERVER_URL 与 WALLET_SERVER_KEY。需要网络访问。
安装
在 SourceWeft 中
- 打开 控制台中的 presign-guard wallet,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
presign-guard-wallet-mcp
A wallet with spending limits for AI agents, as an MCP server. Add it to Claude Desktop, Claude Code, Cursor or any other MCP client, and your agent can:
- pay for x402 APIs;
- send USDC.
It can only do that within the budget you set:
- You set the limits. For example: up to 5 USDC per payment and 20 USDC a day, and the agent is free to spend within them.
- Above a limit, you decide. You get a Telegram message with Approve / Deny, or the request shows up on your wallet server dashboard. No answer means no payment.
- Every signature is checked first by presign-guard. It checks for known drainers, sanctioned addresses and look-alike tokens. A red verdict is never signed.
- When in doubt, nothing is signed. If the check, Telegram or the server can't be reached, the wallet stops.
The key stays on your machine; the server only decides whether a signature is allowed. Each check costs $0.01, paid in USDC on Base from the same wallet, or from prepaid credits.
See the dashboard (demo data): https://wallet.fizzl.eu/demo
Tools
Set up
- Make a separate wallet for the agent. Put only what it may spend in it: a few dollars of USDC on Base, plus a little ETH for gas if it will send transfers. Never use your main wallet.
- Optional: phone approvals.
- Create a bot with @BotFather, send it
/start. - Get your chat id from @userinfobot.
- Create a bot with @BotFather, send it
- Add it to your MCP client. For Claude Desktop, put this in
claude_desktop_config.json:
For Claude Code:
Then ask your agent, for example: "Check my wallet, then get the BTC signal from https://ichimoku-signal.fizzl.eu/signal/BTC-USDT".
One budget for all your agents
Run the wallet server and make an agent key on its dashboard. It gives you:
- one price rule and one daily budget for all your agents;
- approvals on the dashboard and on Telegram;
- an activity log.
Then use these variables instead of LIMIT_* and TELEGRAM_*:
Configuration
One Telegram bot serves one running server at a time, and the bot must not have a webhook. To run several agents on one bot, use the wallet server.
Receipts
Every payment carries what it was for: the URL for pay_x402, and the agent's reason if it gives one. With a wallet server, that shows on the receipt for each payment, together with:
- the amount and recipient;
- presign-guard's signed verdict;
- the approval;
- the x402 settlement;
- what the agent got back: the API's answer (up to 16,000 characters), shown in plain form on the receipt.
Telegram approval requests say what the payment is for too. See a receipt in the demo: click a purchase under "Purchases".
When something is refused
The tool returns an error the agent can read and pass on to you. Examples:
Not done (over_limit): 8 USDC is over the limit of 5 per transaction (denied by the owner);Not done (red): not signed: red (known_drainer).
Also available
- presign-guard-wallet: the same guard for your own viem code.
- presign-guard-agentkit: for Coinbase AgentKit agents.
License
MIT
来源:wallet-mcp/README.md,提交 1c7a8ea
工具
0版本历史
1- v0.3.0最新Oct 2, 2026


