Skip to main content
Glama
MarketingBNG

tally-mcp

by MarketingBNG

tally_alter_ledger

Destructive

Preview edits to an existing TallyPrime ledger—rename, regroup, change opening balance, or update party details—and get a confirm token before any write.

Instructions

Change an EXISTING ledger in TallyPrime: rename it, move it to another group, change its opening balance, or update its party details. Only the fields you give are changed.

The preview shows each changed field before and after. Renaming or regrouping a ledger changes how every voucher already posted to it is reported.

WRITES TO TALLYPRIME, in two steps. This call only PREVIEWS: it checks the change against the live books and returns exactly what would be written plus a confirmToken — nothing is changed. Show the preview to the user, and only after they approve it call tally_confirm_write with the token. Never confirm on your own initiative, and never confirm a preview the user has not seen.

Input Schema

NameRequiredDescriptionDefault
nameYesThe ledger to change, by its current name.
emailNo
groupNoMove it under this existing group.
gstinNoGST registration number of the party.
stateNo
addressNoAddress lines, in order.
companyNoCompany name. Omit to use whichever company TallyPrime has loaded. If given and it is not the loaded one, the call fails with TALLY_COMPANY_NOT_LOADED rather than returning another company's data.
countryNo
newNameNoRename it to this.
pincodeNoPostal / ZIP code.
mailingNameNoName for letters and statements.
openingSideNoRequired with openingBalance.
isBillWiseOnNoMaintain balances bill-by-bill. Usually true for customers and suppliers.
openingBalanceNoPositive amount, e.g. "12500.00". Use the side field for debit or credit, never a minus sign.
incomeTaxNumberNoPAN (India) or other income-tax number.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.2.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already flag a destructive, non-idempotent, non-read-only write, but the description adds far more: the two-step preview/confirm protocol, that this call mutates nothing and returns a confirmToken, and the domain consequence that renaming or regrouping re-reports every previously posted voucher. That is exactly the kind of consequence an agent cannot derive from the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight paragraphs, front-loaded with what changes and what is preserved, then the write protocol. Emphasis capitalisation and the slightly redundant 'this call only PREVIEWS ... nothing is changed' cost a little, but every sentence carries actionable information.

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 15-parameter destructive mutation with no output schema, the description supplies the missing pieces: preview contents, the token handoff, the partial-update semantics, the reporting side effect, and the no-unilateral-confirm rule. An agent has everything needed to invoke it safely.

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 80%, so the baseline is 3 and the schema already documents name, group, gstin, openingSide, openingBalance, and the company-failure mode. The description adds the important cross-parameter contract that omitted fields are left untouched, but it does not add format or coupling detail beyond that.

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?

States a specific verb (change) and resource (EXISTING ledger in TallyPrime) and enumerates the four concrete mutations: rename, regroup, opening balance, party details. It also names the partial-update contract ('Only the fields you give are changed'), which cleanly separates it from tally_create_ledger, tally_delete_ledger, tally_alter_voucher, and tally_alter_master.

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?

Gives explicit when-to-use (existing ledger), an explicit alternative (tally_confirm_write with the token), and an explicit when-not-to-act rule: 'Never confirm on your own initiative, and never confirm a preview the user has not seen.' The human-approval gate is spelled out rather than left to inference.

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