MCP server for the U.S. Energy Information Administration (EIA) API
Server has 6 tools with explicit Zod schemas and descriptions. Naming follows verb_noun pattern (get_, find_, compare_, discover_). Descriptions are present (avg ~180 chars) and explain WHAT the tool does. However, parameter descriptions lack actionable constraints (e.g., no guidance on valid state codes, RTO respondent codes are mentioned but not enumerated in schema). Output schemas are not documented, LLMs cannot predict response structure. Error handling is minimal; no recovery guidance. Security: API key is injected via context.extraArgs, which is better than parameters, but no audit logging visible. Composition is reasonable, tools are single-purpose and chainable (e.g., discoverElectricityRouteMetadata feeds into getRTODemandSnapshot). Baseline: avg tool description 194 chars (this server ~180), avg params 4 (this server 2-4). Missing: output schema docs, per-parameter validation rules, error classification.
Compares retail electricity prices across multiple US states over a specified time period, identifying price trends and regional variations.
Inspects EIA electricity API routes to discover available metadata, facets, and valid options for filtering data queries. Useful for understanding what data is available and how to construct advanced queries.
Analyzes multiple states to identify regions with high potential for energy storage deployment based on grid capacity, renewable integration needs, demand patterns, and economic factors. Expected input (JSON): { "regions": ["TX", "CA", "FL"], "includeHourlyAnalysis": false } - regions: array of two-letter state codes (min 1) - includeHourlyAnalysis: optional boolean (default false). When true, tool includes RTO hourly demand where available (TX, CA, NY, IL, PA).
Retrieves recent hourly demand, net generation, or demand forecast data from a Regional Transmission Organization (RTO) for grid stability analysis and demand pattern insights.
Retrieves and analyzes the current electricity generation capacity metrics for a specified US state, including total summer and winter capacity in megawatts.
Output schemas not documented. LLMs cannot predict response structure, forcing them to guess at field names and types for downstream tool calls.
Parameter descriptions lack actionable constraints. E.g., 'region' accepts two-letter state codes but no guidance on which states are valid. 'respondent' lists examples (CISO, ERCO, etc.) in description but not as enum in schema.
No error handling or recovery guidance. Tools throw UserError on missing API key but do not guide LLM on next steps (e.g., 'Check configuration' or 'Retry with valid key').
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | <=2025-11-25 | v2 |
Retrieves a comprehensive energy profile for a specified US state, including generation by fuel type, retail sales, and average retail prices.
Parameter 'respondent' in getRTODemandSnapshot is optional with no default, but description says 'server attempts to map from region'. Undocumented fallback behavior invites misuse.
No pagination support visible. Tools like compareRetailElectricityPrices may return large result sets without limit/offset parameters or documented result caps.