Skip to main content
Glama
Gearotons

servomotor-mcp

get_comprehensive_position

Retrieve commanded, hall sensor, and external encoder positions from a motor in a single call.

Instructions

Get the desired motor position, hall sensor position, and external encoder position all in one shot [Firmware command "Get comprehensive position", group: Status & Monitoring.] Returns:

  • commandedPosition: The commanded position (which may differ from actual)

  • hallSensorPosition: The hall sensor position (or you could say the actual measured position)

  • externalEncoderPosition: The external encoder position. This needs special hardware attached to the motor to work 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.3/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of disclosing behavior. It does so well by noting that broadcasts return no responses, external encoder position requires additional hardware, and that commandedPosition may differ from actual. It also clarifies the semantic difference between hall sensor and commanded positions. Minor omission is explicit statement of read-only nature, but the group 'Status & Monitoring' implies it.

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 structured with a clear purpose line followed by a bulleted list of return values and parameter details. It is slightly verbose with informal phrasing ('or you could say') but remains well-organized and front-loads the core purpose. No redundant sentences.

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 single-parameter tool with no output schema, the description provides all necessary context: return value descriptions, parameter semantics, broadcast behavior, and hardware prerequisites. It is sufficiently complete for an agent to call the tool correctly without additional documentation.

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 fully compensates by explaining the 'motor' parameter accepts an alias number, a 16-hex-digit unique ID, or 'all' for broadcast, including the side effect of broadcasts not receiving responses. This goes well beyond the schema's bare type definition.

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 description clearly states the tool retrieves three position values (desired, hall sensor, external encoder) in one call, explicitly distinguishing it from siblings like get_position and get_hall_sensor_position. The verb 'Get' is specific and the resource is unambiguous. It even references the firmware command and group, reinforcing its purpose.

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 implies when to use this tool (when multiple positions are needed 'all in one shot') but does not explicitly state when not to use it or name alternative tools. It mentions the external encoder requires special hardware, which is a prerequisite, but offers no routing to single-position tools. Usage guidance is implicit rather than explicit.

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