Skip to main content
Glama
omari91

grid-screen-mcp

by omari91

run_tier2_ac_study

Read-onlyIdempotent

Runs isolated unbalanced 3-phase OpenDSS AC power flow or exact N-0/N-1 contingency studies for LV/MV/TX grid connection screening, supporting snapshot and time-series cases with enforced timeouts.

Instructions

Run isolated child-process unbalanced 3-phase OpenDSS AC power flow (LV) or exact 2-bus N-0/N-1 AC contingency solve (MV/TX).

Study scope: study_type='snapshot' evaluates selected worst-case seasonal peak states (17 LV / 8 MV-TX states); study_type='time_series' evaluates the chronological 30-min diurnal trajectory + seasonal peaks. Does NOT run a synchronous 17,520/35,040-interval full-year telemetry simulation. Enforces a hard subprocess timeout. By default, include_trajectory=False prunes the raw trajectory array to protect LLM context tokens and returns trajectory_resource_uri (grid://verdicts/{fingerprint}/trajectory) for on-demand inspection.

Input Schema

NameRequiredDescriptionDefault
asset_typeNorooftop_pv
network_idYes
study_typeNosnapshot
bess_power_kwNo
export_cap_kwNo
inverter_modeNoas4777_volt_var_watt
connection_nodeNo
include_trajectoryNo
solver_timeout_secNo
proposed_capacity_kwYes
operating_load_factorNo
feeder_background_scaleNo

Output Schema

NameRequiredDescriptionDefault
executedYes
timed_outNo
study_typeNosnapshot
study_scopeNosnapshot (17 critical seasonal peak states; excludes full 17,520-interval annual telemetry)
execution_msYes
worst_seasonYes
solver_engineYes
min_voltage_puYes
peak_voltage_puYes
solver_failuresYes
voltage_profileNo
worst_timestampYes
intervals_solvedYes
violations_countYes
thermal_compliantYes
as4777_q_saturatedNo
max_line_loading_pctYes
bess_cliff_delta_v_puNo
as4777_curtailment_pctNo
trajectory_resource_uriNoOff-context MCP Resource URI (`grid://verdicts/{fingerprint}/trajectory`) referencing the full time-series/snapshot trajectory when omitted to save LLM tokens.
transformer_loading_pctYes
statutory_voltage_compliantYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior5/5

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

Beyond the annotations (readOnly/idempotent/non-destructive), the description discloses genuinely non-obvious behaviour: the solve runs in an isolated child process with a hard subprocess timeout, and by default the raw trajectory array is pruned to protect LLM context tokens with a `trajectory_resource_uri` returned for on-demand retrieval. It also bounds expectations by stating what the tool does not iterate over. This is exactly the operational context annotations cannot convey.

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

Conciseness4/5

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

Front-loads the core capability in the first sentence, then layers scope, exclusions and trajectory behaviour in descending order of importance. Every sentence carries information. Slightly dense with parenthetical state counts and backticked identifiers, but no filler sentences.

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

Completeness3/5

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

An output schema exists, so return values need not be explained, and the description does cover scope, exclusions and the trajectory URI pattern. However, for a 12-parameter simulation tool with zero schema coverage it leaves too much unexplained about how parameter values map to the two solver regimes (e.g. which network_ids are LV vs MV/TX, what connection_node expects, what feeder_background_scale=5 means). Adequate to invoke, risky to invoke correctly on the first try.

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

Parameters2/5

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

With 12 parameters at 0% schema description coverage, the description carries the full explanatory burden and only partially delivers: it explains study_type's two values and include_trajectory's pruning behaviour. It says nothing about network_id (10 opaque enum codes with no LV vs MV/TX mapping), proposed_capacity_kw, bess_power_kw, export_cap_kw, inverter_mode, connection_node, solver_timeout_sec, operating_load_factor, or feeder_background_scale (default 5). Roughly 10 of 12 parameters remain semantically opaque.

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

Purpose4/5

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

States a specific verb and resource with real technical precision: 'Run isolated child-process unbalanced 3-phase OpenDSS AC power flow (LV) or exact 2-bus N-0/N-1 AC contingency solve (MV/TX)'. An agent knows exactly what computational work happens and that the model differs by voltage regime. It stops short of naming the obvious sibling (run_tier1_screen) or saying how this relates to it, so differentiation is implied only by the 'tier2' naming and the study-depth language.

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?

Explicitly distinguishes the two study_type modes ('snapshot' evaluates 17 LV / 8 MV-TX worst-case seasonal peak states vs 'time_series' evaluating the chronological 30-min diurnal trajectory) and adds a clear when-not statement: it does NOT run the full-year 17,520/35,040-interval telemetry simulation. It also gives guidance on the include_trajectory default. What it does not give is any routing against siblings (run_tier1_screen, sweep_connection_capacities) or prerequisites for choosing a network_id.

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