
Oracle Feeds Mcp
io.github.rileybuilds由 GitHub 帳號 rileybuilds 發布v0.1.0更新於 Oct 27, 2026
On-chain price oracles: Chainlink (5 chains) + Pyth, staleness-flagged, no forced RPC key.
概覽
唯讀的 MCP 伺服器,讓助理取得 Chainlink 與 Pyth 的鏈上預言機價格資料,並附上時間戳與過期標記。
- 可以做什麼
- 依鏈與交易對查詢 Chainlink 最新價格,並回傳過期標記
- 依輪次 ID 查詢 Chainlink 指定歷史輪次價格
- 列出精選的 Chainlink 餵價清單與支援的 EVM 鏈
- 依符號或原始餵價 ID 取得 Pyth 最新價格,以及指定 Unix 時間點的歷史價格
- 在 Pyth 即時餵價目錄中搜尋符號
- 適用情境
- 適合助理需要直接從鏈上預言機取得加密貨幣與穩定幣的即時或歷史價格,或需要判斷某個報價是否已過期再決定是否採用時。較適合分析與監控用途,而非交易執行。
- 執行需求
- 以本機 stdio 程序執行,需要 Node.js(安裝、建置後讓用戶端指向建置產物入口)。不需 API 金鑰或環境變數:Chainlink 讀取使用免費公開 RPC 端點,Pyth 讀取使用其公開 Hermes REST API,因此需要網路存取。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Oracle Feeds Mcp,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
oracle-feeds-mcp
An MCP server for on-chain price oracle data, covering two independent providers — Chainlink and Pyth Network — instead of one.
Why this exists
The only prior MCP server in this space, kukapay/chainlink-feeds-mcp, is Chainlink-only, hard-requires an Infura API key, has a queryPriceByRound tool that's a placeholder (it silently calls latestRoundData() again regardless of the round you asked for), and ships with no tests. This project covers the same ground plus more, and fixes those specific gaps:
This is a data-access tool: it returns oracle-reported prices as-is, with a timestamp and an age-based staleness flag. It does not attempt to verify, reconcile, or arbitrate between providers — if you need a "which source is more trustworthy" judgment, that's a different, harder problem this project deliberately does not take on.
Downstream use note: oracle price data is commonly consumed by autonomous on-chain trading or rebalancing agents. This server is read-only and moves no funds itself, but if you wire its output into an agent that executes trades, you are responsible for whatever risk controls that agent needs — this tool has no opinion on trade sizing, slippage, or execution safety.
Tools
getChainlinkPrice({ chain, pair })— latest Chainlink price, with staleness flag.getChainlinkRoundPrice({ chain, pair, roundId })— a specific historical Chainlink round.listChainlinkFeeds()— every chain + pair in the curated Chainlink registry.listSupportedChains()— just the chain list.getPythPrice({ symbol })— latest Pyth price, by symbol (SOL/USD) or raw feed ID.getPythHistoricalPrice({ symbol, unixTimestamp })— Pyth price as of a given time.searchPythFeeds({ query })— search Pyth's live catalog (hundreds of feeds, not hardcoded).
Every price result includes updatedAt, ageSeconds, and stale (age beyond a 1-hour default threshold).
Coverage
Chainlink feeds are a curated registry (not an exhaustive mirror) across 5 EVM chains — Ethereum, Base, Arbitrum, Polygon, Optimism — with major pairs (BTC, ETH, USDC, USDT, DAI, LINK, SOL, and a few chain-native assets) on each. See src/feeds/chainlink.ts; it's a plain data file, easy to extend with more chains or pairs.
Pyth coverage is effectively everything in Pyth's live catalog — searchPythFeeds and getPythPrice query Hermes directly rather than vendoring a static list, so new Pyth feeds show up automatically.
Install & run
Runs as a standard stdio MCP server — point any MCP client at node dist/index.js.
No API keys or environment variables are required. Chainlink reads use free public RPC endpoints (*.publicnode.com); Pyth reads use its public Hermes REST API.
Development
Disclosure
This repository is built and maintained by an AI agent (rileybuilds), operating with human oversight. See the account bio.
License
MIT
來源:README.md,提交 002a858
工具
0版本歷史
1- v0.1.0最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分