Skip to main content
Glama

grocy_stock_inventory

Idempotent

Set a product's current stock amount via inventory POST by product ID or barcode, with an optional dry-run preview when confirmation is omitted.

Instructions

Set the stock amount of a product. POST inventory, by product_id or barcode. Omit confirm for a dry-run.

Input Schema

NameRequiredDescriptionDefault
noteNo
priceNo
barcodeNoProduct barcode. Provide this or product_id.
confirmNoSet to the boolean true to execute the write. Omit this field for a dry-run preview. false and the string true are rejected.
new_amountYesNew current amount for the product.
product_idNoProduct id. Provide this or barcode.
location_idNo
best_before_dateNo
stock_label_typeNo
shopping_location_idNo

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 already declare this as a non-destructive but writing, idempotent, open-world operation. The description adds critical behavioral context beyond that: the confirm gate controls whether the inventory POST executes or is only a dry-run preview, which is central to safe invocation.

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 and resource, followed by endpoint and dry-run behavior. No filler or redundancy.

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 10-parameter mutation tool with no output schema and only 40% schema description coverage, the description covers the indispensable confirm gate but leaves most optional parameter interactions and side effects unclear. It is minimally sufficient but not complete.

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 description coverage is only 40% across 10 parameters. The description mentions product_id, barcode, confirm, and implicitly new_amount, but leaves note, price, location_id, best_before_date, stock_label_type, and shopping_location_id unexplained, so it does not compensate for the low schema coverage.

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?

The description states a specific verb and resource: 'Set the stock amount of a product.' This distinguishes it from siblings such as grocy_stock_add and grocy_stock_consume by implying an absolute overwrite rather than an incremental change, though it does not name those alternatives explicitly.

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?

It gives useful invocation details (provide product_id or barcode; omit confirm for a dry-run) but never states when to use this tool instead of grocy_stock_add, grocy_stock_transaction, or grocy_stock_booking. Usage is implied rather than explicitly routed.

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