Skip to main content
Glama

proj_set_document_parameter

Set or update document-level parameters like title block data on a specific schematic sheet. Creates a hidden parameter if missing and writes it to disk immediately.

Instructions

Set a document-level parameter on a specific schematic sheet.

Useful for per-sheet title block data (e.g., "SheetTitle", "Revision"). If the parameter already exists it is updated; otherwise a new hidden parameter object is created on the sheet.

NOTE: the target sheet must already be loaded as a proper project member. Call proj_load_sheets once at the start of a batch; auto-opening from inside this tool risks detaching the sheet and rendering it as a "free document". If the sheet isn't loaded this tool returns NOT_LOADED.

The write is persisted to disk immediately via the IServerDocument API, no subsequent app_save_all is required.

Args: file_path: Full path to the schematic document (.SchDoc). Use Windows-style backslashes (e.g. C:\path\Sheet.SchDoc), not forward slashes. name: Parameter name value: Parameter value

Returns: Dictionary with file_path, name, value, and dirty=true (the in-memory flag; the disk write already happened, so no app_save_all is needed for this parameter).

Input Schema

NameRequiredDescriptionDefault
nameYes
valueYes
file_pathYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.1

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden and does well: it discloses update-vs-create behavior, hidden parameter creation, immediate disk persistence, the NOT_LOADED failure mode, and the meaning of dirty=true. It also explains that app_save_all is unnecessary, which prevents an incorrect follow-up call.

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?

The description is front-loaded with purpose and preconditions, then Args and Returns. It is appropriately sized for a mutation tool, but the app_save_all/dirty persistence point is repeated in both the NOTE and Returns section.

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?

Given three required parameters, no annotation coverage, and minimal schema descriptions, the description covers purpose, preconditions, side effects, persistence, and return semantics. An agent has enough information to call it correctly and avoid the main failure mode.

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 description coverage is 0%, so the Args section does the necessary work by naming and explaining all three parameters. It adds important file_path formatting guidance about .SchDoc and Windows backslashes, though name and value remain generic.

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: setting a document-level parameter on a specific schematic sheet. It distinguishes the scope from project-level parameter tools by emphasizing per-sheet title block data and hidden parameter creation.

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 clear intended use for per-sheet title block values and a strong prerequisite to call proj_load_sheets first, including the failure mode NOT_LOADED. It does not explicitly contrast with the sibling proj_set_parameter, but the document-level scope 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