API access
Your AI client reaches EIA through one ParcelOps MCP endpoint, so there is no separate key to hold for it and no per-source client to write. Reaching it takes your own credentials (API key).
Where it came from
Freshness and coverage
What this source cannot tell you
- ⚠ Where it stops geographically, because the covered area is not declared. An empty answer will not tell you whether the place is out of range or the record is simply missing.
- ⚠ Which years it spans, because the covered period is not declared.
- ⚠ How current a field is, because the refresh schedule is not declared.
- ⚠ Anything U.S. Energy Information Administration API v2 does not publish. ParcelOps returns this source as it stands and never fills a blank field from a different one.
- ⚠ Coverage and frequency depend on the selected dataset.
- ⚠ JSON responses are capped at 5,000 rows; use offset and length for paging.
Methods (5)
A method is one call your agent can make against this source.
getElectricityData
readGet Electricity Data
What you must providedatasetRecords returnedenergy-seriesHow to get more resultsoffset (offsetField: offset, limitField: length)Input schema
{ "type": "object", "properties": { "dataset": { "type": "string", "maxLength": 160 }, "data": { "type": "array", "maxItems": 50, "items": { "type": "string", "maxLength": 120 } }, "facets": { "type": "object", "maxProperties": 20, "additionalProperties": true }, "frequency": { "type": "string", "enum": [ "monthly", "quarterly", "annual" ] }, "start": { "type": "string", "maxLength": 20 }, "end": { "type": "string", "maxLength": 20 }, "length": { "type": "integer", "minimum": 1, "maximum": 5000 }, "offset": { "type": "integer", "minimum": 0, "maximum": 100000 } }, "required": [ "dataset" ], "additionalProperties": false }searchGenerators
readSearch Generators
Records returnedelectric-generatorHow to get more resultsoffset (offsetField: offset, limitField: length)Input schema
{ "type": "object", "properties": { "state": { "type": "string", "pattern": "^[A-Za-z]{2}$" }, "fuelType": { "oneOf": [ { "type": "string", "maxLength": 20 }, { "type": "array", "maxItems": 20, "items": { "type": "string", "maxLength": 20 } } ] }, "primeMover": { "oneOf": [ { "type": "string", "maxLength": 20 }, { "type": "array", "maxItems": 20, "items": { "type": "string", "maxLength": 20 } } ] }, "balancingAuthority": { "oneOf": [ { "type": "string", "maxLength": 20 }, { "type": "array", "maxItems": 20, "items": { "type": "string", "maxLength": 20 } } ] }, "status": { "type": "string", "maxLength": 80 }, "sector": { "type": "string", "maxLength": 80 }, "minCapacityMw": { "type": "number", "minimum": 0 }, "start": { "type": "string", "maxLength": 20 }, "end": { "type": "string", "maxLength": 20 }, "length": { "type": "integer", "minimum": 1, "maximum": 5000 }, "offset": { "type": "integer", "minimum": 0, "maximum": 100000 } }, "required": [], "additionalProperties": false }getPlantGeneration
readGet Plant Generation
What you must provideplantIdstartendRecords returnedplant-generationHow to get more resultsoffset (offsetField: offset, limitField: length)Input schema
{ "type": "object", "properties": { "plantId": { "oneOf": [ { "type": "string", "maxLength": 30 }, { "type": "integer", "minimum": 0 } ] }, "start": { "type": "string", "maxLength": 20 }, "end": { "type": "string", "maxLength": 20 }, "fuelType": { "oneOf": [ { "type": "string", "maxLength": 20 }, { "type": "array", "maxItems": 20, "items": { "type": "string", "maxLength": 20 } } ] }, "primeMover": { "oneOf": [ { "type": "string", "maxLength": 20 }, { "type": "array", "maxItems": 20, "items": { "type": "string", "maxLength": 20 } } ] }, "frequency": { "type": "string", "enum": [ "monthly", "quarterly", "annual" ] }, "length": { "type": "integer", "minimum": 1, "maximum": 5000 }, "offset": { "type": "integer", "minimum": 0, "maximum": 100000 } }, "required": [ "plantId", "start", "end" ], "additionalProperties": false }getRetirementSchedule
readGet Retirement Schedule
Records returnedgenerator-retirementHow to get more resultsoffset (offsetField: offset, limitField: length)Input schema
{ "type": "object", "properties": { "state": { "type": "string", "pattern": "^[A-Za-z]{2}$" }, "fuelType": { "oneOf": [ { "type": "string", "maxLength": 20 }, { "type": "array", "maxItems": 20, "items": { "type": "string", "maxLength": 20 } } ] }, "year": { "type": "integer", "minimum": 1990, "maximum": 2200 }, "start": { "type": "string", "maxLength": 20 }, "end": { "type": "string", "maxLength": 20 }, "length": { "type": "integer", "minimum": 1, "maximum": 5000 }, "offset": { "type": "integer", "minimum": 0, "maximum": 100000 } }, "required": [], "additionalProperties": false }getFuelMix
readGet EIA electricity generation by fuel for one state or balancing authority and time period.
What you must providetimeRecords returnedfuel-mixHow to get more resultsnoneInput schema
{ "type": "object", "properties": { "state": { "type": "string", "pattern": "^[A-Za-z]{2}$" }, "balancingAuthority": { "oneOf": [ { "type": "string", "maxLength": 20 }, { "type": "array", "maxItems": 20, "items": { "type": "string", "maxLength": 20 } } ] }, "time": { "type": "string", "maxLength": 20 }, "frequency": { "type": "string", "enum": [ "monthly", "quarterly", "annual" ] }, "length": { "type": "integer", "minimum": 1, "maximum": 5000 } }, "required": [ "time" ], "additionalProperties": false }
Where this source is used
- Land research
Parcel records, ground conditions, and what reaches the property line, for raw and rural land.
- Data center siting
Power, water, transport, airspace, and hazard screening for a site before anyone signs anything.
- Which utility serves this property?
- Who runs the grid at this site?
