プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

presign-guard wallet

作者:Fizzl13バージョン 0.30.0i★ –iパソコンでもクラウドでも
レジストリ名io.github.Fizzl13/presign-guard-wallet

インストール

概要

作者による説明(英語の原文)

Agent wallet with limits: pays x402/MPP on Base, Solana, Tempo, XRPL and Algorand; phone approval.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンでもクラウドでも
  • トランスポート: stdio, Streamable HTTP
  • カテゴリ: 暗号資産・ブロックチェーン
  • 入力が必要なもの:AGENT_KEY, TELEGRAM_BOT_TOKEN, WALLET_SERVER_KEY, PRESIGN_CREDIT_KEY, SOLANA_PRIVATE_KEY, ALGORAND_MNEMONIC, XRPL_SEED

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:3項目中3項目に合格
  • 作者のサーバーで動きます。あなたが頼んだ内容は、作者のサーバーを通ります。
  • 自分で入力するもの: AGENT_KEY, LIMIT_USDC_PER_TX, LIMIT_USDC_PER_DAY, TELEGRAM_BOT_TOKEN, TELEGRAM_CHAT_ID, AC2_OWNER, WALLET_SERVER_URL, WALLET_SERVER_KEY, CHAIN, MAX_PAYMENT_USD, ALLOW_LIST, PRESIGN_CREDIT_KEY, RPC_URL, TEMPO, TEMPO_CHAIN, TEMPO_RPC_URL, MPP_SESSION_DEPOSIT, SOLANA_PRIVATE_KEY, SOLANA_NETWORK, SOLANA_RPC_URL, ALGORAND_MNEMONIC, ALGORAND_NETWORK, XRPL_SEED, XRPL_NETWORK, XRPL_WS_URL

「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。

必要なもの

  • クラウドで動くインストール不要。インターネット経由でつながります
  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

ウェブ、デスクトップ、モバイルのClaudeで使えます:

  1. Settings → Connectors を開く
  2. Add custom connector を押す
  3. 下のアドレスを貼り付けて Add を押す
  4. サインインを求められたら、作者のサービスにサインインする
SettingsConnectors1+ Add2https://…3
https://wallet.fizzl.eu/mcp

または、パソコンで動かす

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "presign-guard-wallet": {
      "command": "npx",
      "args": [
        "-y",
        "presign-guard-wallet-mcp"
      ],
      "env": {
        "AGENT_KEY": "your-value",
        "LIMIT_USDC_PER_TX": "your-value",
        "LIMIT_USDC_PER_DAY": "your-value",
        "TELEGRAM_BOT_TOKEN": "your-value",
        "TELEGRAM_CHAT_ID": "your-value",
        "AC2_OWNER": "your-value",
        "WALLET_SERVER_URL": "your-value",
        "WALLET_SERVER_KEY": "your-value",
        "CHAIN": "your-value",
        "MAX_PAYMENT_USD": "your-value",
        "ALLOW_LIST": "your-value",
        "PRESIGN_CREDIT_KEY": "your-value",
        "RPC_URL": "your-value",
        "TEMPO": "your-value",
        "TEMPO_CHAIN": "your-value",
        "TEMPO_RPC_URL": "your-value",
        "MPP_SESSION_DEPOSIT": "your-value",
        "SOLANA_PRIVATE_KEY": "your-value",
        "SOLANA_NETWORK": "your-value",
        "SOLANA_RPC_URL": "your-value",
        "ALGORAND_MNEMONIC": "your-value",
        "ALGORAND_NETWORK": "your-value",
        "XRPL_SEED": "your-value",
        "XRPL_NETWORK": "your-value",
        "XRPL_WS_URL": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add --transport http presign-guard-wallet https://wallet.fizzl.eu/mcp

または、パソコンで動かす

claude mcp add presign-guard-wallet --env AGENT_KEY=your-value --env LIMIT_USDC_PER_TX=your-value --env LIMIT_USDC_PER_DAY=your-value --env TELEGRAM_BOT_TOKEN=your-value --env TELEGRAM_CHAT_ID=your-value --env AC2_OWNER=your-value --env WALLET_SERVER_URL=your-value --env WALLET_SERVER_KEY=your-value --env CHAIN=your-value --env MAX_PAYMENT_USD=your-value --env ALLOW_LIST=your-value --env PRESIGN_CREDIT_KEY=your-value --env RPC_URL=your-value --env TEMPO=your-value --env TEMPO_CHAIN=your-value --env TEMPO_RPC_URL=your-value --env MPP_SESSION_DEPOSIT=your-value --env SOLANA_PRIVATE_KEY=your-value --env SOLANA_NETWORK=your-value --env SOLANA_RPC_URL=your-value --env ALGORAND_MNEMONIC=your-value --env ALGORAND_NETWORK=your-value --env XRPL_SEED=your-value --env XRPL_NETWORK=your-value --env XRPL_WS_URL=your-value -- npx -y presign-guard-wallet-mcp

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "presign-guard-wallet": {
      "url": "https://wallet.fizzl.eu/mcp"
    }
  }
}

または、パソコンで動かす

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "presign-guard-wallet": {
      "command": "npx",
      "args": [
        "-y",
        "presign-guard-wallet-mcp"
      ],
      "env": {
        "AGENT_KEY": "your-value",
        "LIMIT_USDC_PER_TX": "your-value",
        "LIMIT_USDC_PER_DAY": "your-value",
        "TELEGRAM_BOT_TOKEN": "your-value",
        "TELEGRAM_CHAT_ID": "your-value",
        "AC2_OWNER": "your-value",
        "WALLET_SERVER_URL": "your-value",
        "WALLET_SERVER_KEY": "your-value",
        "CHAIN": "your-value",
        "MAX_PAYMENT_USD": "your-value",
        "ALLOW_LIST": "your-value",
        "PRESIGN_CREDIT_KEY": "your-value",
        "RPC_URL": "your-value",
        "TEMPO": "your-value",
        "TEMPO_CHAIN": "your-value",
        "TEMPO_RPC_URL": "your-value",
        "MPP_SESSION_DEPOSIT": "your-value",
        "SOLANA_PRIVATE_KEY": "your-value",
        "SOLANA_NETWORK": "your-value",
        "SOLANA_RPC_URL": "your-value",
        "ALGORAND_MNEMONIC": "your-value",
        "ALGORAND_NETWORK": "your-value",
        "XRPL_SEED": "your-value",
        "XRPL_NETWORK": "your-value",
        "XRPL_WS_URL": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "presign-guard-wallet": {
      "type": "http",
      "url": "https://wallet.fizzl.eu/mcp"
    }
  }
}

または、パソコンで動かす

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "presign-guard-wallet": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "presign-guard-wallet-mcp"
      ],
      "env": {
        "AGENT_KEY": "your-value",
        "LIMIT_USDC_PER_TX": "your-value",
        "LIMIT_USDC_PER_DAY": "your-value",
        "TELEGRAM_BOT_TOKEN": "your-value",
        "TELEGRAM_CHAT_ID": "your-value",
        "AC2_OWNER": "your-value",
        "WALLET_SERVER_URL": "your-value",
        "WALLET_SERVER_KEY": "your-value",
        "CHAIN": "your-value",
        "MAX_PAYMENT_USD": "your-value",
        "ALLOW_LIST": "your-value",
        "PRESIGN_CREDIT_KEY": "your-value",
        "RPC_URL": "your-value",
        "TEMPO": "your-value",
        "TEMPO_CHAIN": "your-value",
        "TEMPO_RPC_URL": "your-value",
        "MPP_SESSION_DEPOSIT": "your-value",
        "SOLANA_PRIVATE_KEY": "your-value",
        "SOLANA_NETWORK": "your-value",
        "SOLANA_RPC_URL": "your-value",
        "ALGORAND_MNEMONIC": "your-value",
        "ALGORAND_NETWORK": "your-value",
        "XRPL_SEED": "your-value",
        "XRPL_NETWORK": "your-value",
        "XRPL_WS_URL": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

ChatGPTがつなげるのは、インターネット上のサーバーだけです:

  1. ウェブ版のChatGPTを開き → Settings → Connectors (Apps)
  2. Create または Add を押す(プランによっては、先に Advanced で Developer mode をオンにする必要があります)
  3. 下のアドレスを貼り付け、名前を付けて保存する
  4. サインインを求められたら、作者のサービスにサインインする
SettingsConnectors1+ Create2https://…3
https://wallet.fizzl.eu/mcp

メニューの名前は、プランや時期によって少し違うことがあります。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • AGENT_KEY 秘密 必須 env
    Private key of the agent's own wallet (a separate wallet holding only what the agent may spend)
  • LIMIT_USDC_PER_TX env
    Most USDC per payment or transfer without asking you, e.g. 5
  • LIMIT_USDC_PER_DAY env
    Daily USDC budget, e.g. 20
  • TELEGRAM_BOT_TOKEN 秘密 env
    Telegram bot that asks you to approve anything over a limit
  • TELEGRAM_CHAT_ID env
    Your Telegram chat id (approvals go only there)
  • AC2_OWNER env
    Instead of Telegram: your Algorand address; approvals are signed in your own wallet over AC2 (needs the AC2 service, ac2-cli, paired with your wallet)
  • WALLET_SERVER_URL env
    Instead of LIMIT_* and TELEGRAM_*: a wallet server keeping one budget for all your agents
  • WALLET_SERVER_KEY 秘密 env
    The agent key (awk_…) from the wallet server's dashboard
  • CHAIN env
    base (default), ethereum, optimism, arbitrum, polygon or bsc
  • MAX_PAYMENT_USD env
    Most a single x402 API call may cost, in dollars (default 1)
  • ALLOW_LIST env
    Optional: only pay or sign for these addresses (0x, XRPL r… or Algorand, comma-separated); anything else needs approval. Not with a wallet server
  • PRESIGN_CREDIT_KEY 秘密 env
    Optional presign-guard credit key (pgc_…) to pay the $0.01 checks from prepaid credits
  • RPC_URL env
    Optional RPC URL for the chain
  • TEMPO env
    off to never pay MPP charges on Tempo (default on: paid in USDC.e on Tempo from the same address)
  • TEMPO_CHAIN env
    4217 (Tempo, default) or 42431 (Moderato testnet)
  • TEMPO_RPC_URL env
    Optional Tempo RPC URL
  • MPP_SESSION_DEPOSIT env
    Optional: pay MPP sessions on Tempo; the USDC.e each channel deposit or top-up puts in (counted toward the USDC limits); then each call is a signed voucher
  • SOLANA_PRIVATE_KEY 秘密 env
    Optional: the agent's own Solana secret key (base58 or solana-keygen byte array); pays x402 offers in USDC on Solana (checked by presign-guard, counted toward the USDC limits)
  • SOLANA_NETWORK env
    mainnet (default) or devnet
  • SOLANA_RPC_URL env
    Optional Solana RPC URL
  • ALGORAND_MNEMONIC 秘密 env
    Optional: the agent's own Algorand account (25 words); pays x402 offers in USDC on Algorand (counted toward the USDC limits)
  • ALGORAND_NETWORK env
    mainnet (default) or testnet
  • XRPL_SEED 秘密 env
    Optional: the agent's own XRPL account seed; pays x402 offers in RLUSD on the XRP Ledger (counted toward the USDC limits)
  • XRPL_NETWORK env
    mainnet (default) or testnet
  • XRPL_WS_URL env
    Optional XRPL node websocket URL

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

このサーバーは、ツール一覧を表示する前にサインインを求めます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント Fizzl13 で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • ✓ 合格

    エンドポイントが応答する

    515ミリ秒で応答(HTTP 401)

  • ✓ 合格

    OAuthでサインイン

    OAuthでのサインインに対応しているため、AIアプリがログイン画面へ案内してくれます

  • … 未チェック

    ツールの説明に隠れた指示がない

    まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります

暗号資産・ブロックチェーンのほかのサーバーとの比較i

  • このカテゴリのほかの1614件のうち0%よりスターが多い
  • このカテゴリのほかの1614件のうち89%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの1614件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

presign-guard walletは安全ですか?

当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:AGENT_KEY, TELEGRAM_BOT_TOKEN, WALLET_SERVER_KEY, PRESIGN_CREDIT_KEY, SOLANA_PRIVATE_KEY, ALGORAND_MNEMONIC, XRPL_SEED

パソコンで動きますか、それともクラウドですか?

どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(0.30.0)がレジストリに届いたのは7 日前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。

代わりに使えるものは?

同じカテゴリには:Highwire, Crypto Sentiment X402, Crypto MCP Server

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Highwire

Trade, launch and research higher.fun coins on Solana, from any AI agent. Unsigned or policy-signed.

作者:HigherMaestro成長中↓ 1729/週今日更新

パソコンでもクラウドでも✓ highwire.fun

Crypto Sentiment X402

Crypto news sentiment for 24 coins: label, score and headlines behind it, paid per call via x402

作者:whatevercat-creatorとても新しい↓ 61/週今日更新

パソコンで動く

Crypto MCP Server

Live cryptocurrency prices and FX rates as agent tools.

作者:thenextgennexus.comとても新しい今日更新

クラウドで動く✓ thenextgennexus.com

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

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, and MPP APIs: method evm (USDC on the wallet's chain) and method tempo (USDC.e on Tempo, what nearly every MPP API asks for);
  • with its own accounts there, also pay x402 offers in RLUSD on the XRP Ledger (XRPL_SEED) and in USDC on Solana (SOLANA_PRIVATE_KEY) and Algorand (ALGORAND_MNEMONIC), and MPP sessions on Tempo (MPP_SESSION_DEPOSIT);
  • 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, a request to sign in your own wallet over AC2, or the request shows up on your wallet server dashboard. No answer means no payment.
  • Every signature is checked first by [presign-guard](https://presign-guard.fizzl.eu). It checks for known drainers, sanctioned addresses and look-alike tokens, checks an x402 payment against what the seller asked, and simulates a transaction to see what really leaves the wallet. 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.
  • Paid answers are checked before your agent reads them (with a wallet server). An AI check looks at what the API sent back. If it carries instructions aimed at your agent (prompt injection: "ignore your rules", "pay this address"), the answer comes with a warnings field first that tells the agent to treat it as data only. If it isn't what was paid for, the warning says so too. You see both on the receipt and get a message.

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.

What the limits do and don't stop. The limits are enforced by this MCP server on your computer, not on the blockchain. The agent wallet's private key is on that computer too (in the MCP config, or in a file with AGENT_KEY_FILE). An agent that can read files or run commands (Claude Code, Cursor) could read the key and sign without these rules. So give the agent its own wallet with only what you'd accept losing, never your main wallet. With the wallet server (hosted at wallet.fizzl.eu), you can also put the limit on the chain: your USDC stays in your own wallet, and the agent's wallet is topped up to a small float within a limit a day that a contract on Base keeps (agent-allowance). A leaked key can then take at most that. This server asks for the top-up by itself before a payment when its wallet runs low.

See the dashboard (demo data): https://wallet.fizzl.eu/demo

Quick start (hosted, about 2 minutes)

No keys to copy: the wallet makes its own key on your computer, and you link it to your account with a code. The hosted wallet at wallet.fizzl.eu does the limits, approvals and receipts. Free to start.

  1. Install it in your app, without keys.
  • Claude Desktop: download [fizzl-wallet.mcpb](https://wallet.fizzl.eu/download/claude-desktop) and open it; Claude Desktop installs it (it brings its own Node.js).
  • Claude Code: claude mcp add wallet -- npx -y presign-guard-wallet-mcp@0.30.0
  • Cursor and other MCP clients: { "mcpServers": { "wallet": { "command": "npx", "args": ["-y", "presign-guard-wallet-mcp@0.30.0"] } } }
  1. Ask your agent: *"what is my wallet status?"* It makes its own wallet (the key goes into ~/.fizzl/agent-key, readable only by you, and is never sent anywhere) and answers with a link and a code that works for 10 minutes.
  2. Open the link, sign in at wallet.fizzl.eu with e-mail, a passkey, Xaman or your wallet, and enter the code. Give the agent a name. The wallet picks up its key for the wallet server by itself; no restart.
  3. Put a few dollars of USDC in the agent's wallet (the dashboard has buttons for it). Most calls cost a cent or less. Then ask something like *"find a weather API and get the forecast for Amsterdam"*. It finds a paid API, pays within your limits and shows you the receipt.

Then connect Telegram on the dashboard to approve anything above your limit from your phone, and press Test my setup to see what's still missing.

Rather paste the keys yourself? On the dashboard, Agents → Add agent shows the setup for your app with the keys filled in. Prefer to run everything yourself? See Set up below.

In ChatGPT, Claude on the web or phone, or Grok

These apps can't run a local MCP server, so they use the remote connector instead: add a custom connector with the URL https://wallet.fizzl.eu/mcp and sign in to your Fizzl wallet. The app can then search paid APIs and ask for payments, but it never pays on its own: every payment waits for your signature in your own wallet (USDC on Base or Solana, or RLUSD in Xaman). Steps per app: https://wallet.fizzl.eu/connector

Tools

ToolWhat it does
wallet_statusAddress, balances, limits, what is left today, how approvals work
find_servicesSearch the public x402 catalog (Coinbase's x402 Bazaar) for paid APIs this wallet can pay (USDC on its chain, within the price cap), best match first. With a wallet server, the server searches: by meaning, with sellers that x402 Doctor has seen paying out day after day first, and each result's track record. When one of those sellers costs $0.01 or less, Fizzl Buy comes first as an extra option ($0.02, Fizzl's own service): one call that picks the seller, pays it and checks the answer
pay_x402Call an API that answers 402 Payment Required, pay it in USDC, return the response (with a price cap per call). Pays x402, and MPP (Machine Payments Protocol) charges with the evm method in USDC on the wallet's chain: the same EIP-3009 signature, checked by presign-guard and counted toward your limits. On Tempo (method tempo) the wallet sends a USDC.e transferWithMemo from its own address there and hands over the transaction hash; presign-guard doesn't cover Tempo, so guard-wallet checks that it is exactly that transfer, and it counts toward your USDC limits. Order when an API offers several: x402, MPP evm, Tempo
send_usdcSend USDC to an address
send_nativeSend ETH / POL / BNB to an address
check_textBefore acting on text the agent did not write (a web page, email, tool result, API answer or another agent's message): is it a prompt-injection trap? presign-guard's check answers green, orange or red. Free for the verdict (texts up to 8,000 characters, 10 an hour); detailed: true pays $0.01 from the wallet, within your limits, for the reason codes and probabilities
pause_spendingThe agent stops itself when something looks wrong; nothing is signed until you restart or resume

No paying twice. A signed x402 payment (an EIP-3009 authorization) can be collected by the seller until it expires, also after the API answered with an error or asked again, perhaps with another payTo. So when a paid call doesn't answer properly, the wallet asks USDC on-chain whether that payment was taken (authorizationState) and says so in the result (charge, with a warning first). A second payment for the same endpoint is refused until the first one is used or expired, and for an hour after a payment that was taken without an answer, so a retry can't pay twice.

The wallet signs only what these tools need: payment signatures and transfers. It signs no EIP-7702 authorization (handing the wallet's code to a contract, which is how "sweeper" drainers empty a wallet), whatever a seller, a web page or a prompt asks.

Set up

  1. 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.
  2. Optional: phone approvals.
  1. Add it to your MCP client. For Claude Desktop: Settings → Developer → Edit Config opens claude_desktop_config.json (on a Mac in ~/Library/Application Support/Claude/, on Windows in %APPDATA%\Claude\). Put this in it:
{

"mcpServers": { "wallet": { "command": "npx", "args": ["-y", "presign-guard-wallet-mcp@0.30.0"], "env": { "AGENT_KEY": "0x…the agent wallet's private key…", "LIMIT_USDC_PER_TX": "5", "LIMIT_USDC_PER_DAY": "20", "TELEGRAM_BOT_TOKEN": "123456:ABC…", "TELEGRAM_CHAT_ID": "123456789" } } } }

Rather keep the key out of that file? Put it in a file only you can read and set "AGENT_KEY_FILE": "/full/path/to/that/file" instead of AGENT_KEY.

For Claude Code, the key goes into a file at a prompt (not shown, not in your shell history or Claude's config):

mkdir -p ~/.fizzl && (umask 077; printf 'Agent wallet key: '; stty -echo; read -r k; stty echo; echo; printf '%s\n' "$k" > ~/.fizzl/agent-key)

claude mcp add wallet -e AGENT_KEY_FILE=$HOME/.fizzl/agent-key -e LIMIT_USDC_PER_TX=5 -e LIMIT_USDC_PER_DAY=20 -- npx -y presign-guard-wallet-mcp@0.30.0

Pin the version (@0.30.0), as above: npx -y without one fetches the newest release on every start, and that code sees the key. Releases are published from GitHub Actions with npm provenance; npm audit signatures checks it.

Then ask your agent, for example: *"Check my wallet, then get the BTC signal from https://ichimoku-signal.fizzl.eu/signal/BTC-USDT"*.

Or let it find a service itself: *"Find a paid API for a bitcoin trend signal under $0.10 and buy one"*. The agent searches the x402 catalog with find_services, picks one and pays it with pay_x402, within your limits.

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_*:

"env": {

"AGENT_KEY": "0x…", "WALLET_SERVER_URL": "https://your-wallet-server.example", "WALLET_SERVER_KEY": "awk_…" }

Configuration

Variable
AGENT_KEYprivate key of the agent's own wallet (64 hex characters, with or without 0x). Without it the wallet links itself with a code: it makes its own key and each tool answers with a code to enter on the wallet server's dashboard
AGENT_KEY_FILEinstead of AGENT_KEY: the path to a file holding the key (~/ works), so it is in neither the client's config nor your shell history. Make it readable only by you (chmod 600); the server warns otherwise. The same works for XRPL_SEED_FILE, ALGORAND_MNEMONIC_FILE and SOLANA_PRIVATE_KEY_FILE
LIMIT_USDC_PER_TX, LIMIT_USDC_PER_DAYUSDC limits (payments and transfers together). Limits or a wallet server are required

| LIMIT_NATIVE_PER_TX, LIMIT_NATIVE_PER_DAY | lim

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く