mcpField
M
mcp-prepare-transactions

mcp-prepare-transactions

ローカル
github.com/CryptoAPIs-io金融データ05 週間前に更新

mcp-prepare-transactions について

mcp-prepare-transactions は、Crypto APIs を利用して複数のブロックチェーンやトークン規格の未署名送金を準備する MCP サーバーです。取引データを用意し、ローカルで署名するクライアント向けです。

主な機能

  1. 01EVM のネイティブ通貨、ERC-20、ERC-721送金
  2. 02Tezos の XTZ、FA1.2、FA2送金
  3. 03Solana の SOL、SPL送金
  4. 04Kaspa、XRP、複数の UTXO 送金
  5. 05Tron のネイティブ通貨、TRC-20、NFT送金
  6. 06ローカル署名用の未署名データ出力

活用シーン

  1. 01EVM 資産の未署名送金取引の準備
  2. 02Solana または Tezos のトークン送金操作の準備
  3. 03複数宛先に対応する Kaspa または UTXO 送金の作成
  4. 04Tron のトークンや NFT 送金データの生成

MCP 対応

MCP サーバーは、EVM、Tezos、Solana、Kaspa、XRP、UTXO、Tron の未署名取引を作成するツールをクライアントに提供します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"cryptoapis-io-mcp-prepare-transactions": {
"command": "npx",
"args": [
"-y",
"@cryptoapis-io/mcp-prepare-transactions"
],
"env": {
"CRYPTOAPIS_API_KEY": "<CRYPTOAPIS_API_KEY>"
}
}
}
}
起動コマンドnpx -y @cryptoapis-io/mcp-prepare-transactions
設定が必要な環境変数
CRYPTOAPIS_API_KEYシークレットCrypto APIs API key

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

パッケージ
npm@cryptoapis-io/mcp-prepare-transactions0.5.0

ツール

8

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

パラメーター型必須説明
valuestringいいえネイティブコインの最小単位での金額(例:wei)(prepare-transaction-from-address で必須)
actionenumはい実行する操作prepare-transaction-from-address | prepare-fungible-token-transfer | prepare-nft-transfer
amountstringいいえ送金するトークン数量(prepare-fungible-token-transfer で必須)
contextstringいいえリクエストの任意のコンテキスト。レスポンスでそのまま返されます
networkenumはいネットワーク名mainnet | mordor | testnet | nile | sepolia | amoy | fuji
tokenIdstringいいえNFT トークン ID(prepare-nft-transfer で必須)
gasLimitstringいいえカスタム gas 上限の上書き値(prepare-transaction-from-address のみ。省略時は自動推定)
gasPricestringいいえwei 単位のカスタム gas 価格(prepare-transaction-from-address のみ。省略時は自動推定)
toAddressstringいいえ受取人アドレス(すべてのアクションで必須)
blockchainenumはいブロックチェーンプロトコルethereum | ethereum-classic | binance-smart-chain | tron | polygon | avalanche | arbitrum | base | optimism
fromAddressstringいいえ送信元アドレス(すべてのアクションで必須)
contractAddressstringいいえトークンコントラクトアドレス(prepare-fungible-token-transfer と prepare-nft-transfer で必須)

詳細

@cryptoapis-io/mcp-prepare-transactions

Crypto APIs の Prepare Transactions 製品向け MCP サーバーです。EVM、Tezos、Solana、Kaspa、XRP、UTXO、Tron の未署名トランザクションを作成します。

API バージョン: Crypto APIs バージョン 2024-12-12 と互換性があります

機能

  • EVM のネイティブコイン、ERC-20 代替可能トークン、ERC-721 NFT の送金トランザクションを作成します
  • ネイティブ Tezos(XTZ)、FA1.2、FA2 トークンの送金オペレーションを作成します
  • Solana でネイティブ SOL と SPL トークンの送金トランザクションを作成します
  • Kaspa で複数の送金先に対応したネイティブ KAS の送金を作成します
  • ネイティブ XRP の送金を作成します
  • 6 つの UTXO チェーン(Bitcoin、Bitcoin Cash、Litecoin、Dogecoin、Dash、Zcash)でネイティブコインの送金を作成します
  • Tron 専用の prepare-transactions エンドポイントを使って、ネイティブ TRX、TRC-20、NFT の送金を作成します
  • ローカル署名にそのまま使用できる未署名トランザクションデータを返します

前提条件

インストール

npm install @cryptoapis-io/mcp-prepare-transactions

または、すべての Crypto APIs MCP サーバーをインストールします:npm install @cryptoapis-io/mcp

使用方法

# Run with API key
npx @cryptoapis-io/mcp-prepare-transactions --api-key YOUR_API_KEY

# Or use environment variable
export CRYPTOAPIS_API_KEY=YOUR_API_KEY
npx @cryptoapis-io/mcp-prepare-transactions

# HTTP transport (listens on 127.0.0.1; see "Exposing the server beyond localhost")
npx @cryptoapis-io/mcp-prepare-transactions --transport http --port 3000 --api-key YOUR_API_KEY
Claude Desktop

Claude Desktop の設定ファイルに追加します(macOS の場合は ~/Library/Application Support/Claude/claude_desktop_config.json、Windows の場合は %APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "cryptoapis-prepare-transactions": {
      "command": "npx",
      "args": ["-y", "@cryptoapis-io/mcp-prepare-transactions"],
      "env": {
        "CRYPTOAPIS_API_KEY": "your_api_key_here"
      }
    }
  }
}
Cursor

.cursor/mcp.json(プロジェクト)または ~/.cursor/mcp.json(グローバル)に追加します:

{
  "mcpServers": {
    "cryptoapis-prepare-transactions": {
      "command": "npx",
      "args": ["-y", "@cryptoapis-io/mcp-prepare-transactions"],
      "env": {
        "CRYPTOAPIS_API_KEY": "your_api_key_here"
      }
    }
  }
}
MCP Inspector
npx @modelcontextprotocol/inspector npx @cryptoapis-io/mcp-prepare-transactions --api-key YOUR_API_KEY
n8n
  1. HTTP モードでサーバーを起動します:
    npx @cryptoapis-io/mcp-prepare-transactions --transport http --port 3000 --api-key YOUR_API_KEY
    
  2. n8n ワークフローに AI Agent ノードを追加します
  3. Tools で MCP Client Tool を追加し、URL に http://localhost:3000/mcp を設定します

Docker 上の n8n: コンテナー内の localhost はお使いのマシンを指しません。--host 0.0.0.0 と MCP_AUTH_TOKEN を設定してサーバーを起動し(localhost の外部にサーバーを公開するを参照)、URL に http://host.docker.internal:3000/mcp を指定して、MCP Client Tool の認証情報に Authorization: Bearer <token> ヘッダーを追加してください。

すべてのサーバーのデフォルトポートは 3000 です。複数のサーバーを実行する場合は、--port を使って異なるポートを割り当ててください。

利用可能なツール

prepare_transactions_evm

未署名の EVM トランザクションを作成します。

ActionDescription
prepare-transaction-from-addressアドレスからのネイティブコイン送金を作成します
prepare-fungible-token-transferERC-20 トークンの送金を作成します
prepare-nft-transferERC-721 NFT の送金を作成します
prepare_transactions_tezos

未署名の Tezos オペレーションを作成します(mainnet、shadownet)。

ActionDescription
native-coinsネイティブ XTZ の送金を作成します
fa1-2-tokensFA1.2 トークンの送金を作成します
fa2-tokensFA2 トークンの送金を作成します
prepare_transactions_solana

未署名の Solana トランザクションを作成します(mainnet、devnet)。

ActionDescription
native-coinsネイティブ SOL の送金を作成します
spl-tokensSPL トークンの送金を作成します
prepare_transactions_kaspa

未署名の Kaspa トランザクションを作成します(mainnet のみ)。

ActionDescription
native-coins1 つのトランザクションで複数の送金先に対応する、ネイティブ KAS の送金を作成します
prepare_transactions_xrp

未署名の XRP トランザクションを作成します(mainnet、testnet)。

ActionDescription
native-coinsネイティブ XRP の送金を作成します
prepare_transactions_utxo

未署名の UTXO トランザクションを作成します(Bitcoin、Bitcoin Cash、Litecoin、Dogecoin、Dash、Zcash。mainnet、testnet)。

ActionDescription
native-coins複数の送金先に対応するネイティブコインの送金を作成します。feePriority または exactFee が必要です
prepare_transactions_tron

Tron 専用のトランザクション準備エンドポイント(mainnet、nile)を使用して、署名なしの Tron トランザクションを準備します。

アクション説明
native-coinsネイティブ TRX の送金を準備します
trc20-tokensTRC-20 トークンの送金を準備します
non-fungible-tokensTRC-721/TRC-1155 NFT の送金を準備します

CLI 引数

引数説明デフォルト
--api-keyCrypto APIs API キーCRYPTOAPIS_API_KEY 環境変数
--transportトランスポートの種類:stdio または httpstdio
--hostHTTP ホスト(リモート接続を受け入れるには 0.0.0.0 を使用します。--api-key による認証トークンが必要です)127.0.0.1
--auth-token呼び出し元が送信する必要のあるベアラートークン(Authorization: Bearer <token>)。MCP_AUTH_TOKEN 環境変数の使用を推奨しますMCP_AUTH_TOKEN 環境変数
--allowed-hostsループバック以外にバインドする場合の、カンマ区切りの Host ヘッダー許可リスト—
--portHTTP ポート3000
--pathHTTP パス/mcp
--statelessステートレス HTTP モードを有効にしますfalse
HTTP API キーモード

HTTP トランスポートを使用する場合、サーバーは 2 種類の API キーモードに対応しています。

  • --api-key を指定する場合: すべてのリクエストでこのキーが使用されます。リクエストの x-api-key ヘッダーは無視されます。
  • --api-key を指定しない場合: 各リクエストに、有効な Crypto APIs キーを含む x-api-key ヘッダーが必要です。これにより、各ユーザーが自身のキーを提供する公開サーバーをホストできます。
# Per-request key mode (multi-tenant)
npx @cryptoapis-io/mcp-prepare-transactions --transport http --port 3000
# Clients send x-api-key header with each request
サーバーを localhost の外部に公開する

HTTP モードはデフォルトで 127.0.0.1 をリッスンするため、同じマシン上のプロセスのみが接続できます。 ほかのマシンやコンテナからの接続を受け入れるには、明示的にバインドし、ポートを保護してください。

# Startup-key mode: callers must present the token (the server refuses to start without one)
export MCP_AUTH_TOKEN=$(openssl rand -hex 32)
npx @cryptoapis-io/mcp-prepare-transactions --transport http --host 0.0.0.0 --port 3000 --api-key YOUR_API_KEY \
  --allowed-hosts mcp.internal.example
# Clients send: Authorization: Bearer $MCP_AUTH_TOKEN

# Per-request key mode: no startup key, every request must carry the caller's own x-api-key
npx @cryptoapis-io/mcp-prepare-transactions --transport http --host 0.0.0.0 --port 3000

--allowed-hosts は、ループバック以外にバインドする場合に Host ヘッダーを制限します(DNS リバインディング対策)。--auth-token よりも MCP_AUTH_TOKEN の使用を推奨します。コマンドライン引数はプロセス一覧から見えるためです。

Stdio トランスポートでは、起動時に必ず API キーが必要です。

重要:API キーが必要です

警告: 有効な API キーを指定しない場合、または誤った API キーを指定してリクエストを行うと、Crypto APIs エコシステムから IP アドレスが禁止される可能性があります。サーバーを起動する前に、有効な API キーが設定されていることを必ず確認してください。

リモート MCP サーバー

Crypto APIs は、https://ai.cryptoapis.io/mcp で、すべてのツールを HTTP Streamable トランスポート経由で利用できる公式リモート MCP サーバーを提供しています。x-api-key ヘッダーで API キーを渡してください。インストールは不要です。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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