@pipeworx/spp
Connect: https://gateway.pipeworx.io/spp/mcp · Install: one-click buttons
No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.
Tools: 4
SPP (Southwest Power Pool) real-time electricity data — generation mix, load and renewable forecast vs actual, five-minute LMPs, and the raw Marketplace file archive back to 2013, for the 14-state footprint from the Texas panhandle to North Dakota.
Tools
spp_generation_mix(limit?, detailed?)— MW per fuel per 5-minute interval (coal, gas, nuclear, wind, solar, hydro, diesel fuel oil, energy storage, waste heat, waste disposal, other) plus total load.detailed: truesplits each fuel into its Market and Self-scheduled halves over a rolling 365-day feed.spp_load_forecast(limit?, include_future?)— short- and mid-term load, wind and solar forecasts (STLF/MTLF, STWF/MTWF, STSF/MTSF) against actual load, wind and solar.spp_lmp_latest(location?, limit?)— the most recently published RTBM 5-minute interval, per settlement location (~1,600), with LMP split into MEC / MCC / MLC.spp_files(dataset, path?, download?, limit?)— browse or download the Marketplace file archive directly, for a specific historical interval or day.
Auth
Keyless. No registration.
Data sources
- https://portal.spp.org/chart-api/gen-mix/asFile — current-day generation mix CSV.
- https://portal.spp.org/chart-api/gen-mix-365/asFile — rolling 365-day, market vs self-scheduled.
- https://portal.spp.org/chart-api/load-forecast/asFile — load/wind/solar forecast vs actual CSV.
- <https://portal.spp.org/file-browser-api/?fsName=
&path= &type=folder> — JSON directory listing of the Marketplace archive. - <https://portal.spp.org/file-browser-api/download/
?path= > — the file.
Traps
marketplace.spp.org302-redirects toportal.spp.orgfor every API path. Callportal.spp.orgdirectly so a Worker fetch never depends on redirect handling.- The load-forecast CSV is published a week ahead and is newest-first, so the
first ~2,000 rows are future intervals with every value blank. A naive
rows[0]returns a row ofnulls as a clean success. Measured 2026-09-17: 2,017 forecast-only rows in front of 287 settled ones.spp_load_forecastsplits on “does this row have an Actual Load”, reportslatest_actualfrom the newest settled row, and exposesforecast_only_intervalsso the caller can see the split. This is the pack’s main reason for existing over a raw CSV fetch. - Two timezones in one dataset.
gen-mixtimestamps are GMT; the LMP archive FILENAMES (RTBM-LMP-SL-202609171905.csv) are Central. Mixing them shifts you five or six hours. Inside the LMP file,Intervalis Central andGMTIntervalEndis UTC. - Don’t compute the “current” LMP filename. SPP publishes each 5-minute
interval a few minutes late, so the filename for right now is usually a 404.
spp_lmp_latestlists the day’sBy_Intervalfolder and takes the newest file that exists, falling back to the previous day just after midnight CT. - The file-listing endpoint needs no token. SPP’s own UI sends an
X-SPP-UI-Tokenheader; the server does not require it (verified 2026-09-17), so this pack sends none rather than forge one. - Blank means unknown, not zero.
num()returnsnullfor an empty cell.
Tools
- spp_generation_mix — SPP (Southwest Power Pool — 14 US states from the Texas panhandle to North Dakota) real-time generation by fuel type at 5-minute resolution: coal, natural gas, nuclear, wind, solar, hydro, diesel fuel
- spp_load_forecast — SPP load, wind and solar forecast vs actual at 5-minute resolution: short-term and mid-term load forecast (STLF/MTLF), wind forecast (STWF/MTWF), solar forecast (STSF/MTSF) and the actual load, wind a
- spp_lmp_latest — SPP real-time balancing market (RTBM) locational marginal prices — the most recently published 5-minute interval, per settlement location, with the LMP split into its marginal energy (MEC), congestion
- spp_files — Browse the SPP Marketplace public file archive — the raw published market data behind every SPP report, back to 2013. Lists folders and files (name, path, size, modified) for a dataset, or downloads o
Tools
spp_files— Browse the SPP Marketplace public file archive — the raw published market data behind every SPP report, back to 2013. Lists folders and files (name, path, size, modified) for a dataset, or downloads ospp_generation_mix— SPP (Southwest Power Pool — 14 US states from the Texas panhandle to North Dakota) real-time generation by fuel type at 5-minute resolution: coal, natural gas, nuclear, wind, solar, hydro, diesel fuelspp_lmp_latest— SPP real-time balancing market (RTBM) locational marginal prices — the most recently published 5-minute interval, per settlement location, with the LMP split into its marginal energy (MEC), congestionspp_load_forecast— SPP load, wind and solar forecast vs actual at 5-minute resolution: short-term and mid-term load forecast (STLF/MTLF), wind forecast (STWF/MTWF), solar forecast (STSF/MTSF) and the actual load, wind a