Skip to main content
Glama

Plecs Analyze

plecs_analyze

Run a named PLECS analysis on a model to obtain AC, impulse, or steady-state response data. Enable summary to get magnitude/phase ranges, gain crossover, and phase margin.

Instructions

Run an analysis (blocking).

analysis_name is the analysis NAME property (e.g. "Loop Gain (AC Sweep)"), not the tree node label ("AC Sweep"). AC/Impulse/Multitone return {F, Gr, Gi}; Steady-State returns {Time, Values}. summary=true replaces raw arrays with magnitude/phase ranges plus gain crossover and phase margin. SolverOpts.Timeout is injected (verified: AnalysisOpts.Timeout is rejected).

Input Schema

NameRequiredDescriptionDefault
optionsNo
save_toNo
summaryNo
timeoutNo
overwriteNo
max_pointsNo
model_nameYes
analysis_nameYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.1

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations at all, the description carries the full load and does meaningful work: it discloses that the call blocks, that Timeout must be injected via SolverOpts (with evidence that AnalysisOpts.Timeout is rejected), and what each analysis family returns. The notable gaps are overwrite=true semantics (a potentially destructive file-overwrite flag that goes entirely unmentioned) and any error/timeout behavior.

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

Conciseness5/5

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

It is front-loaded with the action and blocking behavior, then layers disambiguation, return shapes, and the timeout quirk in descending priority. The telegraphic style is dense but every clause carries information an agent cannot get from the schema.

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 the return-shape notes are a bonus rather than a necessity, and the analysis_name and timeout guidance is the genuinely load-bearing content. Against a mutating, 8-parameter, annotation-free tool, though, the silence on save_to and especially overwrite leaves an agent able to clobber artifacts without warning.

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 0% across 8 parameters, and the description compensates well for the two hardest ones: it disambiguates analysis_name (NAME property, not tree node label) and explains summary's effect on the return payload. But options, save_to, overwrite, and max_points get no treatment at all, leaving half the surface undocumented in both schema and prose.

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 opening verb+resource ("Run an analysis") is specific and the blocking qualifier immediately frames execution semantics, which separates it from async siblings like plecs_submit. It never names a sibling tool (e.g. plecs_simulate or plecs_analyze_data) to draw the boundary explicitly, so sibling differentiation is inferred from the analysis-type vocabulary rather than stated.

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

Usage Guidelines3/5

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

Usage context is implied by the output-shape mapping (AC/Impulse/Multitone vs Steady-State) and by "blocking", so an agent can infer when a result array is coming back. However, there is no explicit statement of when to call this versus plecs_simulate, plecs_analyze_data, or plecs_state_space, and no prerequisites or exclusions are given.

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