Skip to main content
Glama

NRC — Nuclear Reactor Annual Historical Status

nrc.reactor.annual_data
Read-onlyIdempotent

Retrieve full-year historical power status data for US nuclear reactors from NRC annual archives. Data is available from 1999 through the current year. Optionally filter by reactor unit name to retrieve a single reactor's complete year record. Each record contains the date, unit name, and power percentage (0–100%). Supports capacity factor analysis, long-term outage pattern research, nuclear energy generation modeling, and historical grid impact studies. Returns up to 1000 rows per call (full annual files contain 17K–35K rows). No auth — US NRC public domain data (Atomic Energy Act), unlimited free.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
unitNoOptional reactor unit name filter (e.g. "Palo Verde 1"). When provided, returns only records for that reactor. Case-insensitive.
yearNoCalendar year for the historical archive (1999–current year). Defaults to the current year. Annual files contain daily snapshots for all ~95 US reactors.
limitNoMaximum number of rows to return (1–1000). Defaults to 200. The full annual file may contain 17K–35K rows.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent only when the call failed. Includes error code, message, request_id, and any provider-specific extras.
resultNoTool response payload. Shape varies per tool — consult the tool description and inputSchema. May be an object, array, string, or number depending on the upstream provider response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds valuable behavioral context beyond these: 'No auth — US NRC public domain data', 'Returns up to 1000 rows per call', and the 17K–35K row file size detail, which helps agents plan pagination.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences with a front-loaded purpose, followed by data range, record structure, use cases, row limits, and auth. Every sentence serves a purpose with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers data availability (1999–current year), optional filtering, record composition, row limits, auth status, and intended analytical applications. The output schema handles return-format specifics, so nothing an agent needs is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%; the schema already documents each parameter (unit, year, limit) with defaults and ranges. The description only restates the unit filter option ('Optionally filter by reactor unit name') without adding new meaning or syntax. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Retrieve full-year historical power status data for US nuclear reactors from NRC annual archives.' This clearly distinguishes the tool from siblings like nrc.reactor.current_status by emphasizing 'full-year' and 'annual archives'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lists concrete use cases ('capacity factor analysis, long-term outage pattern research, nuclear energy generation modeling, and historical grid impact studies') that imply when to use it. It does not explicitly contrast with nrc.reactor.current_status or nrc.reactor.history, but the annual-scope language provides clear context without exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.