Skip to main content
Glama
lokesh-sparrow

PNPC-MCP-Tally-Prime

update_stock_item

DestructiveIdempotent

Modify an existing stock item in TallyPrime by exact name, changing unit, group, VAT rate, description, or other native fields without affecting unset values.

Instructions

Update an existing stock item in TallyPrime — same fields as create_stock_item, all optional except name.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesExact name of the existing stock item
unitNoNew unit of measure
groupNoNew stock group
rateOfVatNoVAT rate percentage for this item, e.g. 5.
descriptionNoFree-text description of the item.
extraFieldsNoEscape hatch for any other native Tally stock item field, same as on create_stock_item.
ignoreNegativeStockNoAllow this item's stock to go negative without a warning/block.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed5 schema fields changedv1.11.2
    • addedInput schema / properties / description
      Added value: +{
      +  "description": "Free-text description of the item.",
      +  "type": "string"
      +}
    • addedInput schema / properties / extraFields
      Added value: +{
      +  "additionalProperties": {
      +    "type": "string"
      +  },
      +  "description": "Escape hatch for any other native Tally stock item field, same as on create_stock_item.",
      +  "type": "object"
      +}
    • addedInput schema / properties / ignoreNegativeStock
      Added value: +{
      +  "description": "Allow this item's stock to go negative without a warning/block.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / rateOfVat
      Added value: +{
      +  "description": "VAT rate percentage for this item, e.g. 5.",
      +  "type": "number"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "name",
      -  "group",
      -  "unit"
      -]New value: +[
      +  "name"
      +]
  2. First observedv1.0.3

TDQS

A3.7/5.0
Behavior2/5

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

Annotations already disclose destructive and idempotent behavior, but the description fails to clarify a critical update semantics: whether omitted optional fields are left unchanged or reset to defaults. Since all fields except name are optional, this ambiguity materially affects correctness. The description adds no behavioral detail beyond the annotations and the reference to create_stock_item does not resolve this.

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 a single, clear sentence. The primary purpose is front-loaded and the reference to create_stock_item is concise. There is no wasted text.

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?

The description covers the core purpose and parameter scope, and the annotations provide idempotency and destructiveness. However, the key update behavior (partial vs. full update) is not specified, and error conditions (e.g., non-existent name) are not addressed. Given the tool has 7 optional parameters, this is a notable gap, but the reference to create_stock_item partially mitigates it.

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

Parameters3/5

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

Schema description coverage is 100%, so every parameter is documented. The description adds value by pointing to create_stock_item for field semantics, but it doesn't elaborate on the parameters themselves. With full schema coverage, a baseline of 3 is appropriate.

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 action ('Update') and the resource ('an existing stock item in TallyPrime'), and even references its create counterpart. It is specific and unambiguous, and distinguishes itself from the many create_* siblings by the use of 'Update' and 'existing'.

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?

The description implies the tool is for modifying an existing item rather than creating one, and explicitly contrasts with create_stock_item via 'same fields as create_stock_item'. It does not explicitly state when not to use it, but the context is clear.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/lokesh-sparrow/PNPC-MCP-Tally-Prime'

If you have feedback or need assistance with the MCP directory API, please join our Discord server