GridPulse: U.S. Energy Data

io.github.noah-silver由 GitHub 帳號 noah-silver 發布v1.0.1更新於 Oct 24, 2026

U.S. grid mix, retail electricity prices and Henry Hub gas prices (EIA), paid per call via x402.

已驗證STDIO僅桌面金融資料與分析

概覽

AI 產生的概覽

一個本機 MCP 伺服器,讓助理取得美國能源市場資料——電網發電結構、零售電價與 Henry Hub 天然氣價格——按次以 USDC 付費。

可以做什麼
查詢美國各電網區域最新逐小時發電結構,含燃料組成與再生能源占比。依州與部門查詢零售電價,含年增率與 12 個月歷史。取得 Henry Hub 天然氣現貨價格及 30 天統計與歷史。每次工具呼叫都從使用者自己的錢包結算一筆小額費用。
適用情境
當助理需要最新的美國電力產業或天然氣資料——電網組成、各州電價或 Henry Hub 價格——且使用者願意按次支付幾美分 USDC 而不想註冊 API 金鑰時適用。
執行需求
以本機程序(stdio)執行,可透過 MCP 安裝包或 npx 啟動,需要 Node.js。需要一個在 Base 或 Algorand 上持有少量 USDC 的錢包,透過 EVM_PRIVATE_KEY 或 ALGORAND_MNEMONIC 提供,並需能連線至託管端點。買方無需註冊或 API 金鑰。
安裝前請注意
伺服器要求提供錢包私鑰或 25 字助記詞,可控制真實資金;README 建議使用專用的小額消費錢包,切勿使用主錢包。每次工具呼叫都會花費 USDC,費用隨使用累積。查詢會傳送至第三方託管端點。請將這些密鑰視為高度敏感資訊。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 GridPulse: U.S. Energy Data,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

⚡ GridPulse

Pay-per-call U.S. energy market data for AI agents. Agents pay per call in USDC on Algorand or Base using the x402 protocol. No signup and no API keys for buyers.

EndpointPriceReturns
GET /v1/grid-mix?region=ERCO$0.02Latest hourly generation mix for a grid region (MWh by fuel, renewable and carbon-free share)
GET /v1/retail-price?state=CT&sector=RES$0.01Retail electricity price by state and sector, year-over-year change, 12-month history
GET /v1/henry-hub$0.01Henry Hub natural gas spot price, 30-day stats and history
GET /v1/seller-check?url=…$0.01x402 Seller Check: 0–100 reliability score for any x402 seller (uptime probes, settlement history, age, buyer diversity)
GET /v1/sellers/search?q=weather&maxPrice=0.05$0.02Find reliable x402 sellers for a task, ranked by Seller Check score
GET /v1/algorand/network-health$0.008Algorand block time, TPS, online stake share, health (Algorand USDC only)
GET /v1/algorand/account?address=…$0.01Spendable ALGO, can it pay fees, can it receive USDC, staking and rekey status (Algorand USDC only)
GET /v1/algorand/asset?id=31566704$0.015ASA supply, Pera verification tier, clawback/freeze risk flags (Algorand USDC only)
GET /v1/algorand/tx?id=…$0.01Plain-English transaction explainer with decoded note (Algorand USDC only)
GET /v1/crypto/market-pulse$0.015ALGO/BTC/ETH/SOL/USDC prices cross-checked on Coinbase + Kraken (Algorand USDC only)

Live on Algorand MainNet: https://noahs-mac-mini.tail571e99.ts.net

Free: / (landing page), /llms.txt (docs for agents), /health. Data source: U.S. Energy Information Administration (public domain).

Use it from your agent

Any x402 client works: call the endpoint, get 402 Payment Required, pay, retry. The @x402/fetch wrapper does all of this automatically.

Pay with USDC on Base (npm i @x402/fetch @x402/evm viem):

ts
import { x402Client, wrapFetchWithPayment } from "@x402/fetch";import { ExactEvmScheme } from "@x402/evm/exact/client";import { toClientEvmSigner } from "@x402/evm";import { createPublicClient, http } from "viem";import { base } from "viem/chains";import { privateKeyToAccount } from "viem/accounts";
const account = privateKeyToAccount(process.env.EVM_PRIVATE_KEY as `0x${string}`);const signer = toClientEvmSigner(account, createPublicClient({ chain: base, transport: http() }));const client = new x402Client().register("eip155:8453", new ExactEvmScheme(signer));const fetchWithPay = wrapFetchWithPayment(fetch, client);
const res = await fetchWithPay("https://noahs-mac-mini.tail571e99.ts.net/v1/grid-mix?region=CISO");console.log(await res.json());

Pay with USDC on Algorand: see src/pay.ts (uses @x402/avm).

MCP server (Claude Desktop, Claude Code, Cursor, …)

One-click (Claude Desktop): download gridpulse-mcp.mcpb, open it, and optionally enter a small spending wallet. Also listed in the official MCP Registry as io.github.noah-silver/gridpulse.

Or configure it manually:

Add GridPulse as tools (grid_mix, retail_electricity_price, henry_hub_gas_price). Each tool call pays from your own wallet via x402. Use a small, dedicated spending wallet, never your main one.

json
{  "mcpServers": {    "gridpulse": {      "command": "npx",      "args": ["-y", "github:noah-silver/gridpulse"],      "env": { "EVM_PRIVATE_KEY": "0x… (Base wallet holding a little USDC)" }    }  }}

Use ALGORAND_MNEMONIC instead of (or as well as) EVM_PRIVATE_KEY to pay with USDC on Algorand.


Setup guide (Mac mini)

Run each command in Terminal on the Mac mini, one at a time.

1. Install Node.js

bash
brew install node

If brew isn't found, install Homebrew first from https://brew.sh.

2. Get the code and install

Copy this gridpulse folder onto the Mac mini (AirDrop works), then:

bash
cd ~/gridpulsenpm installcp .env.template .envopen -e .env

3. Fill in .env

  • PAY_TO_ADDRESS: create a new account in Pera for receiving payments. Fund it with about 1 ALGO and opt it in to USDC (in Pera: Add Asset, then search USDC, asset ID 31566704). Paste its address here.
  • EIA_API_KEY: free, instant, at https://www.eia.gov/opendata/register.php
  • Leave NETWORK=testnet for now.

4. Run it

bash
npm start

Open http://localhost:4021 to see the landing page. http://localhost:4021/v1/henry-hub should return 402 Payment Required, which means the paywall is working. Press Ctrl+C to stop.

5. Give it a public HTTPS address

Pick one:

Option A: Tailscale Funnel (free, easiest). You get a permanent URL like https://mac-mini.tail1234.ts.net.

bash
brew install tailscale

Sign in, then run:

bash
tailscale funnel --bg 4021

Option B: Cloudflare Tunnel with your own domain (about $10/yr, looks more professional). Buy a domain such as gridpulse.xyz in Cloudflare, then:

bash
brew install cloudflaredcloudflared tunnel logincloudflared tunnel create gridpulsecloudflared tunnel route dns gridpulse api.YOURDOMAIN.comcloudflared tunnel run --url http://localhost:4021 gridpulse

Put the resulting URL in .env as PUBLIC_URL.

6. Switch to MainNet and keep it running 24/7

In .env, set NETWORK=mainnet. Then:

bash
npm install -g pm2pm2 start npm --name gridpulse -- startpm2 savepm2 startup

(pm2 startup prints one more command to copy and run.) In System Settings → Energy, turn on "Prevent automatic sleeping" and "Start up automatically after a power failure."

7. Make the first real payment (required by the contest)

Create another new Pera account as the "buyer." Put about $1 of USDC and 0.3 ALGO in it. Add its 25-word phrase to .env as BUYER_MNEMONIC. Never use the phrase of your main wallet.

bash
npm run pay -- "/v1/grid-mix?region=ISNE"npm run pay -- "/v1/retail-price?state=CT"npm run pay -- /v1/henry-hub

Each settled payment lists that endpoint in the Bazaar and on the leaderboard.

8. Submit (by September 30)

  1. Push this folder to a public GitHub repo. .env is git-ignored, so your secrets stay local.
  2. Add the repo to Electric Capital open-dev-data.
  3. Fill in the submission form.

Technical notes

  • @x402/* packages are pinned to 2.17.0, and network IDs are hardcoded in the legacy format that the hosted GoPlausible facilitator currently expects (x402-foundation/x402#3528). Don't upgrade until the facilitator is updated.
  • The facilitator pays Algorand network fees. Buyers need only USDC.
  • EIA responses are cached for 10 minutes.
  • Invalid inputs return 400 and upstream failures return 502. Neither response is settled, so buyers aren't charged.

來源:README.md,提交 49285bf

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v1.0.1最新Sep 27, 2026
  2. v1.0.0Sep 27, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。