Skip to main content
Glama
uni-t-uts-mcp

uni-t-uts-mcp

by Reid-n0rc

set_marker

Idempotent

Configure a spectrum analyzer marker's mode, trace, position, or delta reference, then verify applied settings and report any warnings for values the instrument rejected.

Instructions

Set a marker's mode, trace, reference marker (delta mode) and/or position. Commands are applied in the order mode, trace, reference, x; the marker is re-read afterwards and anything the instrument did not take is reported in 'warnings'. A position set on a marker that is off has no effect: set mode normal (or use marker_search, which turns the marker on) first.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "marker": "<marker>"
    },
    "name": "set_marker"
  }
}

Input Schema

NameRequiredDescriptionDefault
modeNooff, normal (position), delta or fixed
x_hzNoMarker position in Hz (seconds in zero span). Not clamped by the instrument: a value outside the sweep span is accepted but its level reading is not meaningful
traceNoTrace the marker sits on, 1 to 6
markerYesMarker number, 1 to 10
instrumentNoWhich instrument to use (a name from list_instruments). Default: the `default` instrument, or the only one configured
reference_markerNoReference marker for delta mode (another marker)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A3.9/5.0
Behavior3/5

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

The annotations already declare that the tool mutates (readOnlyHint=false) and is idempotent, and the description adds real value on top: commands are applied in the fixed order mode, trace, reference, x, then the marker is re-read. That read-back and the fact that rejected values are surfaced in 'warnings' is genuinely useful, non-obvious behavior. It stops short of describing permissions, error modes, or what happens with conflicting values (e.g. delta mode without a reference marker).

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?

Three sentences, front-loaded with capability then ordering semantics then the critical precondition. No filler or restatement of the tool name.

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?

For a 6-parameter mutation with no output schema, the description supplies what the schema cannot: application order, the re-read/warnings reporting channel, and the off-marker no-op trap. An agent has everything needed to invoke it correctly or redirect to marker_search.

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 coverage is 100%, so the schema already defines all six parameters including the mode enum and the x_hz non-clamping note. The description adds only the sequencing relation among mode/trace/reference/x and the off-marker interaction with position. That is meaningful but thin given 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?

Opens with a specific verb+resource and enumerates exactly which marker properties can be set: mode, trace, reference marker (delta mode) and position. It also names marker_search as the alternative for turning a marker on, so the agent can partly distinguish it, though it does not distinguish itself from set_marker_function, set_marker_ndb, or set_emi_marker.

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 a concrete precondition with a named alternative: a position set on an off marker has no effect, so set mode normal first or use marker_search. It does not address when to choose this over the other marker-mutating siblings, but for the main usage trap it is explicit.

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