Skip to main content
Glama
cmendezs

mcp-fattura-elettronica-it

generate_fattura_semplificata

Create simplified Italian electronic invoices, credit notes, and debit notes as VFSM10 XML for transactions up to EUR 400, returning the XML and filename for SDI.

Instructions

Assemble a complete FatturaSemplificata VFSM10 XML document.

Use this for simplified invoices (TD07), simplified credit notes (TD08), and simplified debit notes (TD09) per art. 21-bis DPR 633/72. These are valid for transactions up to EUR 400 (tax-inclusive).

The simplified format has a flatter structure than the ordinary FatturaPA: no per-line VAT breakdown (DettaglioLinee/DatiRiepilogo), no DatiPagamento in the body. Each DatiBeniServizi entry carries its own Descrizione, Importo, and DatiIVA.

On success returns {'xml': str, 'filename': str, 'length_bytes': int}. On error returns {'error': ''}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
allegatiNoOptional list of attachments. Each: NomeAttachment, Attachment (base64), optional FormatoAttachment, DescrizioneAttachment.
dati_generaliYesGeneral document data: TipoDocumento (TD07/TD08/TD09), Divisa, Data (YYYY-MM-DD), Numero. Optional: BolloVirtuale ('SI'), DatiFatturaRettificata (NumeroFR, DataFR, ElementiRettificati) for TD08/TD09.
dati_beni_serviziYesList of goods/services entries. Each entry: Descrizione (max 1000 chars), Importo (decimal, tax-inclusive amount), DatiIVA (Imposta and/or Aliquota), optional Natura code, optional RiferimentoNormativo.
dati_trasmissioneYesTransmission data: IdTrasmittente (IdPaese + IdCodice), ProgressivoInvio, CodiceDestinatario (7-char, or '0000000' for PEC), and optionally PECDestinatario. FormatoTrasmissione is always FSM10.
cedente_prestatoreYesSeller data: IdFiscaleIVA (IdPaese + IdCodice), optional CodiceFiscale, Denominazione or Nome+Cognome, Sede (Indirizzo, CAP, Comune, Nazione), RegimeFiscale (RF01-RF19).
cessionario_committenteYesBuyer data: IdentificativiFiscali (IdFiscaleIVA and/or CodiceFiscale), optional AltriDatiIdentificativi (Denominazione or Nome+Cognome, Sede).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior4/5

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

No annotations are present, so the description carries the full behavioral burden. It discloses the flat structural behavior, the absence of DatiPagamento and per-line VAT breakdown, and the exact success/error return contracts. It stops short of stating whether any external submission, side effects, or XSD validation occur, which would make it fully transparent.

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?

The main verb and resource are front-loaded, and each sentence adds a distinct, decision-relevant fact: document types, amount threshold, structural differences, and return contract. There is no redundant or filler wording.

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 complex, nested XML-document tool with no annotations and no explicit sibling routing, the description gives enough context to select and call it correctly: which document types it supports, what format it produces, how it differs from the ordinary format, and exactly what a success or error response looks like.

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?

The input schema already provides rich descriptions for all 6 parameters and nested objects, and coverage is 100%, so the baseline is 3. The description adds useful context about the overall document but does not materially explain individual parameter semantics beyond what the schema already states.

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?

Opens with a specific action and artifact: 'Assemble a complete FatturaSemplificata VFSM10 XML document.' It then names the exact document types (TD07/TD08/TD09), which clearly distinguishes it from ordinary-FatturaPA siblings such as generate_fattura_xml.

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?

Provides direct selection criteria: 'Use this for simplified invoices (TD07), simplified credit notes (TD08), and simplified debit notes (TD09)' and limits applicability to transactions 'up to EUR 400.' It contrasts the simplified format with the ordinary FatturaPA, but it does not explicitly name the alternative tool to use when those conditions are not met.

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/cmendezs/mcp-fattura-elettronica-it'

If you have feedback or need assistance with the MCP directory API, please join our Discord server