Skip to main content
Glama

grocy_battery_charge

Record a charge cycle for a specified battery in Grocy; omit confirm to preview as a dry-run before committing.

Instructions

Track a battery charge cycle. POST /api/batteries/{batteryId}/charge. Omit confirm for a dry-run.

Input Schema

NameRequiredDescriptionDefault
confirmNoSet to the boolean true to execute the write. Omit this field for a dry-run preview. false and the string true are rejected.
battery_idYes
tracked_timeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior4/5

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

Annotations declare a non-readonly, non-idempotent, non-destructive open-world write, and the description adds the important safety mechanic that omitting confirm yields a dry-run preview rather than a write. It does not disclose error conditions (e.g., nonexistent battery id) or what the resulting record contains, but the dry-run default is the critical behavioral fact and it is surfaced.

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 short sentences, front-loaded with the action, followed by the endpoint and the one usage caveat. Nothing is wasted and nothing important is buried.

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?

For a small three-parameter mutation tool with no output schema, the definition covers the action and the dry-run mechanic, but leaves tracked_time undefined and says nothing about what a successful charge response looks like or that the battery must exist. Adequate but with a clear blind spot.

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

Parameters2/5

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

Schema coverage is only 33%: confirm is fully documented in the schema (and repeated in the description), battery_id is self-evident as a path id, but tracked_time is completely unexplained in both schema and description — an agent cannot tell what format or semantics a 'tracked time' string takes. The description does not compensate for that gap.

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?

States a specific verb+resource ('Track a battery charge cycle') and even names the underlying endpoint, so an agent knows this writes a charge event to a battery. It does not explicitly contrast with grocy_battery_undo_charge or grocy_battery_get, though the verb makes the distinction reasonably inferable.

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?

'Omit confirm for a dry-run' gives a clear usage rule for the key parameter, which is genuinely actionable. However, there is no guidance on when to use this versus grocy_battery_undo_charge or how it relates to the battery lifecycle beyond the one dry-run note.

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