Skip to main content
Glama
Fatture in Cloud MCP Server

Fatture in Cloud MCP Server

update_received_document

Idempotent

Modify a received expense, passive credit note, or passive DDT by passing only changed fields; include a payments_list covering the full gross amount.

Instructions

Modifica un documento ricevuto (spesa, nota di credito passiva, DDT passivo): passa solo i campi da cambiare. L'API richiede payments_list che copra l'intero amount_gross anche per spese semplici.

Input Schema

NameRequiredDescriptionDefault
idYes
dataYes
company_idNoAzienda su cui operare. Default: FIC_COMPANY_ID o l'unica azienda del token

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.5.1

TDQS

A3.5/5.0
Behavior3/5

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

The idempotentHint annotation already signals repeated calls are safe, and the description reinforces this with partial-field semantics. It also adds a genuinely non-obvious API constraint — payments_list must cover the entire amount_gross even for simple expenses — which is exactly the kind of behavioral detail annotations cannot convey. It still omits what happens to fields not passed (merge vs replace on nested objects) and any permission requirements.

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?

Two tight sentences with the scope stated first and the hard constraint second; no filler. The second sentence is jargon-dense (payments_list, amount_gross) but that terminology is load-bearing rather than wasteful.

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 mutation tool with a nested free-form payload, no output schema, and thin schema coverage, the description supplies the two things an agent most needs: partial-update semantics and the mandatory payments_list coverage rule. Missing are the shape of valid data fields and any confirmation of what the response returns.

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 only 33% and the central 'data' parameter is an untyped free-form object with no description, so the description must carry the burden. It does clarify that data should contain only changed fields and flags the payments_list/amount_gross rule, but it never enumerates or hints at the other fields data accepts, leaving the largest parameter largely opaque.

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 opens with a specific verb and resource ('Modifica un documento ricevuto') and enumerates the supported document types (spesa, nota di credito passiva, DDT passivo). It implicitly separates itself from update_issued_document by naming the received side, but never names a sibling tool explicitly.

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

Usage Guidelines3/5

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

'Passa solo i campi da cambiare' gives useful partial-update guidance, telling the agent not to resend the whole document. However, there is no guidance on when to prefer this over alternatives such as mark_paid, transform_document, or register_pending_received_documents, and no prerequisites are 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