mcpField
N
nftdata-mcp

nftdata-mcp

ローカル
github.com/Nomad07その他2今日更新

nftdata-mcp について

NFT Data API を通じて OpenSea コレクションの市場データを提供する MCP サーバーです。コレクション統計を必要とする MCP クライアント向けで、リクエストごとの Base 上の x402 支払いを自動処理します。

主な機能

  1. 01OpenSea のスラッグでコレクション市場データを取得
  2. 02価格、販売数、取引量、コレクション数を返却
  3. 03Base 上の x402 支払いを自動処理
  4. 04スラッグごとに成功結果を 5 分間キャッシュ

活用シーン

  1. 01コレクションのフロア価格と最近の取引量の確認
  2. 02コレクションの販売数と所有者数の確認

MCP 対応

MCP サーバーは `get_collection_data` という単一のツールを MCP クライアントに公開します。NFT Data API のコレクションデータを取得し、Base 上の x402 支払いフローを処理します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"nomad07-nftdata": {
"command": "npx",
"args": [
"-y",
"nftdata-mcp"
],
"env": {
"EVM_PRIVATE_KEY": "<EVM_PRIVATE_KEY>",
"NFTDATA_MAX_REQUESTS": "<NFTDATA_MAX_REQUESTS>"
}
}
}
}
起動コマンドnpx -y nftdata-mcp
設定が必要な環境変数
EVM_PRIVATE_KEYシークレットPrivate key of a dedicated wallet holding a small amount of USDC on Base. Pays $0.002 per request via x402.
NFTDATA_MAX_REQUESTSMaximum signed payments per session (integer 1-1000, default 100).

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

パッケージ
npmnftdata-mcp1.0.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

nftdata-mcp

NFT Data API を AI クライアント(Claude Desktop、Cursor など)に単一のツールとして公開する MCP サーバーです。x402 の支払いフローを自動的に処理します。

ツール

get_collection_data

OpenSea コレクションの市場データを1回の呼び出しで返します。

パラメーター型説明
collectionstringopensea.io/collection/<slug> の OpenSea コレクションスラッグ(例:azuki)

返されるフィールド:name、slug、contracts、floor_price、floor_price_currency、one_day_sales、one_day_volume、seven_day_sales、seven_day_volume、thirty_day_sales、thirty_day_volume、total_sales、total_volume、num_owners、total_supply、created_date。取引量と価格の通貨は、対応する *_currency フィールド(ETH、USDC、HYPE など)で示されます。

各呼び出しの料金は $0.002 です(x402 を介して Base 上の USDC で支払います)。

要件

  • Node.js 20+
  • Base 上の USDC を少額入金したウォレットの秘密鍵

少額の残高のみを入れた専用ウォレットを使用してください。メインウォレットは絶対に使用しないでください。

クイックスタート(npx)

claude_desktop_config.json に追加します。

{
  "mcpServers": {
    "nftdata": {
      "command": "npx",
      "args": ["-y", "nftdata-mcp"],
      "env": {
        "EVM_PRIVATE_KEY": "0x..."
      }
    }
  }
}

Claude Desktop を再起動し、たとえば「azuki のフロア価格と7日間の取引量は?」と尋ねます。

ソースから実行

npm install

現在のシェルセッションでのみキーを設定してから、起動します。

# macOS / Linux
export EVM_PRIVATE_KEY=0x...
npm start
# Windows PowerShell
$env:EVM_PRIVATE_KEY = "0x..."
npm start
:: Windows cmd
set EVM_PRIVATE_KEY=0x...
npm start

サーバーは標準入力上で MCP クライアントを待機するため、手動で実行しても何も出力されません。MCP クライアントから起動することを想定しています。

ローカルのチェックアウトを Claude Desktop で使用するには、args を ["tsx", "/absolute/path/to/nftdata-mcp/server.ts"] に設定し、"command": "npx" を指定します。

ビルド

npm run build   # compiles server.ts and lib.ts to dist/
npm test        # offline unit tests, no network and no payments

設定

変数必須デフォルト説明
EVM_PRIVATE_KEYはい–呼び出しの支払いに使用するウォレットの秘密鍵(0x + 64桁の16進数)
NFTDATA_MAX_REQUESTSいいえ100セッションごとの署名済み支払いの最大数。整数の1~1000を指定します。それ以外の値では、エラーが発生して起動が停止します
NFTDATA_TIMEOUT_MSいいえ15000リクエストのタイムアウト(ミリ秒、1000~60000)
NFTDATA_URLいいえhttps://www.nftdata.app/api/get-collection-data公式の NFT Data エンドポイント(www.nftdata.app または nftdata.app)のみを受け付けます。それ以外を指定すると、起動が停止します

動作

  • {"collection": "<slug>"} を本文として POST /api/get-collection-data を送信します。
  • スラッグの前後の空白を取り除いて小文字に変換した後、^[a-z0-9][a-z0-9_-]*$(最大100文字)に一致する必要があります。一致しない場合、リクエストは送信されません。
  • x402 クライアントに登録されるのは Base メインネット(eip155:8453)のみです。署名の前に、すべての支払いチャレンジについて、スキームが exact であること、ネットワークが Base メインネットであること、トークンが Base 上の USDC であること、金額が2000最小単位($0.002)ちょうどであること、受取人が 0x344143199642e87320785823c20c2df107d17534 であることを確認します。それ以外は、署名せずに拒否します。
  • 署名済みの支払いは、後続のリクエストが失敗またはタイムアウトした場合も含めて、すべて NFTDATA_MAX_REQUESTS の上限に算入されます。
  • 自動再試行はありません。ツールの1回の呼び出しにつき、支払いの試行は最大1回です。
  • 成功したレスポンスをスラッグごとに5分間キャッシュします。同一の呼び出しが同時に行われた場合は、進行中のリクエストを共有します。
  • 400(スラッグが無効)、404(コレクションが見つからない)、429(レート制限。Retry-After を含む)、タイムアウト、その他の失敗について、一般的なエラーを返します。サーバーおよび支払いの詳細は MCP クライアントに渡されません。

制限事項

  • Base 上の x402 のみがサポートされています。Solana と MPP の決済方法は、このラッパーでは実装されていません。
  • 受取人のアドレスは lib.ts にハードコードされています。NFT Data の支払先アドレスが変更された場合は、OFFICIAL_PAY_TO を更新して新しいバージョンをリリースしてください。
  • 決済フック(server.ts)は、インストール済みの @x402/* SDK に依存しており、オフラインテストの対象外です。
  • x402 クライアントライブラリは頻繁に変更されます。インポートに失敗する場合は、最新の x402 ドキュメントを確認してください。

API リファレンス

コメント

MCP は初めてですか?

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

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