
Pjm MCP server
online · 100% uptimeReal-time electricity market data from PJM Interconnection, the largest US grid operator (13…
not scanned yet
0 stars
Reviews
Write oneNobody has reviewed Pjm yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Pjm tools
Tool list not cached yet. `describe` through the gateway fetches it live.
How Pjm compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 77/100
- higher than 50% of 48,255 servers
- Uptime
- 100%
- of our recent checks; the typical remote server answers 100%
- Response time
- 237 ms
- faster than 57% of 30,031 servers
Release history: 4 versions in the registry since 2026-09-25, latest 2026-11-04, typically one every 6 days.
Install Pjm in Claude Code, Cursor or VS Code
claude mcp add --transport http pjm https://gateway.pipeworx.io/pjm/mcp
What the publisher says
From the Pjm repository's README, as published. We do not edit it. Read it on GitHub
@pipeworx/pjm
PJM Interconnection market data via Data Miner 2 — real-time LMPs, generation by fuel type and the seven-day load forecast for the largest US grid operator (13 states + DC, ~65 million people, Illinois to New Jersey).
Part of Pipeworx — an MCP gateway connecting AI agents to 1679+ live data sources.
Tools
or fetch ANY feed by exact name (dahrllmps, inst_load, …). The escape hatch for the hundreds of PJM feeds without a dedicated tool here.
- pjmfeeds(feed?, rowcount?, start_row?) — list the Data Miner 2 feed catalog,
— five-minute real-time LMP with congestion and loss components.
- pjmlmprealtime(pnodeid?, pnodename?, datetimebeginningept?, row_count?)
by transmission zone and RTO total.
- pjmloadforecast(forecastarea?, rowcount?) — seven-day hourly load forecast
and percentage of total by fuel type.
- pjmgenerationfuelmix(fueltype?, datetimebeginningept?, row_count?) — MW
Auth
BYO only today. Ocp-Apim-Subscription-Key header (Azure API Management). Platform fallback env var — not provisioned: PLATFORMPJMKEY.
A key is free but requires registering an account at and subscribing that account to the Data Miner 2 product. Those are two steps: a registered key that is not subscribed to the feed is refused identically to no key at all, which is why the pack's 401 message names the subscription explicitly rather than just saying "bad key".
Until the key lands, every tool refuses with a message containing requires an API key, and the pack is marked byoExpected: true in workers/gateway/src/pack-manifest.json so the vendor-key ratchet does not fail the deploy. Drop byoExpected the day PLATFORMPJMKEY is provisioned.
Data sources
{ "totalRows": N, "items": [...], "links": [...] }.
- — the browser UI over the same feeds.
- — the API. Documented envelope:
Traps
in this pack has been observed live. The pack normalizes the documented {totalRows, items, links} envelope and returns items as published, without renaming or reshaping individual fields. That is deliberate: a field mapping invented from documentation we could not exercise is a silent-wrong- answer waiting to happen, and returning upstream rows untouched is honest about what we actually know. Tighten this once a key exists and the real payload can be read.
- Response shapes here are UNVERIFIED. Holding no key, no PJM response body
answers 401 with an empty body and no WWW-Authenticate header, both with no key and with a syntactically valid but unregistered one. So 401 cannot distinguish "no key" from "wrong key" from "key not subscribed to this feed". The pack says so in the error rather than guessing at a cause.
- A 401 here tells you almost nothing. Verified 2026-09-17: api.pjm.com
representation. This pack always sets it.
- format=json is not the default — Data Miner 2 defaults to another
filter uses Data Miner's own "M/D/YYYY HH:MM to M/D/YYYY HH:MM" syntax, not ISO-8601.
- Times are Eastern Prevailing Time (EPT — shifts with DST), and the range
always means the date filter fell outside the feed's published range.
- A 200 with 0 rows is treated as an error, not an empty success: it almost
Quick Start
Add to your MCP client (Claude Desktop, Cursor, Windsurf, etc.):
{
"mcpServers": {
"pjm": {
"url": "https://gateway.pipeworx.io/pjm/mcp"
}
}
}What this endpoint actually serves
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Pjm: common questions
- Is Pjm MCP server safe?
- Mostly: it is graded B (77/100). Read the Pjm safety report
- How do I install Pjm?
- It runs remotely at gateway.pipeworx.io. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does Pjm need an API key?
- Yes. The registry entry asks for
PIPEWORX_API_KEY. - Is Pjm maintained?
- The last commit was 40 days ago (2026-09-25). The latest release is v0.2.1.
- Is Pjm up?
- 100% of our last 28 checks got an answer. We check remote servers about four times a day.
- How does Pjm compare with other MCP servers?
- safety score 77/100 (higher than 50% of 48,255 servers); uptime 100% (of our recent checks; the typical remote server answers 100%); response time 237 ms (faster than 57% of 30,031 servers). Full comparison.