pjm_lmp_realtime
Pack: pjm · Endpoint: https://gateway.pipeworx.io/pjm/mcp
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/pjm_lmp_realtime for the schema, then POST the same URL with its arguments for the data.
PJM real-time five-minute locational marginal prices (LMP $/MWh) by pricing node, with the total price and its congestion and marginal-loss components. PJM is the largest US grid operator (13 states + DC, ~65M people). Use for “PJM power price right now”, “PJM Western Hub price”, “which PJM nodes are congested”. Requires a PJM API key.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
pnode_id | string | no | Filter to one PJM pricing-node id (e.g. 51288 for Western Hub). |
pnode_name | string | no | Filter to one pricing-node name (e.g. “WESTERN HUB”). |
datetime_beginning_ept | string | no | Eastern Prevailing Time range filter in Data Miner syntax, e.g. “9/17/2026 00:00 to 9/17/2026 23:59”. Omit for the most recent intervals. |
row_count | number | no | Rows to return (default 50, max 500). |
_apiKey | string | no | PJM Data Miner 2 subscription key. Free at ${SIGNUP}. |
Example call
Arguments
{
"pnode_name": "WESTERN HUB",
"row_count": 50
}
curl
curl -X POST https://gateway.pipeworx.io/pjm/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"pjm_lmp_realtime","arguments":{"pnode_name":"WESTERN HUB","row_count":50}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('pjm_lmp_realtime', {
"pnode_name": "WESTERN HUB",
"row_count": 50
});
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"pjm": {
"url": "https://gateway.pipeworx.io/pjm/mcp"
}
}
}
See Getting Started for client-specific install steps.