MCPのセットアップ

Cursor、Claude Code、ChatGPT、その他のMCPクライアント向けにIronWallet MCPサーバーをインストールおよび設定します。

IronWallet MCPサーバー(@ironwallet/mcp-server)は、AIエージェントにコンピューター上のノンカストディアルな仮想通貨ウォレットを提供します。シードフレーズはローカルで生成・暗号化され、マシンから外部へ送信されることはなく、エージェント、LLM、またはIronWalletのバックエンドを経由することもありません。エージェントは、イーサリアム、BSC、ポリゴン、Base、アービトラム、オプティミズム、アバランチ、トロン、ビットコイン、ソラナ、XRP、TONの12ネットワークにわたり、残高の確認、入金用QRコードの表示、トークンの送金、スワップを実行できます。

トランザクションごとの確認UIはありません。エージェントに送金やスワップを依頼すると、再確認なしで署名およびブロードキャストが行われます。残高を制限した専用のホットウォレットを使用し、メインウォレットは絶対に使用しないでください。

要件:Node.js 20以上(npx)。デスクトップ / stdioのみ。

機能

ノンカストディアル、ローカル署名

シードフレーズはホスト上で暗号化されたまま保持されます(所有者のみのファイル権限)。トランザクションはマシン上で署名され、ツールがシードを受け取ったり返したりすることはありません。

ローカルブラウザでのウォレット管理

create_walletsでウォレットを作成(backup_urlを返します)するか、open_wallet_managerを通じてインポートおよびバックアップを行います。これは127.0.0.1上のループバック専用ページで、15分間操作がないとシャットダウンします。秘密情報はブラウザページにのみ表示され、チャットには表示されません。

手数料見積もり付き送金

estimate_transferはブロードキャストせずに手数料をプレビューし、send_transferはローカルで署名して送信、get_operation_statusは結果をポーリングします。サーバーは手数料が残高に収まるように金額をわずかに減額することがあり、その際は応答で通知されます。

カタログ駆動型のスワップ

list_swap_networksとlist_swap_assetsが売買カタログを提供するため、エージェントがトークンアドレスを捏造することはありません。estimate_swapで見積もり、execute_swapで実行、get_swap_statusでポーリングします。

入金用QRコード

get_deposit_qrはチャット用のPNGと、ローカルのqr_urlフォールバックを返します。

オプションの利用制限

set_wallet_policyによるウォレットごとのポリシー設定:readOnly、maxPerTxUsd、送金先許可リスト。デフォルトではオフで、送金とスワップの両方に適用されます。IW_READ_ONLY=trueを設定するとサーバー全体が読み取り専用になります。

インストール

オプション1:npx(推奨)

npxを使用して、グローバルインストールなしでサーバーを実行します。これにより、常に最新バージョンを使用できます。

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

初回起動時は依存関係のインストールに約30秒かかる場合があります。MCPクライアントがタイムアウトした場合は、ターミナルで一度コマンドを実行してキャッシュを温めてから再接続してください。

オプション2:グローバルインストール

パッケージをグローバルにインストールして起動を高速化し、ironwallet-mcpを実行します。

npm install -g @ironwallet/mcp-server@latest

セットアップガイド

デスクトップ専用

各クライアントには専用の静的URLがあります(例:/ai/introduction/vscode/)。以下のすべてのインストールコマンドはこのページにもインラインで記載されており、タブや隠れたメニューはありません。

Cursor

最も推奨

最も推奨

無料版で動作し、インストールが簡単で、最高の体験が得られます

Cursorで開く

一度インストールすれば、すべてのチャットでウォレットツールが利用可能になります。これを~/.cursor/mcp.jsonに貼り付けてCursorを再起動することもできます。

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

インストール後、PATHにnpxを含めるためにCursorを再読み込みしてください。

スタンドアロンページ: Cursor — 1回のHTTPフェッチでこのガイドのみが返されます。

Claude Code

上級者向け

Codeモードでうまく動作しますが、Chatモードは非常に制限されています

Claude Codeで開く

以下のコマンドを順番に実行してください:

1claude plugin marketplace add ironwallet/ironwallet-agent-kit
2claude plugin install ironwallet-mcp@ironwallet

プラグインインストール後、約45秒待ってから新しいチャットを開始し、ツールを読み込ませてください。

または、Claude Codeを直接stdioサーバーに向けることもできます:

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

スタンドアロンページ: Claude Code — 1回のHTTPフェッチでこのガイドのみが返されます。

VS Code

最高レベルの上級者向け

AIモデルの有料版で追加プラグインが必要です

VS Codeで開く

VS Codeを開き、ローカルMCPサーバーを登録します。VS CodeのMCP設定(ユーザーまたはワークスペース)に追加することもできます。

1{
2 "mcp": {
3 "servers": {
4 "ironwallet": {
5 "type": "stdio",
6 "command": "npx",
7 "args": ["-y", "@ironwallet/mcp-server"]
8 }
9 }
10 }
11}

スタンドアロンページ: VS Code — 1回のHTTPフェッチでこのガイドのみが返されます。

ChatGPT

簡単なセットアップ - ChatGPTが必要

無料版は非常に制限されており、有料版の方がうまく動作します

ChatGPTで開く

以下のコマンドを順番に実行し、再読み込みしてMCPツールを利用可能にしてください。

1codex plugin marketplace add ironwallet/ironwallet-agent-kit
2codex plugin add ironwallet-mcp@ironwallet

または、ChatGPTを直接stdioサーバーに向けることもできます:

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

スタンドアロンページ: ChatGPT — 1回のHTTPフェッチでこのガイドのみが返されます。

その他のクライアント

stdioトランスポートを使用してください。MCPクライアントを以下に向けてください:

1{
2 "mcpServers": {
3 "ironwallet": {
4 "command": "npx",
5 "args": ["-y", "@ironwallet/mcp-server"]
6 }
7 }
8}

スタンドアロンページ: その他のクライアント — 1回のHTTPフェッチでこのガイドのみが返されます。

初回実行とウォレットのセットアップ

サインインやアカウント作成は不要です。初回起動時に、サーバーはローカルの秘密情報(リレーAPIキー、キーストアラップ用シークレット、デバイスID)を~/.ironwallet-mcp/配下に所有者のみがアクセス可能な権限で生成します。設定は不要です。

ウォレットの使用を開始するには:

1
同意. ウォレットの作成やインポートを行う前に、エージェントがチャットでMCP免責事項を表示し、同意を記録します(accept_mcp_consent)。または、ウォレットマネージャーで続行を押してください。
2
作成またはインポート. create_walletsはウォレット名とアドレス、およびbackup_urlを返します。ブラウザで開いてリカバリーフレーズを表示・バックアップしてください。既存のウォレットのインポートや後からのバックアップにはopen_wallet_managerを使用してください。リカバリーフレーズはローカルブラウザページでのみ入力または表示され、チャットには決して表示されません。
3
ウォレットへの入金. エージェントに入金用QRコード(get_deposit_qr)またはアドレス(list_wallets)を尋ね、少額を送金してください。これはホットウォレットですので、残高は制限してください。

ディスク上のデータ

サーバーの状態は~/.ironwallet-mcp/に保存されます(IW_KEYSTORE_DIRでオーバーライド可能):

ウォレットのシードを含む暗号化されたキーストア

ラップ用シークレット、リレーAPIキー、デバイスID

logs/配下の診断ログ(シード素材は記録されません)

警告:サーバーを「リセット」するためにこのディレクトリを削除しないでください。

ここには資金の暗号化キーが含まれています。ウォレットマネージャーでリカバリーフレーズをバックアップせずに削除すると、資金は失われます。バックアップ対象はこれらのファイルではなく、リカバリーフレーズです。

キーストアとラップ用シークレットの両方を持つ者は資金を管理できるため、このディレクトリは機密情報として扱ってください。

環境変数

ほとんどのユーザーは環境変数を設定する必要はありません。サーバーは初回起動時に必要なすべての情報を生成・保存します。上級者向けに以下の変数が利用可能です:

変数
説明
デフォルト
IW_READ_ONLY
プロセス全体でsend_transferとexecute_swapを拒否します。ウォレットごとのpolicy.readOnlyとは異なります
false
IW_KEYSTORE_DIR
キーストアディレクトリ
~/.ironwallet-mcp
IW_PASSPHRASE
キーストアラップ用シークレットのオーバーライド
generated locally
IW_RELAY_API_KEY
リレーAPIキーのオーバーライド
generated UUID
IW_HTTP_TIMEOUT_MS
一般的なHTTPタイムアウト
15000
IW_HTTP_FORWARD_TIMEOUT_MS
ブロードキャスト形式の呼び出しのタイムアウト。クライアントのタイムアウトは必ずしも操作の失敗を意味しないため、ステータスを確認してください
60000
IW_LOG_ENABLED
ログファイルへのJSONL診断出力(0で無効)
1
IW_LOG_LEVEL
debug / info / warn / error
info

セキュリティ

シードはマシンから決して外部へ送信されません。 保存時は暗号化され、ツール結果、エージェントのチャット、ログ、バックエンドリクエストには決して表示されません。ツールがシードを受け取ったり返したりすることはありません。インポートとバックアップはローカルブラウザでのみ行われます。

エージェントは再確認なしで資金を移動できます。 トランザクションごとの確認UIはありません。チャットメッセージが承認となります。送金やスワップはブロードキャストされると取り消せません。

オプションの制限。 set_wallet_policyによるウォレットごとのポリシー(readOnly、maxPerTxUsd、送金先許可リスト)およびサーバー全体のIW_READ_ONLY=trueがあります。どちらもデフォルトではオフです。

ホットウォレット専用。 メインウォレットや貯蓄用ウォレットはインポートしないでください。キーストアとラップ用シークレットを持つ者は資金を管理できます。漏洩したシードは取り消せません。

タイムアウトは失敗ではありません。 送金やスワップを再試行する前にget_operation_status / get_swap_statusをポーリングしてください。

すべてのバックエンドリクエストはHTTPSを使用し、ローカルの秘密ファイルは所有者のみの権限(Unixでは0600、WindowsではNTFS ACL)を使用します。

脆弱性開示:SECURITY.md

テスト

MCPインスペクターを使用してサーバーを直接テストします。これにより、AIアシスタントなしでツール呼び出しをテストできるインタラクティブなWeb UIが開きます。

npx @modelcontextprotocol/inspector npx -y @ironwallet/mcp-server

トラブルシューティング

初回起動時にMCPクライアントがタイムアウトする

npxは初回実行時にパッケージをダウンロードするため、約30秒かかる場合があります。

  • ターミナルでnpx -y @ironwallet/mcp-serverを一度実行してキャッシュを温めてから再接続してください。
  • または、グローバルにインストールしてください:npm install -g @ironwallet/mcp-server@latest。

クライアントにツールが表示されない

  • Node.js 20以上がインストールされているか確認してください:node --version。
  • インストール後、PATHにnpxを含めるためにクライアントを再読み込みしてください。
  • プラグインインストール後(Claude Code / ChatGPT)、ツールを読み込ませるために新しいチャットを開始してください。
  • 設定ファイルが有効なJSONであることを確認し、クライアントを再起動してください。
  • MCPインスペクターを使用してサーバーを手動でテストしてください(「テスト」を参照)。

create_walletsがneeds_consentを返す

MCP免責事項がまだ承諾されていません。エージェントに完全な免責事項を表示させて確認(accept_mcp_consent)するか、ウォレットマネージャーを開いて続行を押してください。

送金またはスワップがタイムアウトした

タイムアウトは失敗ではありません。トランザクションはすでにブロードキャストされている可能性があります。再試行する前にget_operation_status(送金)またはget_swap_status(スワップ)をポーリングしてください。盲目的に再送信しないでください。

送金またはスワップが拒否される

  • list_wallets → policyを確認してください:readOnlyや送金先許可リストが操作をブロックしている可能性があります。{ enabled: false }は制限なしを意味します。
  • maxPerTxUsdは失敗時に閉じる仕様です:資産のUSDレートが利用できない場合、操作は拒否されます。
  • サーバーがIW_READ_ONLY=trueで実行されていないか確認してください。