Skip to main content
Glama
rbilleci

bsh-mcp

by rbilleci

inventory_update

Apply audited changes to a character's coins, equipment, or weapons for looting, dropping, or paying, while rejecting invalid removals or negative balances.

Instructions

Apply one audited change to a character's coins, equipment, or weapons.

Coins and carried items are mechanical state exactly like hit points: they change only through this tool. Call it whenever the fiction moves a possession -- looting a body or a stall, picking something up, dropping or handing over an item, paying or receiving coins outside a negotiated trade. Pass a signed coins_delta and exact item names; the tool refuses before any write when coins would go below zero or a removed item is not held. A runic weapon is put down the same way: name it in remove_weapons, and the weapon leaves with its kill verdict.

Never use this for a negotiated merchant purchase: the trade confirmation flow owns those, and only its authenticated confirmation moves the coins.

Answer inventory questions from character_sheet or this tool's own result, never from memory or the scene digest.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
reasonYes
add_weaponsNo
coins_deltaNo
character_idYes
add_equipmentNo
remove_weaponsNo
remove_equipmentNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations, the description carries the full burden, and it excels: it reveals that changes are audited, that inventory is mechanical state like hit points, that the tool validates before writing and refuses on invalid removals or negative coins, and that runic weapons leave with their kill verdict. This is far beyond the minimum.

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?

The description is front-loaded with the core purpose, then moves through usage, exclusions, and data-source guidance. Every sentence adds operational value; there is no repetition or filler.

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?

Despite no output schema or annotations, the description covers when, how, safety, exclusions, and post-call data sourcing. The only notable gap is that it references 'this tool's own result' without describing what that result contains, and the purpose of the required 'reason' parameter is left unexplained.

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?

The schema has 0% description coverage, so the description must compensate. It clearly explains coins_delta as signed and item names as exact, and gives special semantics for remove_weapons with runic weapons. However, it never explains the required 'reason' parameter or individually maps all add/remove fields, so it is not fully complete.

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 names a specific verb and resource ('Apply one audited change to a character's coins, equipment, or weapons'), making the tool's scope immediately clear. It also distinguishes itself from the broader character and campaign tools, and further narrows behavior by excluding negotiated merchant purchases.

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

Usage Guidelines5/5

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

The description gives explicit when-to-use guidance ('Call it whenever the fiction moves a possession') and explicit when-not-to-use guidance ('Never use this for a negotiated merchant purchase: the trade confirmation flow owns those'). It also tells the agent where to answer inventory questions from, which directly prevents misuse.

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