Skip to main content
Glama
stornoro

Storno CLI

Official
by stornoro

declaration_pdf

Read-onlyIdempotent

Renders validated declaration XML into ANAF's upload-ready PDF, embedding the XML and required attachment zip (e.g., C168), so you can submit or upload it in SPV.

Instructions

Produce the PDF ANAF accepts for upload: DUKIntegrator renders the validated XML into ANAF's PDF form with the XML embedded and, where required (C168), a zip of attachments embedded (the scanned contract for a registration, the addendum for an amendment, the termination document or the landlord's sworn statement — document_generate — for a termination). Pass local file paths in attachmentPaths and/or base64 attachments (PDF, JPG, PNG, TIFF; 10 MB total). With outFile the PDF is written locally, ready for agent_submit_declaration_pdf (qualified certificate) or manual upload in SPV. Public, nothing stored.

Input Schema

NameRequiredDescriptionDefault
xmlYesThe validated declaration XML from declaration_build
typeYesForm code, e.g. C168
outFileNoPath where the PDF is written; when omitted the response carries pdfBase64
attachmentsNo
attachmentPathsNoLocal files to put in the zip

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.28

TDQS

A4.7/5.0
Behavior5/5

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

Annotations cover the safety profile (readOnly, non-destructive, idempotent, closed-world) and the description adds genuine operational context: which attachments are required per case (registration contract, amendment addendum, termination document or sworn statement), accepted formats, a 10 MB total cap, where the file lands when outFile is set, and that nothing is stored server-side.

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?

Front-loaded with the outcome ('Produce the PDF ANAF accepts'), then constraints, then next steps. The embedded parentheticals are dense but each carries decision-relevant detail (which document type satisfies which filing), so little could be cut without losing guidance.

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?

No output schema exists, yet the description explains both return modes (pdfBase64 in the response, or a written outFile) and the success handoff to submission. For a 5-parameter tool with two required inputs, nothing an agent needs to call it correctly is missing.

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%, and the description still adds meaning by distinguishing the two attachment channels (local file paths in attachmentPaths vs base64 attachments) and by stating the aggregate size limit and permitted MIME types that the schema does not encode. It repeats that outFile causes a local write rather than adding new detail there.

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 concrete verb and artifact: renders the validated XML into the exact PDF form ANAF accepts, with the XML (and for C168 a zip of attachments) embedded. It is clearly distinguishable from declarations_download_pdf, invoices_pdf and receipt PDF tools because it names DUKIntegrator and ANAF's upload form as the target.

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 strong downstream context: with outFile the output is ready for agent_submit_declaration_pdf (qualified certificate) or manual SPV upload, and it names document_generate as the source of the sworn statement for a termination. It never explicitly contrasts itself with sibling PDF/declaration tools, so the when-not path is implicit rather than stated.

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

Deploy Server

Other Tools