mcp-contracts について
mcp-contracts は Crypto APIs Contracts 向けの MCP サーバーで、EVM または Solana のトークンコントラクト情報を必要とするアプリやワークフローを対象としています。コントラクトアドレスからトークン情報を取得し、対応範囲はブロックチェーンによって異なります。
主な機能
- 01アドレスによるトークン情報の取得
- 02EVM コントラクトの照会
- 03Solana コントラクトの照会
- 04名称や規格などの情報を返却
活用シーン
- 01Ethereum トークンコントラクトの確認
- 02BSC トークン情報の照会
- 03Solana トークンコントラクトデータの取得
MCP 対応
MCP クライアントに EVM と Solana のコントラクトデータツールを公開し、Crypto APIs 経由でコントラクトアドレスからトークン情報を取得します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| action | enum | はい | 実行する操作get-token-details-by-contract-address |
| context | string | いいえ | リクエストの任意のコンテキスト。レスポンスでそのまま返されます |
| network | enum | はい | ネットワーク名mainnet | mordor | testnet | sepolia |
| blockchain | enum | はい | ブロックチェーンプロトコルethereum | ethereum-classic | binance-smart-chain |
| contractAddress | string | はい | コントラクトアドレス(トークンコントラクト) |
詳細
@cryptoapis-io/mcp-contracts
Crypto APIs のContracts製品向けMCP サーバーです。EVMとSolanaのコントラクトアドレスからトークンの詳細を取得します。
APIバージョン: Crypto APIsのバージョン 2024-12-12 に対応しています。
機能
- EVMコントラクト: コントラクトアドレスからトークンの詳細を取得します(ブロックチェーン、ネットワーク、contractAddress)
- Solanaコントラクト: コントラクトアドレスからトークンの詳細を取得します(ネットワーク、contractAddress)
前提条件
インストール
npm install @cryptoapis-io/mcp-contracts
または、すべてのCrypto APIs MCPサーバーをインストールします:npm install @cryptoapis-io/mcp
使用方法
# Run with API key
npx @cryptoapis-io/mcp-contracts --api-key YOUR_API_KEY
# Or use environment variable
export CRYPTOAPIS_API_KEY=YOUR_API_KEY
npx @cryptoapis-io/mcp-contracts
# HTTP transport (listens on 127.0.0.1; see "Exposing the server beyond localhost")
npx @cryptoapis-io/mcp-contracts --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-contracts": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-contracts"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}
Cursor
.cursor/mcp.json(プロジェクト)または~/.cursor/mcp.json(グローバル)に追加します:
{
"mcpServers": {
"cryptoapis-contracts": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-contracts"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}
MCP Inspector
npx @modelcontextprotocol/inspector npx @cryptoapis-io/mcp-contracts --api-key YOUR_API_KEY
n8n
- HTTPモードでサーバーを起動します:
npx @cryptoapis-io/mcp-contracts --transport http --port 3000 --api-key YOUR_API_KEY - n8nのワークフローにAI Agentノードを追加します
- 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を使って異なるポートを割り当ててください。
利用可能なツール
evm_contract_data
コントラクトアドレスからトークンの詳細を取得します。
| アクション | 説明 |
|---|---|
get-token-details-by-contract-address | コントラクトアドレスからトークンの詳細(name、symbol、standard、decimals、totalSupply)を取得します |
対応ブロックチェーン: ethereum、ethereum-classic、binance-smart-chain(mainnet、mordor、testnet、sepolia)
現在、コントラクトトークンの詳細を取得できるのはEthereum、Ethereum Classic、BSCのみです。
solana_contract_data
コントラクトアドレスからSolanaトークンの詳細を取得します。
| アクション | 説明 |
|---|---|
get-token-details-by-contract-address | コントラクトアドレスからトークンの詳細を取得します |
対応ネットワーク: mainnet、devnet
CLI引数
| 引数 | 説明 | 既定値 |
|---|---|---|
--api-key | Crypto APIsのAPIキー | CRYPTOAPIS_API_KEY環境変数 |
--transport | トランスポートの種類:stdioまたはhttp | stdio |
--host | HTTPホスト(リモート接続を受け付けるには0.0.0.0を使用します。--api-keyによる認証トークンが必要です) | 127.0.0.1 |
--auth-token | 呼び出し元が送信する必要のあるBearerトークン(Authorization: Bearer <token>)。MCP_AUTH_TOKEN環境変数の使用を推奨します | MCP_AUTH_TOKEN環境変数 |
--allowed-hosts | ループバック以外のバインドで許可するHostヘッダーをカンマ区切りで指定します | — |
--port | HTTPポート | 3000 |
--path | HTTPパス | /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-contracts --transport http --port 3000
# Clients send x-api-key header with each request
ローカルホスト以外にサーバーを公開する
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-contracts --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-contracts --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
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。