Skip to main content
Glama
lokesh-sparrow

PNPC-MCP-Tally-Prime

create_credit_note

Record a sales return in TallyPrime by creating a credit note that reverses stock and revenue, increasing returned items' quantity.

Instructions

Create an item-invoice Credit Note in TallyPrime — a Sales return, reversing stock and revenue for returned items. Same shape as create_sales_invoice but with the debit/credit convention flipped, matching Purchase's sign pattern (a Credit Note is structurally a reverse Sales entry). Confirmed live on a real company: returning 5 units correctly increased the item's book quantity by exactly 5. Same godown and dual-role deletion caveats as create_sales_invoice apply.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dateYesCredit note date in DD-MM-YYYY format
itemsYesOne entry per returned line.
billNameNoBill reference to settle against, e.g. the original invoice's bill name. Defaults to 'Agst Ref' billType.
billTypeNoDefaults to 'Agst Ref' — settling against the original invoice's bill, unlike create_sales_invoice's 'New Ref' default.
buyerTrnNoThe buyer's (customer's) TRN as it should appear on this credit note (Tally's TRADERCONSVATTINNO/BASICBUYERSSALESTAXNO fields) — a per-voucher snapshot, not inherited from the party ledger master.
narrationNoNarration / description
referenceNoFree-text reference for this credit note (Tally's voucher-level REFERENCE field).
vatLedgerNoDefault VAT ledger for items without their own override.
buyerStateNoThe buyer's Emirate/state on this credit note's Party Details (voucher-level STATENAME).
partyLedgerYesCustomer ledger name (the party being credited)
buyerCountryNoThe buyer's country on this credit note's Party Details (voucher-level COUNTRYOFRESIDENCE).
referenceDateNoDate for the reference above, in DD-MM-YYYY format.
voucherNumberNoExplicit voucher number. Normally omit and let Tally auto-number — but some Tally configurations stop auto-numbering item-invoice vouchers via the XML gateway (confirmed live). If creation fails with a blank EXCEPTIONS:1, check get_vouchers for the highest existing number of this voucher type and retry with voucherNumber set to the next one.
vatRatePercentNoDefault VAT rate. Required if vatLedger is set.
placeOfSupplyCountryNoUAE VAT Place of Supply Country (Tally's PLACEOFSUPPLYCOUNTRY field).
placeOfSupplyEmirateNoUAE VAT Place of Supply Emirate for this credit note (Tally's EMIRATEPOS field).

Schema Changelog

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

  1. Addedv1.11.2

TDQS

A4.1/5.0
Behavior4/5

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

With annotations all false (no read-only, no idempotent, no destructive flags), the description carries the burden. It discloses that the tool reverses stock and revenue, mentions the dual-role deletion caveats, and provides a live confirmation of the stock quantity increase. This goes beyond the schema and gives the agent a realistic expectation of side effects, though it does not discuss reversibility or error behavior in detail.

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?

The description is a single, dense paragraph that front-loads the purpose and key distinctions. It is efficient but packs many details (sign pattern, live confirmation, caveats) into one block without bullet points or headings. It remains readable and not overly long, though a structured format could slightly improve scannability.

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?

For a tool with 16 parameters and no output schema, the description provides essential context: it explains the accounting semantics, references shared caveats, and gives a concrete validation example. It does not describe the response format or error handling, but the reference to create_sales_invoice for caveats helps fill gaps. The agent would need to consult that sibling for full behavioral detail, so it is not fully self-contained.

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% and the schema descriptions are detailed (e.g., billType default, godown auto-fill condition, voucherNumber guidance). The tool description adds no new per-parameter meaning beyond referring to the sales invoice's caveats, so it does not need to compensate. Baseline 3 is appropriate because the schema already documents all parameters thoroughly.

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 action (create a Credit Note) with a clear resource (item-invoice in TallyPrime) and explicitly differentiates it from create_sales_invoice by the flipped debit/credit convention. It also clarifies it is a Sales return that reverses stock and revenue, making its purpose unambiguous among the many create_* siblings.

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 gives clear usage context: it is for sales returns, references create_sales_invoice for shared caveats, and notes the difference in sign pattern vs sales invoice. However, it does not explicitly state when NOT to use this tool or name alternative return tools (e.g., create_rejections_in) beyond the sales invoice reference, leaving some inference to the agent.

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