Skip to main content
Glama
lokesh-sparrow

PNPC-MCP-Tally-Prime

create_receipt_note

Record received goods from a supplier in TallyPrime as a Receipt Note voucher, specifying stock items, quantities, rates, and purchase ledgers without raising a purchase invoice.

Instructions

Create a Receipt Note in TallyPrime — an item-line inventory voucher recording goods received from a supplier before or without a full Purchase invoice (e.g. against a Purchase Order). Same item-line shape as create_purchase_invoice (stock item, quantity, rate, Purchase ledger per line) but ISINVOICE is set to No and there's no VAT/tax line — mirror of create_delivery_note on the buying side. Same caveat as create_delivery_note: the voucher type must be active in the company first, or it won't show up in get_vouchers/delete_voucher until it is. get_ledger_vouchers will still never show it, by design. If creation fails with LINEERROR 'Voucher date is missing' even though the date field is set correctly, the date is outside Tally's active period (Alt+F2) — call set_period to cover it and retry (confirmed live).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dateYesReceipt date in DD-MM-YYYY format
itemsYesOne entry per line.
buyerTrnNoYOUR OWN company's TRN on this receipt note (Tally's BASICBUYERSSALESTAXNO field) — you are the buyer on a purchase-side document. Normally constant; check get_company_info.
narrationNoNarration / description
referenceNoFree-text reference for this receipt note (Tally's voucher-level REFERENCE field), e.g. the supplier's delivery/challan number.
buyerStateNoYOUR OWN company's Emirate/state on this receipt note's Party Details.
partyLedgerYesSupplier ledger name
supplierTrnNoThe supplier's (party's) TRN on this receipt note (Tally's TRADERCONSVATTINNO field). Distinct from buyerTrn below — on a purchase-side document the party is the supplier, not the buyer.
buyerCountryNoYOUR OWN company's country on this receipt note's Party Details.
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 certain voucher types via the XML gateway (confirmed live for item-invoice types; unconfirmed either way for Receipt Note). 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.
placeOfSupplyCountryNoUAE VAT Place of Supply Country for this receipt note.
placeOfSupplyEmirateNoUAE VAT Place of Supply Emirate for this receipt note.

Schema Changelog

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

  1. Addedv1.11.2

TDQS

A4.4/5.0
Behavior5/5

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

Annotations are all false and carry almost no information, so the description bears the full burden — and delivers. It discloses the voucher-type-activation prerequisite, the visibility quirk ('won't show up in get_vouchers/delete_voucher until it is' active; get_ledger_vouchers will 'never show it, by design'), and two confirmed error-recovery paths (LINEERROR 'Voucher date is missing' → call set_period and retry; blank EXCEPTIONS:1 → set voucherNumber from get_vouchers). This is precisely the behavioral color an agent cannot infer from annotations or 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?

Roughly 170 words, but no sentence is filler: purpose is front-loaded, sibling differentiation takes one clause, and the remainder is operationally necessary caveat (activation prerequisite, ledger-visibility design, date-period recovery, numbering recovery). Slightly dense and could be tightened, but the length is justified for a complex write tool with documented gotchas.

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 13-parameter write tool with no output schema and uninformative annotations, the description covers every realistic failure mode and prerequisite: voucher-type activation, date-period errors, auto-numbering failures, and the get_ledger_vouchers exclusion. The only omission is the success-return shape, which is a minor gap given no output schema and sibling consistency.

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 coverage is 100%, so the baseline is 3: every parameter already has a substantive schema description (godown's auto-fill vs required behavior, batchName's default, voucherNumber's numbering caveat). The tool description adds voucher-level framing (item-line shape, ISINVOICE=No, no VAT/tax line) but not per-parameter detail, which is appropriate — it does not exceed the schema-driven baseline.

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+resource ('Create a Receipt Note in TallyPrime') and the operational semantics: an 'item-line inventory voucher recording goods received from a supplier before or without a full Purchase invoice'. Explicitly differentiates from siblings — 'Same item-line shape as create_purchase_invoice... but ISINVOICE is set to No and there's no VAT/tax line' — and positions it as the buying-side mirror of create_delivery_note. An agent can distinguish this from every other create_* sibling without opening the schema.

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?

Gives clear context for when to use it: goods received before or without a full Purchase invoice, e.g. against a Purchase Order. The comparison to create_purchase_invoice (ISINVOICE=No, no VAT line) and the create_delivery_note mirror effectively establish selection criteria, though it stops short of explicitly listing when NOT to use it in favor of other voucher types.

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