mcpField
C
Chainlink Feeds MCP Server

Chainlink Feeds MCP Server

本地服务
github.com/kukapay金融数据766 周前更新

关于 Chainlink Feeds MCP Server

Chainlink Feeds MCP Server 为 AI Agent 提供多个已配置网络上的 Chainlink 链上价格源。它可查询最新价格并列出支持的网络和价格源;按轮次查询目前仅为占位响应。

主要功能

  1. 01按网络和交易对获取最新价格
  2. 02按轮次 ID 查询价格
  3. 03列出支持的网络和价格源
  4. 04列出指定网络的价格源
  5. 05配置价格源和 RPC 端点

适用场景

  1. 01查询代币交易对的最新链上价格
  2. 02查找某网络可用的价格源
  3. 03查询前查看支持的网络

MCP 相关

它通过五个 MCP 工具提供价格数据查询及网络和价格源列表。客户端可按网络和交易对获取最新价格;由于历史数据限制,轮次 ID 查询目前返回占位结果。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Chainlink Feeds MCP 服务

一个 MCP 服务,可实时访问 Chainlink 的去中心化链上价格馈送,针对与 AI Agent 和自主系统的无缝集成进行了优化

chainlink-feeds-mcp MCP 服务

许可证 Node.js 状态

功能

  • 查询最新价格:获取指定链(例如 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)

如需添加其他链和馈送,可在 feeds.json 中更新网络配置,并添加 Chainlink 价格馈送文档中的代理地址。

前提条件

  • Node.js:18.x 或更高版本。
  • npm:用于安装依赖项。
  • Infura API 密钥:从 MetaMask Developer Dashboard 获取密钥,并确保其可访问受支持的网络(例如 Ethereum、Base)。
  • 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 协议提供五种工具,可通过 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 价格吗?”

    输出:“Ethereum 上轮次 ID 为 123 的 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 许可。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。