mcpField
I
IronWallet

IronWallet

ローカル
ironwallet.io金融データ07 週間前に更新

IronWallet について

IronWallet は、AI エージェントがノンカストディアル暗号資産ウォレットを調べ、操作するためのローカル MCP サーバーです。シードフレーズはホスト上で暗号化され、署名もローカルで行われます。複数ネットワークの残高確認、送金、スワップに対応します。

主な機能

  1. 01ローカル暗号化キーストアと署名
  2. 02ネイティブ通貨とトークンの残高確認
  3. 03送金手数料の見積もりと実行
  4. 04トークンスワップの見積もりと実行
  5. 05ウォレットごとの操作制限

活用シーン

  1. 01残高と取引履歴の確認
  2. 02暗号資産送金前の手数料見積もり
  3. 03対応ネットワーク間でのトークンスワップ
  4. 04ウォレットポリシーによる送金とスワップの制限

MCP 対応

stdio 経由で、ウォレット管理、残高、履歴、送金、スワップのツールを MCP クライアントに提供します。署名はローカルで行われ、ツールの入出力にシードフレーズは含まれません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"io-ironwallet": {
"command": "npx",
"args": [
"-y",
"@ironwallet/mcp-server"
],
"env": {
"IW_READ_ONLY": "<IW_READ_ONLY>"
}
}
}
}
起動コマンドnpx -y @ironwallet/mcp-server
設定が必要な環境変数
IW_READ_ONLYSet to true to disable send_transfer and execute_swap for the whole server. Balances, estimates, and lists still work.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@ironwallet/mcp-server1.2.1

ツール

18

掲載時のツール一覧 · 3 週間前に更新

このツールにパラメーターはありません。

詳細

@ironwallet/mcp-server

IronWallet 用のローカル MCP サーバー(ironwallet-mcp バイナリ)です。

IronWallet MCP サーバーにより、AI エージェントは非カストディアル型ウォレットへ安全にアクセスできます。シードフレーズはホスト上で暗号化されたまま保持され、このマシンの外に出ることはありません。エージェントを経由することもありません。エージェントは残高の取得、ローカルでの署名、トークンの送金、10 以上のネットワーク間でのスワップを実行できます。

IronWallet アプリとシード互換です。

トランザクションごとの確認 UI はありません。

ホットウォレット専用です。 残高を少額に制限した専用ウォレットを使用してください。セキュリティをご覧ください。

製品ページ:ironwallet.io/ai

要件: Node.js 20 以降(npx)。


インストール

npx -y @ironwallet/mcp-server

または、MCP 設定(Cursor の場合は .cursor/mcp.json またはグローバル設定)に追加します。

{
  "mcpServers": {
    "ironwallet": {
      "command": "npx",
      "args": ["-y", "@ironwallet/mcp-server"]
    }
  }
}

npx は公開済みの最新ビルドを取得します。依存関係のインストール中は、初回起動に約 30 秒かかる場合があります。MCP クライアントがタイムアウトする場合は、ターミナルで同じコマンドを一度実行してキャッシュを準備してから、再接続してください。

ironwallet.io/ai のプラグインインストールを使うと、これらの設定が自動的に行われます。


仕組み

MCP client  →  ironwallet-mcp (stdio)
                    ├── encrypted keystore on disk
                    ├── signs on this machine
                    └── HTTPS to IronWallet backends

ニーモニックがツールの入力や出力、エージェント向けのログ、バックエンド/LLM/MCP クライアントのクラウドへのリクエストに現れることはありません。


機能

領域機能
ネットワークEthereum、BSC、Polygon、Base、Arbitrum、Optimism、Avalanche、Tron、Bitcoin、Litecoin、Dogecoin、Solana、XRP、TON
ウォレット作成、インポート、一覧表示、入金用 QR、バックアップ(秘密情報の操作にはローカルブラウザーを使用)
残高ネイティブコインとトークン
送金手数料の見積もりと、IronWallet の送金リレーを介した送信
スワップIronWallet を介した見積もりと実行
ポリシーset_wallet_policy で設定するウォレットごとの任意の制限(readOnly、maxPerTxUsd、送金先の許可リスト)。send_transfer と execute_swap に適用されます。

ツール

ツール用途資金を移動しますか?
get_runtime_info実行中のバージョンと公開済み npm パッケージの比較いいえ
prepare_update次回の再起動に向けて npm の更新を準備いいえ
list_wallets名前、アドレス、policyいいえ
accept_mcp_consentMCP の免責事項へのチャット上の同意を記録いいえ
create_wallets新しいウォレットを作成。ブラウザー用の backup_url を返すいいえ
open_wallet_managerインポート/作成/バックアップ/削除を行うローカルブラウザー UIいいえ
set_wallet_policyウォレットごとの制限(readOnly、maxPerTxUsd、許可リスト)を置き換えいいえ
get_deposit_qrPNG QR(チャットで試し、利用できない場合はローカルの qr_url)いいえ
get_balanceネイティブコインまたはトークンの残高いいえ
get_transaction_history公開エクスプローラーから最近のトランザクションを取得(ページ分割)いいえ
estimate_transfer手数料の見積もり。ブロードキャストは行わないいいえ
send_transferローカルで署名して送信はい
get_operation_status送金のステータスをポーリングいいえ
list_swap_networksスワップで利用可能なネットワークいいえ
list_swap_assets売却/購入するアセットのカタログいいえ
estimate_swap見積もり(期限切れになる場合があります)いいえ
execute_swap最新の見積もり → 署名 → スワップはい
get_swap_statusスワップのステータスをポーリングいいえ

シードを受け取ったり返したりするツールはありません。インポート、バックアップ、削除はローカルブラウザー(open_wallet_manager/backup_url)でのみ行ってください。

ウォレット
  • 作成: create_wallets — エージェントに名前とアドレスが返されます。リカバリーフレーズを表示してバックアップするには、ブラウザーで backup_url を開きます。
  • インポート/バックアップ: open_wallet_manager — ループバック接続のみのページです。フレーズの入力や表示はブラウザー内でのみ行われます。
  • 削除: マネージャーの「削除」ボタンを使用します。別の確認ページで、ユーザーにウォレット名を再入力するよう求めます。バックアップされていないウォレットの場合は、リカバリーフレーズが破棄されることへの明示的な承認も必要です。資金は移動されません。この操作に対応する MCP ツールはありません。
  • 一覧表示: list_wallets
  • 入金用 QR コード: get_deposit_qr — PNG(オンザフライで生成)と qr_url が返されます。ホストが画像を表示できる場合はチャットに表示し、できない場合は qr_url を開きます。1 つのチェーンを指定するには network を渡します。ウォレットマネージャーでは、各アドレスの横にある QR コードボタンも使用できます。

ブラウザーページは推測困難なパスで 127.0.0.1 にバインドされ、15 分間操作がないとシャットダウンします。

送金
  1. list_wallets / get_balance
  2. estimate_transfer(任意)
  3. send_transfer
  4. 操作の完了を待つ必要がある場合は get_operation_status

手数料が残高内に収まるよう、send_transfer が金額をわずかに減額することがあります。その場合はレスポンスに記載されます。

スワップ

スワップは送金とは別のフローです。

  1. list_swap_networks
  2. list_swap_assets(direction=from を実行し、その後、選択した売却資産を指定して direction=to を実行)
  3. カタログの network、symbol、address、decimals を estimate_swap / execute_swap にコピーします(特にトークンの場合)。
  4. プレビューには estimate_swap を使用するか、直接 execute_swap を実行します。
  5. execute_swap の operationId を使って get_swap_status で状態を確認します(estimate_swap は見積もりであり、状態はありません)。

便利なオプション

  • maxMode: true — サービスが許可する範囲で残高を最大限売却します(手数料はサーバー側で考慮されます)。maxMode を設定した場合、amount は省略できます。
  • ネイティブコインの場合のみ address を省略します。トークンの場合は、必ず list_swap_assets の address(可能であれば decimals も)を渡してください。

運用上の注意

  • 見積もりには有効期限があります。execute_swap(最新の見積もりを使用)を優先してください。実行がタイムアウトした場合は、再試行する前に 状態を確認 してください。実行を安易に再実行しないでください。
  • ウォレットポリシー:readOnly は送金とスワップをブロックします。maxPerTxUsd は、操作時点で IronWallet バックエンドのレートを使い、送金額(または修正後のスワップ売却額)を USD 換算して評価します。レートを取得できない場合、操作は拒否されます(フェイルクローズ)。受取先の許可リストは send_transfer に適用されます。set_wallet_policy はポリシー全体を置き換えるため、先に list_wallets.policy を確認してください。

設定

通常の使用では、MCP 設定に貼り付けるものはありません。初回起動時に、サーバーはリレー API キー、キーストアのラッピングシークレット、デバイス ID を ~/.ironwallet-mcp/ 配下に書き込みます(keystore-passphrase、relay-api-key、device-id。POSIX では所有者のみアクセス可能な 0600、Windows では NTFS ACL)。上書きする場合にのみ環境変数を設定してください。

ユーザー向けのバックアップは、これらのファイルではなく、ウォレットマネージャーのリカバリーフレーズです。

変数デフォルト説明
IW_PASSPHRASEローカルで生成キーストアのラッピングシークレットを上書きします
IW_READ_ONLYfalseプロセス全体に適用されます。send_transfer と execute_swap を拒否します。true/1 で有効、false/0/off/no で無効になります。ウォレットごとの policy.readOnly とは別の設定です。
IW_RELAY_API_KEY生成された UUIDx-api-key を上書きします
IW_DEVICE_ID生成された UUIDデバイス UUID を上書きします(キーストアディレクトリごとに固定)。X-Device-Id: web:<uuid> として送信されます。すでに platform: プレフィックスが付いた値は、そのまま送信されます
IW_KEYSTORE_DIR~/.ironwallet-mcpキーストアディレクトリ
IW_RATES_API_URL組み込みプロファイルmaxPerTxUsd の評価に使用するレートバックエンド。プロファイルに設定されていない場合、USD の上限は拒否されます(フェイルクローズ)
IW_STATIC_RESOURCES_URL組み込みプロファイル静的アセットカタログ(トークン → レート ID)
IW_HTTP_TIMEOUT_MS15000一般的な HTTP タイムアウト(1 秒~120 秒)
IW_HTTP_FORWARD_TIMEOUT_MS60000ブロードキャスト形式の呼び出し向けの長いタイムアウト。クライアントのタイムアウトが必ずしも操作の失敗を意味するとは限りません。ステータスを確認してください
IW_HTTP_RETRIES2安全/冪等な呼び出しの再試行回数。ブロードキャストは自動再試行されません
IW_HISTORY_APIS組み込みプロファイルJSON { "<network>": [{ "kind", "url"? }, …] }。get_transaction_history で使用する、ネットワークごとの履歴インデクサーのリスト。順番に試行されます。種類:etherscan、nodereal、tronscan、trongrid、esplora、blockcypher、solana-rpc、toncenter、tonapi、xrp-rpc
IW_TON_API_KEY未設定TonCenter API キー。キーなしの TonCenter は IP ごとに約 1 リクエスト/秒です(同じ NAT の背後にあるすべてのプロセスで共有されます)
IW_TONAPI_KEY未設定tonapi 履歴フォールバック用の tonapi.io Bearer トークン。キーなしの場合は IP ごとに約 1 リクエスト/秒です
IW_LOG_ENABLED1ログファイルへの JSONL 診断出力(無効にするには 0)
IW_LOG_FILE{keystoreDir}/logs/iw-mcp-YYYY-MM-DD.jsonlログのパス
IW_LOG_LEVELinfodebug/info/warn/error
IW_LOG_STDERR0ログを stderr にも出力します(stdout は MCP 用に確保されています)

セキュリティ

  • シードは保存時に暗号化されます。ツールの結果、エージェントのチャット、バックエンドへのリクエストにシードが含まれることはありません。
  • エージェントは再確認なしで資金を移動できます。任意のウォレットポリシー(set_wallet_policy で設定する readOnly、maxPerTxUsd、送金先の許可リスト)はデフォルトで無効で、send_transfer と execute_swap の両方に適用されます。
  • キーストアとラッピングシークレットを持つ人は、資金を管理できます。漏えいしたシードを無効化することはできません。
  • タイムアウトは必ずしも失敗を意味しません。送金やスワップを再試行する前に、ステータスを確認してください。
  • デスクトップ/stdio のみです。スマートフォンやリモートエージェントには、信頼できるデバイス上で署名を維持する設計が必要です。
  • ここにメインウォレットを置かないでください。少額のホットウォレットを使用してください。

詳細および非公開の脆弱性報告については、SECURITY.md をご覧ください。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。