Skip to main content
Glama
PVsyst CLI MCP

PVsyst CLI MCP

pvsyst_create_dome_allocation_variant

Preview or create a new PVsyst variant that rebalances string allocation across both faces of an existing two-face Dome configuration without modifying the source project.

Instructions

[Projects & Variants] Preview or create a NEW variant that rebalances an existing two-face Dome allocation. Supported subset is the already-allocated native 8.1.6 Dome template: one subarray sharing both faces, NStringCh=40 with NoOrientation=1 and NoOrientation2=2, plus the pinned module/inverter/series/inverter/MPPT declarations and the two paired pvDomeOrient records (main FieldType=Dome at tilt 10 / azimuth 90, back face FieldType=DomeBackfaces at tilt 10 / azimuth -90, NoPairOrient 2/1, IsMainOrient True/False, three averaging switches False, BTNoTrackers=-1,-1, both Version=8.1.6 and Flags=$00). Record Comments are kept verbatim and are never used to detect the face type; unknown, duplicated, missing or wrongly paired records stop. Only NStrOrient1 is written, plus an optional root Comment; no inverter, string, module, subarray or orientation record is created or copied, NoOrientation2 is not changed, and a source without an existing allocation is refused rather than completed. The remaining face-two strings are not written as NStrOrient2 because the native template does not store that field, so NStringCh=40 stays the only string total. first_orientation_strings is adapter-bounded to 1..39; that bound is not a measured native GUI or engineering limit, and the source record is validated against the same domain. Circuit node NElements values are inherited unchanged and their semantics are not inferred; no mismatch, string-current or allocation model is computed here. dry_run=true writes nothing; execution creates one NEW VC only and never edits the source PRJ/VC, weather, topology or hardware, reusing existing store locking, path checks, read-back verification and no-overwrite semantics. variant_name/add_utf8_bom follow the existing display-name and BOM rules. native_consumption_verified stays false: verify native hourly results and reports before treating the allocation as consumed.

Input Schema

NameRequiredDescriptionDefault
dry_runNo
projectYes
new_variantYes
add_utf8_bomNo
variant_nameNo
source_variantYes
first_orientation_stringsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior5/5

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

No annotations exist, so the description carries the full burden and does so thoroughly: dry_run=true writes nothing, execution creates exactly one NEW VC and never edits the source PRJ/VC, weather, topology or hardware, reusing existing locking, path checks, read-back verification and no-overwrite semantics. It also discloses write scope precisely (only NStrOrient1 plus optional root Comment; NoOrientation2 unchanged; no other record created or copied) and flags that native_consumption_verified stays false.

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

Conciseness3/5

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

The first sentence is well front-loaded, but the remainder is a dense run-on with nested parentheticals enumerating raw template internals (FieldType values, BTNoTrackers=-1,-1, Flags=$00, Version=8.1.6) that read like spec-sheet minutiae rather than decision-relevant guidance. No line breaks, bullets, or grouping, so an agent must parse ~250 words of prose to extract the actionable constraints.

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

Completeness4/5

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

For a 7-parameter, high-complexity mutation tool with no annotations and no output schema, the coverage is unusually complete: validation rules, write scope, dry-run behavior, and the residual verification caveat are all present. The remaining gap is that three parameters (project, source_variant, new_variant) are never explicitly defined and no return-value shape is described.

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

Parameters4/5

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

Schema coverage is 0%, so the description must compensate, and it does for the non-obvious parameters: first_orientation_strings is bounded to 1..39 (explicitly an adapter bound, not a native limit), dry_run is defined as write-nothing, variant_name/add_utf8_bom are tied to display-name and BOM rules, and the Comment is called optional. project, source_variant and new_variant are only implicitly explained (source is never edited, new VC is created), which keeps this short of a 5.

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?

Opens with a specific verb and resource: 'Preview or create a NEW variant that rebalances an existing two-face Dome allocation.' That is unmistakably distinct from sibling variant creators (tracking, AC cabling, shed geometry, MV night disconnect), so an agent can route correctly without opening the schema.

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?

Gives strong preconditions and exclusions: the source must be an already-allocated native 8.1.6 Dome template with one subarray on both faces, and 'a source without an existing allocation is refused rather than completed'; unknown, duplicated, missing or wrongly paired records stop. What it lacks is any explicit pointer to the sibling to use instead when the source is not a Dome allocation (e.g., clone_variant or another variant creator).

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

Deploy Server

Other Tools