Skip to main content
Glama
szamlazz-mcp

szamlazz-mcp

by MrSakal

create_receipt

Destructive

Issue a new receipt with itemized lines and an optional payment breakdown, including optional PDF output for Számlázz.hu.

Instructions

Issue a new receipt with items and an optional payment breakdown.

Input Schema

NameRequiredDescriptionDefault
itemsYesReceipt items
callIdNoCall id (prevents duplicates)
prefixYesReceipt number prefix (required, e.g. 'NYGTA-2024-')
commentNoComment
companyNoCompany name (or part of it) or Számlázz.hu company id. Optional: defaults to the login's current company. list_companies lists the choices.
currencyNoCurrency (default: HUF)
paymentsNoPayment breakdown (optional)
includePdfNoInclude the PDF in the answer (default: false)
pdfTemplateNoPDF template id
exchangeRateNoExchange rate
buyerLedgerIdNoBuyer's general ledger id
paymentMethodYesPayment method (cash, card, ...), as printed, in the receipt's language
exchangeRateBankNoBank of the exchange rate (non-HUF)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true, idempotentHint=false and openWorldHint=true, so the description's job is to add context like irreversibility, finalization/legal issuance, or numbering side effects. It adds none of that: it does not say the receipt is finalized on issue, whether it can be voided (a sibling reverse_receipt exists), or that callId is the only duplicate guard. With rich annotations supplied, this is a real gap rather than a contradiction.

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?

A single front-loaded sentence with no filler, and the required content (items) plus optional element (payment breakdown) are stated in order of importance. It is efficient, though its brevity is achieved by omitting behavior rather than by tight editing.

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?

For a 13-parameter, legally meaningful creation tool with nested item arrays and no output schema, the description says nothing about what is returned or what happens on success. The schema covers all fields, so an agent can technically call it, but the definition is thin relative to the operation's weight and irreversibility.

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 including the 13 top-level ones and nested item fields is already documented. The description only restates that items are required and payments optional, adding no format, default, or constraint detail beyond the schema. Baseline 3 applies when the schema carries the semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ("Issue") and resource ("new receipt") and names the payload shape (items plus optional payment breakdown). An agent can tell it creates a receipt rather than an invoice. It never names a sibling such as create_invoice or send_receipt to sharpen the boundary, so it stops short of a 5.

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

Usage Guidelines2/5

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

There is no when-to-use or when-not-to-use guidance, no mention of prerequisites (company selection, prefix numbering), and no routing to alternatives like create_invoice or send_receipt. The sentence is purely descriptive of what gets sent, leaving the agent to infer the context in which issuing a receipt is appropriate.

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