EIA MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@EIA MCP ServerWhat is the current electricity demand in the ERCOT power grid?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
EIA MCP Server
An MCP (Model Context Protocol) server for the U.S. Energy Information Administration (EIA) API, providing access to electricity and natural gas data.
Features
Electricity Data
Retail Sales - Sales to customers by state and sector, pricing, and customer counts
Operational Data - Monthly/annual generation, fuel consumption, and emissions
RTO Data - Hourly/daily operations by balancing authority (CISO, PJM, MISO, ERCOT, etc.)
State Profiles - State-level electricity profiles and infrastructure data
Generator Capacity - Inventory of operable generators in the U.S.
Facility Fuel - Individual power plant operational data
Natural Gas Data
Summary - Overview of natural gas survey data
Prices - Spot prices, futures, citygate, residential, commercial, industrial prices
Exploration & Reserves - Resource discovery and stockpile levels
Production - Output metrics and production volumes
Imports/Exports - Cross-border flows and pipeline movement data
Storage - Inventory levels, injections, and withdrawals
Consumption - End use data by sector
Related MCP server: SIGNALS Market Readiness MCP Server
Installation
cd eia-mcp
pip install -e .Configuration
Get an API key from EIA Open Data
Set the environment variable:
export EIA_API_KEY=your_api_key_here
Usage with Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"eia": {
"command": "python",
"args": ["-m", "eia_mcp.server"],
"cwd": "/Users/yanpan/eia-mcp",
"env": {
"EIA_API_KEY": "your_api_key_here"
}
}
}
}Or if installed as a package:
{
"mcpServers": {
"eia": {
"command": "eia-mcp",
"env": {
"EIA_API_KEY": "your_api_key_here"
}
}
}
}Available Tools
Tool | Description |
| Get electricity retail sales data by state and sector |
| Get power generation and fuel consumption data |
| Get real-time grid operations by balancing authority |
| Get state-level electricity profiles |
| Get generator inventory and capacity data |
| Get individual power plant data |
| Get natural gas summary data |
| Get natural gas price data |
| Get exploration and reserves data |
| Get production data |
| Get import/export and pipeline data |
| Get storage facility data |
| Get consumption data by sector |
| Explore available API routes and metadata |
Example Queries
Just ask Claude naturally:
"What were California's electricity retail sales in 2024?"
"Show me the current electricity generation in ERCOT"
"What are the natural gas storage levels this week?"
"How much electricity did Texas generate last month?"
"Compare natural gas prices across different regions"
"What's the electricity demand in PJM right now?"
"Show me natural gas import/export data for 2024"
API Reference
Base URL: https://api.eia.gov/v2/
For full API documentation, visit: https://www.eia.gov/opendata/documentation.php
Available Tools
14 toolseia_electricity_facility_fuelC
Get annual and monthly operational data for individual power plants by energy source and equipment type. Source: Form EIA-923
| Name | Required | Description | Default |
|---|---|---|---|
| state | No | State code | |
| plant_id | No | Specific plant ID | |
| fuel_type | No | Fuel type code | |
| frequency | No | Data frequency | |
| start | No | Start period | |
| end | No | End period | |
| data_columns | No | Data columns (e.g., 'generation', 'gross-generation', 'consumption-for-eg', 'total-consumption') | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves data (implying read-only), but does not mention any behavioral traits such as rate limits, authentication requirements, data freshness, or potential side effects. For a data retrieval tool with 8 parameters and no annotations, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, consisting of two sentences that directly state the tool's purpose and data source. There is no unnecessary information, though it could be slightly more structured to highlight key usage aspects given the complexity of the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (8 parameters, no output schema, no annotations), the description is minimally adequate but incomplete. It covers the basic purpose and source, but lacks details on output format, error handling, or practical usage scenarios, which are important for an agent to invoke the tool correctly without structured guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description adds minimal value beyond the schema by hinting at the data granularity ('annual and monthly') and source context, but does not provide additional semantics like parameter interactions, default behaviors, or examples of valid inputs for fields like 'state' or 'fuel_type'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get annual and monthly operational data for individual power plants by energy source and equipment type.' It specifies the verb ('Get'), resource ('operational data'), and scope ('individual power plants'), but does not explicitly differentiate it from sibling tools like 'eia_electricity_operational_data' or 'eia_electricity_generator_capacity', which might have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions the data source ('Form EIA-923'), but does not indicate specific use cases, prerequisites, or exclusions compared to sibling tools, leaving the agent to infer usage from the tool name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_electricity_generator_capacityC
Get inventory of operable generators in the U.S. including capacity, technology type, and status. Sources: Forms EIA-860, EIA-860M
| Name | Required | Description | Default |
|---|---|---|---|
| state | No | State code | |
| status | No | Generator status code | |
| technology | No | Technology type | |
| energy_source | No | Primary energy source code | |
| start | No | Start period | |
| end | No | End period | |
| data_columns | No | Data columns (e.g., 'nameplate-capacity-mw', 'net-summer-capacity-mw') | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes what data is retrieved but lacks critical behavioral details: it doesn't mention whether this is a read-only operation, potential rate limits, authentication requirements, pagination behavior (beyond the 'limit' parameter), or what the output format looks like. For a tool with 8 parameters and no output schema, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately concise with two sentences: the first states the purpose and key data, the second cites sources. It's front-loaded with the core functionality. However, the second sentence about sources adds limited value for tool selection, slightly reducing efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (8 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain the return values, behavioral constraints, or how parameters interact. For a data retrieval tool with multiple filtering options, more context is needed to help an agent use it effectively, especially without annotations or output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 parameters with basic descriptions. The description adds minimal value beyond the schema: it implies the tool returns data on 'capacity, technology type, and status', which loosely maps to some parameters like 'technology' and 'status', but doesn't provide additional context on parameter usage, dependencies, or examples. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get inventory of operable generators in the U.S. including capacity, technology type, and status.' It specifies the verb ('Get inventory'), resource ('operable generators in the U.S.'), and key data fields. However, it doesn't explicitly differentiate from sibling tools like 'eia_electricity_facility_fuel' or 'eia_electricity_operational_data', which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions data sources ('Forms EIA-860, EIA-860M'), but this doesn't help an agent choose between this tool and siblings like 'eia_electricity_state_profiles' or 'eia_electricity_operational_data'. There are no explicit when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_electricity_operational_dataB
Get monthly and annual electric power operational data including generation, fuel consumption, and emissions by state, sector, and energy source. Source: Form EIA-923
| Name | Required | Description | Default |
|---|---|---|---|
| state | No | State code (e.g., 'CA', 'TX') | |
| fuel_type | No | Fuel type code (e.g., 'NG' for natural gas, 'COL' for coal, 'NUC' for nuclear, 'SUN' for solar, 'WND' for wind) | |
| frequency | No | Data frequency | |
| start | No | Start date | |
| end | No | End date | |
| data_columns | No | Data columns to retrieve (e.g., 'generation', 'total-consumption') | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure but offers minimal information. It mentions the data source but does not cover critical aspects like rate limits, authentication needs, error handling, or response format, which are essential for a tool with 7 parameters and no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, efficiently stating the tool's purpose in a single sentence without unnecessary details. However, it could be slightly improved by including brief usage context to enhance clarity without sacrificing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (7 parameters, no output schema, and no annotations), the description is incomplete. It lacks information on behavioral traits, response structure, and usage guidelines, making it insufficient for an agent to fully understand how to invoke and interpret results from this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema fully documents all 7 parameters. The description adds no additional parameter semantics beyond what the schema provides, such as clarifying relationships between parameters or usage examples, meeting the baseline score for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('Get') and resources ('monthly and annual electric power operational data'), and distinguishes it from siblings by specifying the data source ('Form EIA-923') and content scope ('generation, fuel consumption, and emissions by state, sector, and energy source'), unlike sibling tools that focus on different aspects like facility fuel, capacity, or retail sales.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention sibling tools or specify contexts where this tool is preferred, such as for operational metrics versus capacity or sales data, leaving the agent without explicit usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_electricity_retail_salesC
Get electricity retail sales data including sales to customers by state and sector, customer counts, and pricing. Sources: Forms EIA-826, EIA-861, EIA-861M
| Name | Required | Description | Default |
|---|---|---|---|
| state | No | State code (e.g., 'CA', 'TX', 'NY'). Leave empty for all states. | |
| sector | No | Sector ID: RES (residential), COM (commercial), IND (industrial), TRA (transportation), OTH (other), ALL (all sectors) | |
| frequency | No | Data frequency | |
| start | No | Start date (YYYY-MM for monthly, YYYY for annual) | |
| end | No | End date (YYYY-MM for monthly, YYYY for annual) | |
| data_columns | No | Data columns to retrieve (e.g., 'revenue', 'sales', 'price', 'customers') | |
| limit | No | Maximum number of records to return (default: 100, max: 5000) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions data sources but doesn't disclose behavioral traits like rate limits, authentication requirements, data freshness/latency, error conditions, or response format. For a data retrieval tool with 7 parameters and no output schema, this leaves significant gaps in understanding how the tool behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately concise - two sentences that efficiently convey the data scope and sources. It's front-loaded with the core purpose. The only minor improvement would be explicitly stating this is a data retrieval/query tool rather than assuming 'Get' implies that.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't explain what the returned data looks like (structure, format), doesn't mention pagination (though limit parameter exists), and provides no context about data availability, quality, or typical use cases. For a complex data query tool, more guidance is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 7 parameters thoroughly with descriptions, enums, and examples. The description adds minimal value beyond what's in the schema - it mentions 'state and sector' and 'data columns' but doesn't provide additional context about parameter interactions or semantics. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves electricity retail sales data with specific components (sales by state/sector, customer counts, pricing) and cites EIA forms as sources. It distinguishes from siblings by focusing on retail sales rather than generation, capacity, or natural gas topics. However, it doesn't explicitly contrast with the most similar sibling (eia_electricity_state_profiles) which might also contain state-level data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With 13 sibling tools including other electricity and natural gas datasets, there's no indication of when retail sales data is appropriate versus operational data, state profiles, or other datasets. The agent must infer usage from the title/description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_electricity_rtoC
Get hourly and daily electric power operations by balancing authority (Regional Transmission Operator). Includes demand, generation, and interchange data. Source: Form EIA-930
| Name | Required | Description | Default |
|---|---|---|---|
| route | No | RTO data route | |
| respondent | No | Balancing authority code (e.g., 'CISO' for California ISO, 'PJM', 'MISO', 'ERCOT') | |
| fuel_type | No | Fuel type for generation data | |
| start | No | Start datetime (YYYY-MM-DDTHH) | |
| end | No | End datetime (YYYY-MM-DDTHH) | |
| data_columns | No | Data columns (e.g., 'value' for demand/generation values) | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions data types ('demand, generation, and interchange data') but lacks critical details like rate limits, authentication requirements, error handling, or response format. For a tool with 7 parameters and no output schema, this leaves significant gaps in understanding its operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured in two sentences, front-loading the core purpose and including a data source note. It avoids redundancy and waste, though it could be slightly more informative without sacrificing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (7 parameters, no annotations, no output schema), the description is inadequate. It doesn't explain return values, error conditions, or behavioral traits like pagination (implied by 'limit' parameter) or data freshness. For a data retrieval tool with multiple options, more context is needed to guide effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by implying the tool handles 'hourly and daily' data, which relates to the 'route' parameter's enum options. However, it doesn't provide additional syntax, examples, or constraints, meeting the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get hourly and daily electric power operations by balancing authority (Regional Transmission Operator).' It specifies the verb ('Get'), resource ('electric power operations'), and scope ('by balancing authority'), though it doesn't explicitly differentiate from sibling tools like 'eia_electricity_operational_data' which might overlap in domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description mentions the data source ('Form EIA-930') but doesn't specify use cases, prerequisites, or comparisons to sibling tools such as 'eia_electricity_operational_data' or 'eia_electricity_state_profiles', leaving the agent without contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_electricity_state_profilesB
Get state-level electricity profiles including generation mix, consumption patterns, and infrastructure data.
| Name | Required | Description | Default |
|---|---|---|---|
| route | No | Profile data route | |
| state | No | State code (e.g., 'CA', 'TX') | |
| start | No | Start year | |
| end | No | End year | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes a read operation ('Get'), implying it's likely non-destructive, but doesn't specify authentication needs, rate limits, error handling, or response format. For a tool with 5 parameters and no output schema, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no wasted words. It front-loads the core purpose and includes key details without redundancy, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (5 parameters, no output schema, no annotations), the description is minimally adequate. It covers the purpose but lacks usage guidelines, behavioral details, and output information. With no annotations to supplement, it should provide more context to be fully helpful for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description adds context by mentioning 'generation mix, consumption patterns, and infrastructure data,' which loosely relates to the 'route' parameter's enum values. However, it doesn't provide additional syntax, format details, or examples beyond what the schema offers, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get state-level electricity profiles including generation mix, consumption patterns, and infrastructure data.' It specifies the verb ('Get'), resource ('state-level electricity profiles'), and scope (state-level). However, it doesn't explicitly differentiate from sibling tools like 'eia_electricity_operational_data' or 'eia_electricity_retail_sales', which might also provide state-level data but for different aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools or specify use cases, prerequisites, or exclusions. The agent must infer usage from the description alone, which is insufficient for informed tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_explore_routesB
Explore available EIA API routes and their metadata. Use this to discover available data series, facets, and parameters for any endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | API path to explore (e.g., 'electricity', 'natural-gas', 'electricity/retail-sales', 'natural-gas/pri') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It describes the tool's function but lacks behavioral details: it doesn't specify whether this is a read-only operation (implied but not stated), what the response format looks like, whether there are rate limits, authentication requirements, or error conditions. For a tool with no annotation coverage, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise: two sentences that directly state the tool's purpose and usage without any wasted words. It's front-loaded with the core function and follows with practical application.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 1 parameter with 100% schema coverage but no annotations and no output schema, the description provides adequate basic context about what the tool does. However, for a metadata exploration tool that likely returns complex structured information about API endpoints, the lack of output schema means the description should ideally provide more guidance about response format. The description is complete enough for basic understanding but could be more comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents the single 'path' parameter. The description adds some context by mentioning examples ('electricity', 'natural-gas') and the purpose of discovering metadata, but doesn't provide additional semantic details beyond what's in the schema. With high schema coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Explore available EIA API routes and their metadata' with the specific action 'discover available data series, facets, and parameters for any endpoint.' It distinguishes itself from sibling tools which are all data retrieval tools for specific domains, while this is a metadata exploration tool. However, it doesn't explicitly contrast with siblings in the description text itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context ('Use this to discover available data series, facets, and parameters for any endpoint'), suggesting this is a preparatory tool for understanding what data is available before using specific retrieval tools. However, it doesn't explicitly state when to use this vs. the sibling data retrieval tools, nor does it provide exclusion criteria or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_natural_gas_consumptionC
Get natural gas consumption and end use data including demand patterns by sector (residential, commercial, industrial, electric power).
| Name | Required | Description | Default |
|---|---|---|---|
| route | No | Consumption data route (e.g., 'sum', 'num', 'pns', 'acct') | |
| area | No | Geographic area or state code | |
| sector | No | Sector (e.g., 'RES' for residential, 'COM' for commercial) | |
| frequency | No | Data frequency | |
| start | No | Start period | |
| end | No | End period | |
| data_columns | No | Data columns to retrieve | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves data ('Get'), implying a read-only operation, but doesn't address critical aspects like authentication requirements, rate limits, error handling, or data format (e.g., JSON, CSV). For a data retrieval tool with 8 parameters, this lack of behavioral context is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that efficiently conveys the core purpose without redundancy. It's front-loaded with the main action ('Get natural gas consumption...') and includes essential details ('end use data', 'demand patterns by sector'). Every word earns its place, making it highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (8 parameters, no annotations, no output schema), the description is incomplete. It lacks behavioral details (e.g., data format, error cases), usage guidelines relative to siblings, and output information. While the schema covers parameters well, the description doesn't compensate for the absence of annotations or output schema, leaving the agent with insufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 parameters thoroughly. The description adds minimal value beyond the schema by mentioning 'sector (residential, commercial, industrial, electric power)', which aligns with the 'sector' parameter's description. However, it doesn't provide additional context like parameter interactions or examples, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get natural gas consumption and end use data including demand patterns by sector'. It specifies the verb ('Get'), resource ('natural gas consumption and end use data'), and scope ('by sector'). However, it doesn't explicitly differentiate from sibling tools like 'eia_natural_gas_summary' or 'eia_natural_gas_storage', which likely provide different types of natural gas data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools, specify use cases (e.g., for sectoral analysis vs. summary statistics), or indicate prerequisites. The agent must infer usage from the purpose alone, which is insufficient for optimal tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_natural_gas_exploration_reservesC
Get natural gas exploration and reserves data including resource discovery and stockpile levels.
| Name | Required | Description | Default |
|---|---|---|---|
| route | No | Data route (e.g., 'wellend', 'drygase', 'crudeoilprov', 'welldrills') | |
| area | No | Geographic area | |
| frequency | No | Data frequency | |
| start | No | Start period | |
| end | No | End period | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states it 'gets' data (implying read-only), but doesn't clarify authentication requirements, rate limits, error handling, or response format. For a data retrieval tool with 6 parameters, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. It avoids redundancy and stays focused, though it could be slightly more specific about the data scope to improve clarity without sacrificing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what data is returned, how results are structured, or provide context about the EIA data source. The agent lacks sufficient information to use this tool effectively beyond basic parameter passing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no parameter-specific information beyond what's already in the schema (which has 100% coverage). It mentions 'data including resource discovery and stockpile levels,' which loosely relates to the 'route' parameter but doesn't explain how parameters interact or provide usage examples. Baseline 3 is appropriate given complete schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get natural gas exploration and reserves data including resource discovery and stockpile levels.' It specifies the verb ('Get') and resource ('natural gas exploration and reserves data'), but doesn't explicitly differentiate it from sibling tools like 'eia_natural_gas_production' or 'eia_natural_gas_storage' beyond mentioning 'exploration and reserves'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools, specify use cases, or indicate prerequisites. The agent must infer usage from the tool name and description alone, which is insufficient for clear decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_natural_gas_imports_exportsC
Get natural gas imports, exports, and pipeline movement data including cross-border flows and distribution infrastructure.
| Name | Required | Description | Default |
|---|---|---|---|
| route | No | Movement data route (e.g., 'impc', 'expc', 'poe1', 'state', 'ist') | |
| area | No | Geographic area | |
| country | No | Country for import/export data | |
| frequency | No | Data frequency | |
| start | No | Start period | |
| end | No | End period | |
| data_columns | No | Data columns to retrieve | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. The description only states what data is retrieved ('Get... data') without detailing behavioral traits such as whether this is a read-only operation, potential rate limits, authentication requirements, or error handling. It lacks information on data freshness, source reliability, or any side effects, which is a significant gap for a tool with 8 parameters and no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary details. It avoids redundancy and wastes no words, making it easy to parse. However, it could be slightly improved by structuring it to highlight key aspects like data scope or usage context, but overall it is appropriately concise for its purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of 8 parameters, no annotations, and no output schema, the description is incomplete. It adequately states what data is retrieved but fails to provide necessary context such as behavioral traits, usage scenarios, or what the output might look like. For a data retrieval tool with multiple filtering options, more guidance on how parameters interact and what to expect in return would enhance completeness, making it insufficient for full agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not add any meaning beyond what the input schema provides. The schema has 100% description coverage, with each parameter clearly documented (e.g., 'route' as 'Movement data route', 'frequency' with enum values). The description mentions 'cross-border flows and distribution infrastructure', which loosely relates to parameters like 'route' and 'area', but it doesn't explain parameter interactions or provide additional context, so it meets the baseline of 3 given the high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get natural gas imports, exports, and pipeline movement data including cross-border flows and distribution infrastructure.' It specifies the verb ('Get') and the resource ('natural gas imports, exports, and pipeline movement data'), making it easy to understand what data is retrieved. However, it does not explicitly differentiate from sibling tools like 'eia_natural_gas_consumption' or 'eia_natural_gas_storage', which might handle related but different data types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any specific contexts, prerequisites, or exclusions, nor does it refer to sibling tools for comparison. For example, it doesn't clarify if this is for historical data, real-time updates, or how it differs from other natural gas tools in the server, leaving the agent to infer usage based on the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_natural_gas_pricesC
Get natural gas price data including spot prices, futures, citygate prices, residential, commercial, and industrial prices.
| Name | Required | Description | Default |
|---|---|---|---|
| route | No | Price data route (e.g., 'sum' for summary prices) | |
| area | No | Geographic area or state code | |
| product | No | Product type | |
| frequency | No | Data frequency | |
| start | No | Start period | |
| end | No | End period | |
| data_columns | No | Data columns to retrieve (e.g., 'value') | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states what data is retrieved without mentioning rate limits, authentication needs, data freshness, pagination behavior (though 'limit' parameter hints at it), error conditions, or response format. For a data retrieval tool with 8 parameters, this leaves significant gaps in understanding how the tool behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. Every word contributes to understanding what data is available. However, it could be slightly more structured by separating price types with commas or bullets for better readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (8 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain how parameters interact (e.g., route vs. product), what the default behavior is, what the response looks like, or provide examples of valid combinations. For a tool with this many options and no structured output documentation, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 parameters with descriptions. The description adds minimal value beyond the schema by listing price types (spot, futures, etc.) which might relate to the 'product' parameter, but doesn't explain parameter relationships, dependencies, or provide examples beyond what's in the schema. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'Get natural gas price data' with specific examples of price types (spot prices, futures, citygate prices, etc.). It distinguishes from sibling tools by focusing on price data rather than consumption, production, or other natural gas metrics. However, it doesn't specify the exact verb beyond 'Get' or mention the data source (EIA).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like eia_natural_gas_summary or eia_explore_routes, nor does it specify use cases, prerequisites, or exclusions. The agent must infer usage from the tool name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_natural_gas_productionC
Get natural gas production data including output metrics and production volumes.
| Name | Required | Description | Default |
|---|---|---|---|
| route | No | Production data route (e.g., 'sum', 'lngwprp', 'oilwprr', 'whv') | |
| area | No | Geographic area or state code | |
| product | No | Product type | |
| frequency | No | Data frequency | |
| start | No | Start period | |
| end | No | End period | |
| data_columns | No | Data columns to retrieve | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states what data is retrieved without mentioning operational aspects like rate limits, authentication needs, data freshness, or error handling. For a data retrieval tool with 8 parameters, this leaves significant gaps in understanding how the tool behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. It avoids unnecessary words and gets straight to the point. However, it could be slightly more structured by explicitly mentioning key parameters or use cases to enhance clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of 8 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain the return format, data structure, or how parameters interact (e.g., the relationship between 'route' and other fields). For a tool with rich parameter options and no structured output documentation, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, meaning all parameters are documented in the input schema. The description adds minimal value beyond the schema by mentioning 'output metrics and production volumes,' which loosely relates to parameters like 'data_columns' but doesn't provide specific details. With high schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get natural gas production data including output metrics and production volumes.' It specifies the verb 'Get' and resource 'natural gas production data' with additional details about data types. However, it doesn't explicitly differentiate from sibling tools like 'eia_natural_gas_consumption' or 'eia_natural_gas_summary,' which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools or contextual factors like data scope or use cases. Without any usage instructions, the agent must infer from the tool name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_natural_gas_storageC
Get natural gas storage data including inventory levels, injections, and withdrawals from storage facilities.
| Name | Required | Description | Default |
|---|---|---|---|
| route | No | Storage data route (e.g., 'sum', 'base', 'wkly', 'lngwstor', 'stscd') | |
| area | No | Geographic area or region | |
| frequency | No | Data frequency | |
| start | No | Start period | |
| end | No | End period | |
| data_columns | No | Data columns to retrieve | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves data ('Get'), implying a read-only operation, but doesn't disclose other behavioral traits such as rate limits, authentication needs, data freshness, or error handling. For a tool with 7 parameters and no annotations, this leaves significant gaps in understanding how it behaves beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary details. It's appropriately sized for the tool's complexity, with every word contributing to understanding what data is retrieved. There's no redundancy or wasted phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (7 parameters, no annotations, no output schema), the description is incomplete. It lacks information on behavioral traits, usage context, and output format, which are crucial for effective tool invocation. Without annotations or an output schema, the description should compensate more by explaining return values or constraints, but it doesn't.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, meaning all parameters are documented in the input schema. The description adds minimal value beyond the schema by mentioning 'inventory levels, injections, and withdrawals', which loosely relates to 'data_columns' but doesn't provide specific semantics or usage examples. With high schema coverage, the baseline is 3, as the description doesn't significantly enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get natural gas storage data including inventory levels, injections, and withdrawals from storage facilities.' It specifies the verb ('Get') and resource ('natural gas storage data') with concrete examples of what data is included. However, it doesn't explicitly differentiate from sibling tools like 'eia_natural_gas_summary' or 'eia_natural_gas_consumption', which might also involve storage-related data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools or contexts where other tools might be more appropriate, such as using 'eia_natural_gas_summary' for aggregated data or 'eia_natural_gas_consumption' for usage metrics. There's no explicit when/when-not or alternative usage information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eia_natural_gas_summaryC
Get natural gas summary data providing an overview of the natural gas survey information.
| Name | Required | Description | Default |
|---|---|---|---|
| series | No | Data series to retrieve | |
| frequency | No | Data frequency | |
| start | No | Start period | |
| end | No | End period | |
| limit | No | Maximum number of records (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states it 'gets' data (implying a read operation) but doesn't mention authentication requirements, rate limits, error handling, or what format the data returns. For a tool with 5 parameters and no output schema, this leaves significant behavioral gaps unaddressed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that gets straight to the point without unnecessary words. It's appropriately sized for a data retrieval tool, though it could be slightly more front-loaded with key distinctions from siblings. Every word serves a purpose, earning a high score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (5 parameters, no output schema, no annotations), the description is minimally adequate. It clarifies the tool's purpose but lacks usage guidelines, behavioral details, and output information. With schema coverage at 100%, the description doesn't need to explain parameters, but it should do more to guide the agent on when and how to use this tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with all parameters well-documented in the schema itself. The description adds no parameter-specific information beyond implying it retrieves 'summary data' and 'overview' information, which might hint at the 'series' parameter's purpose but doesn't provide additional syntax or format details. This meets the baseline of 3 when schema coverage is high.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'natural gas summary data', specifying it provides 'an overview of the natural gas survey information'. This distinguishes it from siblings like eia_natural_gas_consumption or eia_natural_gas_prices by focusing on summary/overview data rather than specific aspects. However, it doesn't explicitly contrast with all siblings, keeping it at 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any specific use cases, prerequisites, or comparisons to sibling tools like eia_natural_gas_consumption or eia_natural_gas_production. The agent must infer usage from the tool name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
14 tool updates
v0.1.0- First observed
eia_electricity_facility_fuel - First observed
eia_electricity_generator_capacity - First observed
eia_electricity_operational_data - First observed
eia_electricity_retail_sales - First observed
eia_electricity_rto - First observed
eia_electricity_state_profiles - First observed
eia_explore_routes - First observed
eia_natural_gas_consumption - First observed
eia_natural_gas_exploration_reserves - First observed
eia_natural_gas_imports_exports - First observed
eia_natural_gas_prices - First observed
eia_natural_gas_production - First observed
eia_natural_gas_storage - First observed
eia_natural_gas_summary
TDQS
Scored across 14 tools
Each tool has a clearly distinct purpose targeting specific EIA data categories like electricity facility fuel, generator capacity, retail sales, natural gas consumption, production, prices, etc. The descriptions specify unique data sources and metrics, with no overlapping functionality that would cause agent confusion.
All tools follow a consistent eia_domain_data_pattern naming convention (e.g., eia_electricity_facility_fuel, eia_natural_gas_prices). The structure is uniform with domain (electricity/natural_gas) and specific data type clearly separated by underscores, making the set highly predictable and readable.
With 14 tools, this is well-scoped for an EIA data server covering electricity and natural gas domains. Each tool earns its place by addressing distinct data facets (e.g., capacity, sales, prices, storage), avoiding bloat while providing comprehensive access to key EIA datasets.
The tool surface offers complete coverage for electricity and natural gas data, including operational data, capacity, sales, RTO operations, state profiles, consumption, production, prices, storage, imports/exports, reserves, and an exploration tool. No obvious gaps exist; agents can perform full data retrieval workflows across these domains.
Maintenance
Related MCP Connectors
Energy data from EIA: electricity, fuel prices, and renewables
Live US power market prices, load, generation, weather and permits for AI agents.
Live U.S. electric-grid data, forecasts, alerts, and analysis across major grid regions.
Browse and query the EIA API v2 — electricity, petroleum, natural gas, coal, forecasts via MCP.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceProvides access to comprehensive U.S. and international energy data from the EIA API, including electricity, natural gas, petroleum, coal, renewables, CO2 emissions, and energy forecasts.MIT
- FlicenseNot gradedqualityDmaintenanceExposes energy market signals and readiness indices by integrating data from sources like Yahoo Finance, ENTSOG, and AGSI+. It enables users to query gas flows, storage levels, power prices, and weather data via natural language.-
- AlicenseNot gradedqualityDmaintenanceProvides AI agents with structured access to the U.S. EIA Open Data API for energy data including power plants, operations, fuel prices, projections, and state CO2 emissions.MIT
- AlicenseNot gradedqualityCmaintenanceEnables real-time access to US electricity generation, fuel mix, and demand data through natural language queries.3 npmMIT