mcpField
C
Chainlink Feeds MCP Server

Chainlink Feeds MCP Server

ローカル
github.com/kukapay金融データ766 週間前に更新

Chainlink Feeds MCP Server について

Chainlink Feeds MCP Server は、設定済みネットワークの Chainlink オンチェーン価格フィードを AI エージェントに提供します。最新価格の取得や対応ネットワーク・フィードの一覧表示ができ、ラウンド指定の履歴取得は現在プレースホルダーです。

主な機能

  1. 01ネットワークとペアを指定して最新価格を取得
  2. 02ラウンド ID による価格照会
  3. 03対応ネットワークとフィードの一覧表示
  4. 04指定ネットワークのフィード一覧表示
  5. 05フィードと RPC エンドポイントの設定

活用シーン

  1. 01トークンペアの最新オンチェーン価格を確認する
  2. 02ネットワークで利用可能なフィードを探す
  3. 03照会前に対応ネットワークを確認する

MCP 対応

価格データの取得と対応ネットワーク・フィードの一覧表示を行う 5 つの MCP ツールを公開します。クライアントはネットワークとペアを指定して最新価格を取得できますが、ラウンド ID による結果は履歴データの制約からプレースホルダーです。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

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

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

詳細

Chainlink Feeds MCP サーバー

Chainlink の分散型オンチェーン価格フィードにリアルタイムでアクセスできる MCP サーバーです。AI エージェントや自律システムにシームレスに統合できるよう最適化されています。

chainlink-feeds-mcp MCP server

License Node.js Status

特長

  • 最新価格の照会:指定したチェーン(例:ethereum)上の価格フィードペア(例:FIL/ETH)の最新価格を取得します。価格、小数桁数、ラウンド ID、タイムスタンプが含まれます。
  • ラウンド ID による価格の照会:特定のラウンド ID の価格データを取得します(オンチェーンの過去データに制限があるため、現在はプレースホルダーです)。
  • 対応チェーンの一覧表示:対応するブロックチェーンネットワークのカンマ区切りリストを取得します(例:ethereum,base)。
  • 全フィードの一覧表示:すべてのチェーンとその価格フィード名の Markdown 形式のリストを取得します(例:- ethereum: FIL/ETH,FDUSD/USD)。
  • チェーン別フィードの一覧表示:特定のチェーンの価格フィード名のカンマ区切りリストを取得します(例:ethereum の場合は FIL/ETH,FDUSD/USD)。
  • フィードの設定:feeds.json ファイルで価格フィードと RPC エンドポイントを定義できます。複数のチェーンとフィードカテゴリーに対応しています。

対応チェーンとフィード

feeds.json で定義されているとおり、このサーバーは 9 つのブロックチェーンネットワークに対応し、合計 329 件の価格フィードを備えています。

  • Ethereum:107 件のフィード(例:FIL/ETH、BTC/USD、USDC/USD)
  • BNB Chain (bsc):80 件のフィード(例:DOT/USD、CAKE/USD、BUSD/BNB)
  • Base:52 件のフィード(例:AXL/USD、USDC/USD、WIF/USD)
  • Starknet:9 件のフィード(例:ETH/USD、BTC/USD、WSTETH/ETH)
  • Linea:15 件のフィード(例:ETH/USD、FOXY/USD、MATIC/USD)
  • Mantle:6 件のフィード(例:MNT/USD、USDT/USD、BTC/USD)
  • Scroll:22 件のフィード(例:SCR/USD、STETH/USD、WBTC/BTC)
  • zkSync:16 件のフィード(例:ZK/USD、PEPE/USD、TRUMP/USD)
  • Celo:22 件のフィード(例:CELO/USD、CUSD/USD、NGN/USD)

Chainlink の Price Feeds ドキュメントを参照し、新しいネットワーク設定とプロキシアドレスを feeds.json に追加することで、対応チェーンとフィードを追加できます。

前提条件

  • Node.js:バージョン 18.x 以降。
  • npm:依存関係のインストールに使用します。
  • Infura API Key:対応ネットワーク(例:Ethereum、Base)にアクセスできるキーを MetaMask Developer Dashboard から取得してください。
  • MCP Inspector(任意):サーバーをローカルでテストするために使用します。
  • Claude Desktop(任意):Anthropic の Claude インターフェースと統合するために使用します。

インストール

  1. リポジトリをクローンします:

    git clone https://github.com/kukapay/chainlink-feeds-mcp.git
    cd chainlink-feeds-mcp
    
  2. 依存関係をインストールします:

    npm install
    

    このプロジェクトでは以下が必要です。

    • @modelcontextprotocol/sdk:MCP サーバーの機能に使用します。
    • ethers:ブロックチェーンとの連携にバージョン 6.x を使用します。
    • zod:入力の検証に使用します。
    • dotenv:環境変数の管理に使用します。
  3. MCP クライアントを設定します: Claude Desktop などの MCP クライアントでこのサーバーを使用するには、設定ファイル(または同等のファイル)に以下を追加します。

    {
      "mcpServers": {
        "chainlink-feeds-mcp": {
          "command": "node",
          "args": ["path/to/chainlink-feeds-mcp/index.js"],
          "env": { "INFURA_API_KEY": "your_api_key_here" }
        }
      }
    }   
    

使用方法

このサーバーは MCP プロトコルを通じて 5 つのツールを公開しており、Claude Desktop(自然言語での問い合わせ)または MCP Inspector(JSON 入力)から利用できます。以下では、自然言語形式(Claude Desktop 経由)と JSON 形式の両方で、各ツールの例を紹介します。

ツール:getLatestPrice
  • 説明:指定したチェーン上の指定ペアの最新価格を取得し、次のような JSON オブジェクトを返します。

    {
      "chain": "ethereum",
      "pair": "FIL/ETH",
      "price": 0.01234,
      "decimals": 18,
      "roundId": "123456",
      "timestamp": "2025-04-17T12:00:00.000Z",
      "proxyAddress": "0x0606Be69451B1C9861Ac6b3626b99093b713E801",
      "feedCategory": "medium"
    }
    
  • パラメーター:

    • pair (string):価格フィードのペア。例:FIL/ETH。
    • chain (string):ブロックチェーンネットワーク。例:ethereum。
  • 自然言語の例(Claude Desktop):

    入力:「Ethereum 上の最新の FIL/ETH 価格は?」

    出力:「Ethereum 上の最新の FIL/ETH 価格は 0.01234 です。小数点以下の桁数は 18、ラウンド ID は 123456 で、2025-04-17 12:00:00 UTC に更新されました。」

ツール:queryPriceByRound
  • 説明:指定したチェーン上の指定ペアとラウンド ID の価格を照会し、次のような JSON オブジェクトを返します。

    {
      "chain": "ethereum",
      "pair": "FDUSD/USD",
      "price": 1.0001,
      "decimals": 8,
      "roundId": "123",
      "timestamp": "2025-04-17T12:00:00.000Z",
      "proxyAddress": "0xfAA9147190c2C2cc5B8387B4f49016bDB3380572",
      "feedCategory": "medium"
    }
    
  • パラメーター:

    • roundId (string):価格データのラウンド ID。
    • pair (string):価格フィードのペア。例:FDUSD/USD。
    • chain (string):ブロックチェーンネットワーク。例:ethereum。
  • 自然言語の例(Claude Desktop):

    入力:「Ethereum 上のラウンド ID 123 の FDUSD/USD 価格を取得できますか?」

    出力:「ラウンド ID 123 の Ethereum 上の FDUSD/USD 価格は 1.0001 です。小数点以下の桁数は 8 で、2025-04-17 12:00:00 UTC に更新されました。注:過去のデータに制限があるため、これはプレースホルダーの応答です。」

ツール:listSupportedChains
  • 説明:サポートされているすべてのブロックチェーンネットワークを、カンマ区切りのリストで返します。

  • パラメーター:なし。

  • 自然言語の例(Claude Desktop):

    入力:「このサーバーがサポートしているブロックチェーンネットワークは?」

    出力:「このサーバーは次のネットワークをサポートしています:ethereum、bsc、base、starknet、linea、mantle、scroll、zksync、celo。」

ツール:listSupportedFeeds
  • 説明:サポートされているすべてのチェーンとその価格フィード名を、Markdown リストで返します。

  • パラメーター:なし。

  • 自然言語の例(Claude Desktop):

    入力:「サーバーがサポートしている価格フィードをすべて一覧表示できますか?」

    出力:「チェーンごとのサポート対象価格フィードは次のとおりです:

    • Ethereum:FIL/ETH、FDUSD/USD、UNI/ETH、...
    • BNB Chain:DOT/USD、CAKE/USD、BUSD/BNB、...
    • Base:AXL/USD、USDC/USD、WIF/USD、...
    • Starknet:ETH/USD、BTC/USD、WSTETH/ETH、...
    • Linea:ETH/USD、FOXY/USD、MATIC/USD、...
    • Mantle:MNT/USD、USDT/USD、BTC/USD、...
    • Scroll:SCR/USD、STETH/USD、WBTC/BTC、...
    • zkSync:ZK/USD、PEPE/USD、TRUMP/USD、...
    • Celo:CELO/USD、CUSD/USD、NGN/USD、...」
ツール:listSupportedFeedsByChain
  • 説明:指定したブロックチェーンネットワークの価格フィード名を、カンマ区切りのリストで返します。

  • パラメーター:

    • chain (string):ブロックチェーンネットワーク。例:base。
  • 自然言語の例(Claude Desktop):

    入力:「Base チェーンではどの価格フィードを利用できますか?」

    出力:「Base チェーンでは次の価格フィードを利用できます:AXL/USD、USDC/USD、WIF/USD、CBETH/ETH、...」

ライセンス

このプロジェクトはMIT Licenseの下でライセンスされています。

コメント

MCP は初めてですか?

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

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