A PJM power producer's desk can ask "what's our net position next month?" — and get a grounded answer, not a report ticket.
An independent power producer's traders, analysts, and compliance team each live in a different system. A conversational layer, built on MCP, lets them ask their systems questions in plain language and get answers grounded in live data — not a static export.
Challenge
An independent power producer running a generation fleet across PJM has the data it needs — it just can't ask questions of it. The net position lives in the position/risk system, nodal LMP and congestion live in PJM's portals, load forecasts and margin live in internal BI, and trade surveillance lives somewhere else again. Every question — "what's our net position in PJM for next month?", "what's driving congestion at our node today?", "which of yesterday's trades look off?" — means pulling a report, navigating a portal, or asking an analyst to write SQL. Answers arrive late and as static exports that are stale the moment they're made, and the cross-system questions that matter most ("today's generation shortfall and which positions it affects") have no home at all, because no single dashboard spans operations and trading.
Approach
We didn't bolt another chatbot onto one dashboard — that's the approach that fails. We built the connective layer instead: governed servers, on the Model Context Protocol standard, that expose specific, permissioned views of the producer's systems as structured tools an AI model can call. A trader, market analyst, or compliance officer asks in plain language; the model queries the live system and returns a grounded answer rather than a guess. We ran it in phases — scoring each system for feasibility first, designing the permissioning and audit model up front, then shipping one use case at a time, starting with lower-risk market-data Q&A well before anything touched position or compliance workflows.
Technology
MCP servers over the position/risk system, PJM market data, and trade surveillance data — each exposing governed views ("net position by delivery month", "day-ahead LMP and congestion by node") rather than raw database access. Natural-language queries respect the same access controls the BI tools already enforce, and every query and access path is logged for a regulated environment. The layer wires into the AI interface the team already uses, with accuracy and hallucination guardrails tested before anything went near a trading or compliance decision.
Outcome
Instead of a report ticket, a trader gets the net PJM position by asking for it — grounded in the system of record, not a snapshot from last night. Analysts query nodal LMP, congestion, and load forecast conversationally instead of hopping between the ISO portal and internal BI for each question. Compliance runs investigative questions over surveillance data without writing SQL, with every query and access path logged. And the cross-system briefing that no dashboard could produce — today's generation shortfall and the positions it affects — gets answered in one place, because the layer can reach both operational and trading systems in a single question.
We publish our case studies anonymized as a matter of policy. The engagement and every figure here are real — we describe the work, not the client’s name.