Skip to main content
Glama

Press meter keys

press

Simulate front-panel key sequences on a Fluke 287/289 multimeter and return the display state after each key, enabling remote navigation, range changes, and meter control.

Instructions

Simulate front-panel keys in order (soft keys F1-F4 under the display, the arrows, HOLD, MINMAX, RANGE, INFO, BACKLIGHT, ONOFF) and return the display state after each key. held: a long press (RANGE held = back to autorange). ONOFF switches the meter OFF for good (it cannot be switched on remotely, and the adapter goes to sleep with it): it is refused unless allow_off is true; the meter then asks for confirmation (F1 confirms, F4 cancels).

Input Schema

NameRequiredDescriptionDefault
heldNolong press (HELD_DOWN) for every key
keysYeskeys, pressed in order
max_wallNotime limit for the whole call in seconds (default 120); past it the command is stopped and TIMEOUT is returned
allow_offNopermit ONOFF, which switches the meter off; only when the user asked for it

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 burden and does well: it discloses that display state is returned after each key, explains held behavior including RANGE autorange, and warns that ONOFF permanently powers off the meter, cannot be reversed remotely, puts the adapter to sleep, is refused unless allow_off is true, and requires F1/F4 confirmation.

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?

The description is a compact, front-loaded paragraph: main action first, then held semantics, then the ONOFF safety behavior. Every sentence adds useful information without repetition.

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 mutation-style tool with no output schema and no annotations, the description covers the important return value, the sequential key behavior, long-press semantics, and the irreversible ONOFF flow. No critical invocation detail is missing.

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 100%, so baseline is 3, but the description adds meaningful semantics beyond the schema: held is a long press with special RANGE behavior, and allow_off controls the ONOFF safety gate and confirmation flow. max_wall is left to the schema, which is acceptable.

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 (simulate) and resource (front-panel keys), lists the supported keys, and says it returns the display state after each key. The purpose is clear and distinct from sibling tools such as status, read, and live.

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?

The description gives important invocation constraints for held presses and ONOFF, but it does not explicitly say when to use this tool instead of reading state through siblings. Usage is implied by the purpose and special-key rules.

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