Skip to main content
Glama

EasyStore MCP by usefulapi

Adjust inventory level

easystore_adjust_inventory_level
Destructive

WRITE. Add to or remove from the stock of one variant at one location by a relative amount (positive adds, negative removes; 0 is rejected). Not idempotent: repeating it changes the stock again. Omit location_id for the primary location. Needs write_products. PUT /api/4.0/inventory_levels/adjust.json.

Input Schema

NameRequiredDescriptionDefault
variant_idYesVariant id (see easystore_list_product_variants).
location_idNoLocation id (see easystore_list_locations). Default: the primary location.
adjustment_quantityYesRelative change: 5 adds 5, -5 removes 5.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already mark this as non-read-only, destructive, non-idempotent, and open-world; the description reinforces the write/non-idempotent behavior and adds useful details: the required write_products permission, the endpoint, zero rejection, and the consequence of repeating the call.

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?

It is front-loaded with 'WRITE' and packs only actionable information into a few dense sentences: relative semantics, rejection rule, default location, permission, non-idempotence, and endpoint. There is no filler.

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 three-parameter mutation with rich annotations and no output schema, the definition covers the essential context: what changes, how the relative amount works, non-idempotence, permission requirements, default location behavior, and the underlying endpoint.

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 the baseline is 3, but the description adds meaningful semantics by stating that adjustment_quantity is relative, that zero is rejected, and that omitted location_id targets the primary location. The positive/negative behavior is already in the schema, so it is not a full 5.

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 states a specific verb and resource: add to or remove from stock for one variant at one location by a relative amount. The phrase 'relative amount' clearly distinguishes this from the sibling easystore_set_inventory_level, which sets an absolute level.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear usage context: positive adds, negative removes, zero is rejected, omit location_id for the primary location, and it is not idempotent. It does not explicitly name easystore_set_inventory_level as the alternative for absolute stock values, so it falls short of a full when/when-not routing statement.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.