Skip to main content
Glama
PVsyst CLI MCP

PVsyst CLI MCP

pvsyst_update_project_parameters

Edits an existing PVsyst project's display title while preserving PRJ/VC filenames; preview changes with dry_run before writing.

Instructions

[Projects & Variants] Edit an existing project's display title only, preserving its PRJ/VC filenames. project_name requires a strict string of 1..80 printable UTF-8 bytes without controls/surrounding whitespace. Requires one existing owning header Comment, complete recognized PRJ object syntax and the full hash map from inspect_project. No blank name field/default is invented. dry_run returns the full candidate file map and diff without backups/writes; repeated names are no-ops. Non-ASCII names require UTF-8 BOM: existing BOM is preserved, adding one needs explicit add_utf8_bom=true. This changes UTF-8 decoding for the whole PRJ, not merely the title; bom_added is explicit even in a BOM-only transaction. Only changed PRJ bytes are replaced; unchanged VC bytes/timestamps/file IDs stay intact. Full-project snapshots and final file-set guards are reused. Restore using restore_project_sources with the returned backups/files map. Does not rename IDs, change sources, nested names, physical settings or VC names. This is the GUI project-name field, not its filename-based window caption. Close a loaded GUI project before editing its file; inspect again after GUI saves. The 1..80-byte limit is the verified adapter contract, not a native GUI limit. BOM-less UTF-8 inspection reads raw text, not effective GUI/CLI decoding. This is optimistic conflict checking, not cross-process locking/crash atomicity.

Input Schema

NameRequiredDescriptionDefault
dry_runNo
projectYes
add_utf8_bomNo
project_nameYes
expected_filesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations, the description carries the full load and does it well: dry_run returns the candidate file map and diff without writes, repeated names are no-ops, only changed PRJ bytes are replaced while VC bytes/timestamps/file IDs stay intact, BOM changes affect whole-file decoding, and it is explicitly optimistic conflict checking rather than locking.

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?

Dense but front-loaded, opening with the scope and the filename-preservation invariant before constraints. Nearly every sentence adds operational value (BOM, dry_run, restore, no-ops); it is long but justified by the tool's complexity.

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 complex, annotation-free, no-output-schema mutation tool, the description covers preconditions, side effects, reversibility (backups map), and edge cases. It stops short of describing the dry_run diff output shape in detail, but gives enough for an agent to call it safely.

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 description must compensate: it explains project_name's 1..80 printable UTF-8 byte constraint, dry_run's return behavior, and add_utf8_bom semantics. expected_files is only implied via 'the full hash map from inspect_project' and the project param's identity is lightly covered.

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?

States a specific verb and resource: editing an existing project's display title only, preserving PRJ/VC filenames. It explicitly distinguishes itself from filename-based naming and from sibling mutation tools (update_project_sources, update_variant_parameters) by listing what it does not touch.

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: requires an existing owning header Comment, complete recognized PRJ syntax, and the full hash map from inspect_project; close a loaded GUI project before editing and re-inspect after GUI saves; restore via restore_project_sources. It doesn't explicitly enumerate alternative siblings for related edits, but the workflow context is clear.

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