Skip to main content
Glama

generate_profiles

Generate per-load, per-year active/reactive power time series for pandapower grids from BDEW profiles, saving CSVs and a checksummed manifest.

Instructions

Generate P/Q time series per load and year; saves CSVs and a manifest (settings, assumptions, checksums); returns per-year and ensemble statistics.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
seedNo
yearsYesCalendar years
grid_idYes
scalingNogrid p_mw = annual peak or mean; or scale to annual energypeak
reactiveNogrid_ratio: q/p from the grid; power_factor: use power_factorsgrid_ratio
clip_sigmaNo
n_scenariosNoMonte Carlo scenarios, seeds seed..seed+n-1
noise_modelNoar1
noise_sigmaNorelative std at the reference size (0.1 = 10 %)
assignment_idYes
power_factorsNocos(phi) per category, inductive
ar1_phi_hourlyNo
resolution_minNo
growth_rate_pctNogrowth %/a from the first year
holiday_countryNoDE
load_scaling_stdNostd of constant per-load factor
max_time_shift_minNomax per-load shift [min]
noise_common_shareNoshare of noise variance common to all loads (0 = independent)
holiday_subdivisionNoGerman state code, e.g. BY
noise_sigma_scalingNosqrt_size: sigma*sqrt(P_ref/P_i); constant: same for all loadssqrt_size
noise_reference_p_mwNosize [MW] where noise_sigma applies; default median load
annual_energy_mwh_by_loadNoannual_energy: MWh per load index (overrides category)
annual_energy_mwh_by_categoryNoannual_energy: MWh per load, per category

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose meaningful side effects: it writes CSVs plus a manifest containing settings, assumptions, and checksums, and it returns per-year and ensemble statistics. However, it omits whether the run is idempotent, what auth/permissions are needed, runtime cost for a 23-parameter Monte Carlo call, and whether existing artifacts are overwritten.

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?

A single dense sentence that is front-loaded with the core action and packs outputs into a parenthetical. It wastes no words, though the semicolon-chained clauses demand careful parsing.

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?

Since there is no output schema, the description's note that CSVs, a manifest, and per-year/ensemble statistics are returned is genuinely useful. But for a 23-parameter, no-annotation, write-producing tool, the absence of usage guidance, artifact-overwrite behavior, and precedence among the many scaling/noise options leaves clear gaps.

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 65%, so the schema documents most parameters (scaling, reactive, noise_model, n_scenarios, etc.). The description adds only the 'per load and year' framing and says nothing about how the required grid_id, assignment_id, and years combine or how the 20 optional knobs interact, which is the baseline-3 level 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.

Purpose4/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: 'Generate P/Q time series per load and year,' which is unambiguous. It reasonably distinguishes the tool from siblings like register_profile, get_bdew_curve, assign_load_types, and plot_run, though it never names an alternative to force the distinction.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no comparison to alternatives such as register_profile or load_grid. The agent must infer from the name alone that this is the generation step; nothing in the text routes it.

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