Skip to main content
Glama
Gearotons

servomotor-mcp

get_max_pid_error

Retrieve the minimum and maximum PID error values recorded since the last read to assess servomotor control loop stability.

Instructions

Get the minimum and maximum error value ovserved in the PID control loop since the last read. [Firmware command "Get max PID error", group: Status & Monitoring.] Returns:

  • minPidError: The minimum PID error value.

  • maxPidError: The maximum PID error value. motor: an alias number (e.g. 88), a 16-hex-digit unique ID (e.g. "0123456789ABCDEF"), or "all" to broadcast to every motor on the bus (broadcasts get no responses back).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
motorYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.3.1

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does well by disclosing the observation window ('since the last read') and the broadcast caveat ('broadcasts get no responses back'). It does not explicitly describe counter reset behavior or failure cases, but the key read-only, cumulative-window behavior is present.

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 concise, front-loaded with the core purpose, and organized with a short returns list and parameter note. The bracketed firmware-command aside is slightly extraneous, but the structure is otherwise tight and readable.

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?

There is no output schema, but the description lists both return values with short explanations and fully documents the only required parameter. It is complete enough for a simple one-parameter read command, though it omits value types or units for the returned PID errors.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must fully explain the motor parameter, and it does: alias number example, 16-hex-digit unique ID example, and the special 'all' broadcast behavior including the no-response consequence. This is exactly the kind of parameter meaning the schema alone cannot convey.

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?

The first sentence states exactly what the tool does: 'Get the minimum and maximum error value observed in the PID control loop since the last read.' This is a specific verb and resource, and it clearly separates the tool from the broader status/monitoring siblings.

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 some context through the 'Status & Monitoring' group and the 'since the last read' wording, implying a diagnostic read use case. However, it does not explicitly say when to use this tool instead of alternatives like get_debug_values or get_motor_status, nor does it state any exclusions.

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