Skip to main content
Glama

Verika - Verifica P.IVA, Codice Fiscale e IBAN

Server Details

Verifica partita IVA, codice fiscale e IBAN italiani con dati ufficiali (VIES, IPA, ISTAT)

Ownership verified
Status
Healthy
Uptime
100.0% over 20 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
JackPons/partita-iva-mcp
GitHub Stars
0

TDQS

A4/5.0

Scored across 7 tools

Disambiguation4/5

Most tools target distinct operations: offline validators (valida_*) vs. online checks (verifica_partita_iva, controlla_sanzioni) are clearly separated. However, scheda_soggetto aggregates VIES, sanctions, and formal checks already offered by standalone tools, and valida_codice_fiscale also applies the VAT check for legal persons, creating mild overlap.

Naming Consistency4/5

Nearly all names follow a snake_case Italian verb_noun pattern (cerca_comune, valida_iban, verifica_partita_iva), which is predictable. The one deviation is scheda_soggetto, a noun phrase rather than a verb, but it remains readable and in the same language/style.

Tool Count5/5

Seven tools is well-scoped for an Italian VAT/CF/IBAN verification and background-check server. Each tool covers a distinct verification layer (offline validation, VIES, sanctions, ISTAT lookup, aggregated profile) and none feels redundant or filler.

Completeness4/5

Core lifecycle coverage is strong: formal and online VAT checks, CF validation, IBAN validation, sanctions screening, municipality lookup, and an aggregated subject profile. Minor gaps include no standalone address-normalization or ISTAT-code reverse lookup, and IBAN account existence is explicitly out of scope, but these are reasonable boundaries.

Available Tools

7 tools
cerca_comuneCerca comune italianoA
Read-onlyIdempotent
Inspect

Trova un comune italiano per nome (con provincia opzionale) o per codice catastale, dalla tabella ISTAT locale. Restituisce denominazione canonica, provincia, regione, codice catastale e codice ISTAT.

NameRequiredDescriptionDefault
nomeNoNome del comune, es. 'Atri'
provinciaNoSigla provincia per disambiguare, es. 'TE'
codice_catastaleNoCodice catastale, es. 'A488' (Atri)

Output Schema

NameRequiredDescription
comuneNo
erroreNo
omonimiNoComuni con lo stesso nome, se la provincia non basta a sceglierne uno
regioneNo
tabellaNo
trovatoYes
provinciaNo
codice_istatNo
codice_catastaleNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, closed-world, non-destructive), so the bar is lower. The description adds genuinely new context by naming the source as a local ISTAT table (offline lookup, authoritative canonical formatting) rather than repeating the annotations; it is silent only on not-found behavior.

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?

Two sentences: the first front-loads what is searched and how, the second enumerates the returned fields. No filler, no restatement of the tool name, and nothing ordered poorly.

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?

An output schema exists, so the field list in the description is a convenience rather than a necessity, and the annotations cover the safety profile. For a 3-parameter optional-argument lookup this is nearly complete; only the not-found/multiple-match behavior is left unstated.

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% and every parameter has an example (e.g. 'Atri', 'TE', 'A488'), so the schema carries the semantics. The description only restates the lookup-by-name-or-cadastral-code framing and the optionality of provincia, matching the baseline for schema-documented parameters.

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?

Specific verb ("Trova") plus specific resource ("un comune italiano") plus the two lookup keys (nome/provincia, codice catastale) and the data source. None of the sibling tools (validators for fiscal codes, IBANs, VAT, sanctions) does anything similar, so an agent can route here without ambiguity.

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?

The description states the two supported query modes and marks provincia as optional, which conveys that it exists to disambiguate homonymous comuni. It does not say what happens if both nome and codice_catastale are supplied, nor what to do when a name matches multiple comuni, so the guidance is clear but without exclusions.

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

controlla_sanzioniScreening sanzioni UEA
Read-onlyIdempotent
Inspect

Confronta un nome (persona o ente) con la lista consolidata delle sanzioni finanziarie UE, con matching tollerante (ignora forme societarie e accenti). Restituisce le possibili corrispondenze con un punteggio 0-1. Screening indicativo, non un sistema AML certificato: 'da_verificare' significa che un umano deve controllare.

NameRequiredDescriptionDefault
nomeYesDenominazione o nome e cognome da verificare, es. 'Mario Rossi' o 'Esempio Trading S.r.l.'
sogliaNoSoglia di somiglianza (default 0.8)

Output Schema

NameRequiredDescription
esitoYes
fonteYes
sogliaYes
nome_cercatoYes
voci_in_listaYes
lista_aggiornata_alYes
possibili_corrispondenzeYes

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description then adds non-obvious behavior: tolerant matching that ignores corporate forms and accents, a 0-1 score, and the operational meaning of 'da_verificare' (a human must check). It does not cover rate limits or the exact response shape, but the added context is substantive.

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?

Three tightly packed sentences, front-loaded with the core action, then matching behavior, then the result-reading caveat. Every clause carries information and none is redundant.

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?

An output schema exists, so return values need not be restated; annotations cover safety and idempotency. The description still supplies purpose, matching semantics, score range, and result interpretation, leaving no gap an agent needs to call it correctly.

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 both parameters are already documented in the schema (including the soglia default 0.8 and range). The description mentions tolerant matching generally but does not elaborate on how the threshold interacts with the score, so it adds little beyond the schema 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 (confronta) and resource (lista consolidata delle sanzioni finanziarie UE), plus the matching mode (tollerante, ignorando forme societarie e accenti). No sibling tool performs sanctions screening, so the domain alone disambiguates it from the validators/cerca_comune.

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?

Usage context is implied (screen a person/entity name against sanctions) and the disclaimer 'Screening indicativo, non un sistema AML certificato' frames the appropriate scope. However, there is no explicit when-to-use/when-not or any pointer to alternatives, leaving the agent to infer the scenario.

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

scheda_soggettoScheda soggetto da partita IVAA
Read-onlyIdempotent
Inspect

Quadro completo di un soggetto italiano a partire dalla partita IVA: controllo formale, stato su VIES con denominazione e indirizzo normalizzato (via, CAP, comune ISTAT, provincia, regione), screening sanzioni UE sulla denominazione, se il soggetto è una Pubblica Amministrazione i dati IPA (codice IPA, PEC, sito), e per le imprese con LEI i dati GLEIF: forma giuridica, stato del LEI, controllante diretta, capogruppo e numero di controllate. Ogni blocco indica la fonte e se il servizio era raggiungibile. Per un'azienda privata la scheda non include soci, cariche o bilanci (dati a pagamento del Registro Imprese).

NameRequiredDescriptionDefault
sanzioniNoEsegui lo screening sanzioni sulla denominazione VIES (default true)
partita_ivaYesPartita IVA italiana, 11 cifre, es. '12345678903'

Output Schema

NameRequiredDescription
ipaYes
viesYes
gleifYesDati LEI (GLEIF); null se la P.IVA è formalmente errata
formaleYes
sanzioniYesnull se la P.IVA è formalmente errata, se VIES non dà una denominazione o se disattivato
riepilogoYesUna frase di sintesi per l'utente

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavior beyond that: each block reports its source and whether the backing service was reachable, which tells the agent to expect partial/degraded results rather than a hard failure, plus an explicit coverage limit for private companies.

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?

The purpose is front-loaded in the first clause, and the long enumeration is dense but each clause maps to a real output block, so it earns most of its length. It is a single run-on paragraph with heavyweight parenthetical lists, which slightly hurts scannability.

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 multi-source aggregation tool with an output schema and rich annotations, the description covers everything an agent needs: what is aggregated, the failure/partial-result model, that sources are labelled, and where the data stops. Nothing essential is missing.

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%: partita_iva is documented as 11 digits with an example, and sanzioni is documented with its default-true behavior. The description does not add syntax, format, or edge-case detail about either parameter, so the baseline of 3 applies.

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?

The description names a specific verb-and-resource combination (a complete profile of an Italian entity built from a VAT number) and then enumerates the exact blocks returned: formal validation, VIES status with normalized name/address, EU sanctions screening, IPA data for public bodies, and GLEIF/LEI data. This makes it immediately distinguishable from the narrower siblings (verifica_partita_iva, controlla_sanzioni, valida_partita_iva) without opening any schema.

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?

Usage is implied rather than stated: the breadth of the description suggests 'use this for a full profile', but no sibling is named and no condition for choosing this over verifica_partita_iva or controlla_sanzioni is given. The closing sentence does set a scope boundary (private-company profiles exclude soci, cariche e bilanci), which is a partial when-not, but it describes output scope rather than tool selection.

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

valida_codice_fiscaleValida codice fiscaleA
Read-onlyIdempotent
Inspect

Validazione offline di un codice fiscale italiano. Per le persone fisiche (16 caratteri) verifica il carattere di controllo, gestisce l'omocodia ed estrae sesso, data di nascita (anno con secolo dedotto) e codice catastale del comune. Per le persone giuridiche (11 cifre) applica il controllo della partita IVA.

NameRequiredDescriptionDefault
codice_fiscaleYesCodice fiscale, 16 caratteri o 11 cifre, es. 'RSSMRA85T10A562S'

Output Schema

NameRequiredDescription
datiNo
tipoNo
inputYes
erroreNo
validoYes
normalizzatoYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and openWorld=false, and the description's 'offline' claim is consistent with them. It adds real behavioral context beyond annotations: check-character verification, homocody ('omocodia') handling, century inference, and the different algorithm for 11-digit input.

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?

Three sentences, front-loaded with the core purpose and then the two input branches; no filler. It is dense but every clause carries distinct information about validation behavior.

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?

With annotations covering safety and an output schema covering extraction results, the description only needs to explain validation behavior, which it does for both entity types. Its remaining gaps are how invalid input is reported (error vs. result field) and when to prefer the sibling partita IVA tools.

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?

Only one parameter, and schema description coverage is 100% (it already states 16 characters or 11 digits with an example). The description restates the same format split per entity type but adds no syntax or edge-case detail beyond the schema, so baseline 3 is appropriate.

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?

States a specific verb+resource ('Validazione offline di un codice fiscale italiano') and spells out both branches: 16-character natural persons and 11-digit legal persons. It does not explicitly distinguish itself from the sibling valida_partita_iva, even though it claims to apply the VAT check for 11-digit input, leaving overlap unclear.

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?

The description implies when the tool applies (validating an Italian tax code, per length) but gives no explicit when-to-use/when-not guidance and never names alternatives. The overlap with valida_partita_iva/verifica_partita_iva for the 11-digit path is left for the agent to resolve.

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

valida_ibanValida IBANA
Read-onlyIdempotent
Inspect

Validazione offline di un IBAN (mod 97, lunghezza per paese). Per gli IBAN italiani verifica anche il CIN e scompone ABI, CAB e numero di conto. Non verifica l'esistenza del conto.

NameRequiredDescriptionDefault
ibanYesIBAN, con o senza spazi, es. 'IT60 X054 2811 1010 0000 0123 456'

Output Schema

NameRequiredDescription
inputYes
paeseNo
erroreNo
italiaNo
validoYes
formattatoNo
normalizzatoYes

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so safety is covered. The description adds substantive behavioral context beyond that: validation is performed offline and does not confirm account existence, plus it enumerates the actual checks performed and the derived fields. Only the return-shape detail is absent, but an output schema exists.

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?

Three tight sentences, each carrying distinct information: what is validated, the Italian-specific extras, and the explicit limitation. The scope and limitation are front-loaded with no filler.

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 one-parameter offline validator with an output schema, the description covers scope, algorithm, country-specific behavior, and the key negative guarantee. Nothing an agent needs to select or call the tool correctly is missing.

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?

With a single required parameter at 100% schema description coverage, the schema already documents the iban string and provides a spaced-format example. The description adds no formatting or syntax rules beyond what the schema states, so baseline 3 is appropriate.

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 and resource ('Validazione offline di un IBAN') and pins down the exact algorithm and scope: mod 97, per-country length, plus CIN/ABI/CAB decomposition for Italian IBANs. This distinguishes it clearly from siblings like valida_codice_fiscale and valida_partita_iva.

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?

Makes the operating context explicit ('offline') and gives a clear boundary condition ('Non verifica l'esistenza del conto'), which routes the agent away from any account-existence tool. It does not name specific sibling alternatives or state when a different validator should be preferred, so it stops short of full routing guidance.

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

valida_partita_ivaValida partita IVA (formale)A
Read-onlyIdempotent
Inspect

Controllo formale e offline di una partita IVA italiana: lunghezza, cifra di controllo, codice ufficio. Non dice se la partita IVA è attiva: per quello usa verifica_partita_iva.

NameRequiredDescriptionDefault
partita_ivaYesPartita IVA, con o senza prefisso IT, spazi o punti, es. 'IT 12345678903'

Output Schema

NameRequiredDescription
noteNo
inputYes
erroreNo
validaYestrue se supera il controllo formale
ufficioNoCodice ufficio (cifre 8-10)
normalizzataYesPartita IVA senza prefisso IT, spazi o punti

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false, destructiveHint=false, so the safety profile is covered. The description adds the meaningful behavioral fact that the check is 'offline' and 'formal only' — i.e. it does not query the registry for active status — which goes beyond the annotations. It does not, however, describe return shape, but an output schema exists to cover that.

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?

Two tightly written sentences. The scope statement is front-loaded and the negative constraint plus redirect to the sibling immediately follows, with zero filler.

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 single-parameter, read-only validation tool with rich annotations and an output schema, the description covers purpose, scope boundary, and the alternative tool. Nothing an agent needs to invoke it correctly is missing.

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% and the single parameter already documents accepted formats (with/without IT prefix, spaces, dots). The description adds no syntax or format detail beyond the schema, so the baseline 3 applies.

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 and resource (formal offline validation of an Italian VAT number) and enumerates exactly what is checked: length, check digit, office code. It also distinguishes itself from the sibling `verifica_partita_iva`, so an agent can pick the right tool without opening schemas.

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

Usage Guidelines5/5

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

Gives both the when (formal/offline structural check) and the when-not (it does not tell you whether the VAT number is active), and names the alternative tool to use for that case. Nothing is left to inference.

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

verifica_partita_ivaVerifica partita IVA su VIESA
Read-onlyIdempotent
Inspect

Verifica se una partita IVA italiana è attiva interrogando VIES (Commissione Europea). Restituisce anche denominazione e indirizzo quando disponibili. Se la partita IVA non supera il controllo formale, VIES non viene interrogato.

NameRequiredDescriptionDefault
partita_ivaYesPartita IVA italiana, 11 cifre, es. '12345678903'

Output Schema

NameRequiredDescription
viesYesnull se la partita IVA non supera il controllo formale
formaleYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description earns credit beyond them by disclosing the external VIES/European Commission dependency, that denomination and address are returned only 'quando disponibili', and that the upstream call is skipped when the formal check fails.

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?

Three short sentences, front-loaded with the core action, followed by return content and the failure behavior. No filler and nothing repeated from the title.

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?

An output schema exists, so return values need not be explained, and the description still summarizes what comes back. It covers the external dependency and the short-circuit case; the only gap is routing guidance against the sibling validation tools and any note on upstream availability or rate limits.

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?

Only one parameter and schema coverage is 100%, with the schema itself specifying 11 digits and an example, so the baseline is 3. The description adds no format, normalization or error-handling detail about 'partita_iva' beyond what the schema already provides.

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 states a specific verb and resource ('Verifica se una partita IVA italiana è attiva') plus the mechanism (VIES / Commissione Europea), so the agent knows exactly what it does. It does not name the closest sibling 'valida_partita_iva' explicitly, so the distinction is inferred from the formal-check sentence rather than stated.

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?

Usage is implied: the short-circuit sentence hints that a purely formal check is handled elsewhere, and the mention of 'attiva' implies a liveness check. But there is no explicit 'use this when / use valida_partita_iva instead' routing, which is exactly what sibling tools like valida_partita_iva and valida_codice_fiscale make necessary.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 7 tool updates
    • Changedcerca_comune1 field changed
      • changedInput schema / properties / codice_catastale / description
        Previous value: -"Codice catastale, es. 'A562'"New value: +"Codice catastale, es. 'A488' (Atri)"
    • Changedcontrolla_sanzioni1 field changed
      • changedInput schema / properties / nome / description
        Previous value: -"Denominazione o nome e cognome da verificare"New value: +"Denominazione o nome e cognome da verificare, es. 'Mario Rossi' o 'Esempio Trading S.r.l.'"
    • Changedscheda_soggetto1 field changed
      • changedInput schema / properties / partita_iva / description
        Previous value: -"Partita IVA italiana, 11 cifre"New value: +"Partita IVA italiana, 11 cifre, es. '12345678903'"
    • Changedvalida_codice_fiscale1 field changed
      • changedInput schema / properties / codice_fiscale / description
        Previous value: -"Codice fiscale, 16 caratteri o 11 cifre"New value: +"Codice fiscale, 16 caratteri o 11 cifre, es. 'RSSMRA85T10A562S'"
    • Changedvalida_iban1 field changed
      • changedInput schema / properties / iban / description
        Previous value: -"IBAN, con o senza spazi"New value: +"IBAN, con o senza spazi, es. 'IT60 X054 2811 1010 0000 0123 456'"
    • Changedvalida_partita_iva1 field changed
      • changedInput schema / properties / partita_iva / description
        Previous value: -"Partita IVA, con o senza prefisso IT, spazi o punti"New value: +"Partita IVA, con o senza prefisso IT, spazi o punti, es. 'IT 12345678903'"
    • Changedverifica_partita_iva1 field changed
      • changedInput schema / properties / partita_iva / description
        Previous value: -"Partita IVA italiana, 11 cifre"New value: +"Partita IVA italiana, 11 cifre, es. '12345678903'"
  2. 2 tool updates
    • Changedcerca_comune1 field changed
      • addedOutput schema / properties / omonimi
        Added value: +{
        +  "description": "Comuni con lo stesso nome, se la provincia non basta a sceglierne uno",
        +  "items": {
        +    "additionalProperties": {},
        +    "properties": {
        +      "codice_catastale": {
        +        "type": "string"
        +      },
        +      "provincia": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "provincia",
        +      "codice_catastale"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedscheda_soggetto2 fields changed
      • addedOutput schema / properties / gleif
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {},
        +      "properties": {
        +        "capogruppo": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "denominazione": {
        +                  "type": "string"
        +                },
        +                "lei": {
        +                  "type": "string"
        +                },
        +                "paese": {
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "lei"
        +              ],
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "controllante_diretta": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "denominazione": {
        +                  "type": "string"
        +                },
        +                "lei": {
        +                  "type": "string"
        +                },
        +                "paese": {
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "lei"
        +              ],
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "denominazione": {
        +          "type": "string"
        +        },
        +        "errore": {
        +          "type": "string"
        +        },
        +        "fonte": {
        +          "const": "GLEIF",
        +          "type": "string"
        +        },
        +        "forma_giuridica": {
        +          "type": "string"
        +        },
        +        "lei": {
        +          "type": "string"
        +        },
        +        "lei_aggiornato_al": {
        +          "type": "string"
        +        },
        +        "numero_controllate_dirette": {
        +          "type": "number"
        +        },
        +        "prossimo_rinnovo_lei": {
        +          "type": "string"
        +        },
        +        "sede_legale": {
        +          "additionalProperties": {},
        +          "properties": {
        +            "cap": {
        +              "type": "string"
        +            },
        +            "comune": {
        +              "type": "string"
        +            },
        +            "indirizzo": {
        +              "type": "string"
        +            },
        +            "paese": {
        +              "type": "string"
        +            }
        +          },
        +          "type": "object"
        +        },
        +        "servizio_disponibile": {
        +          "type": "boolean"
        +        },
        +        "stato_entita": {
        +          "type": "string"
        +        },
        +        "stato_registrazione_lei": {
        +          "description": "ISSUED = valido; LAPSED = non rinnovato",
        +          "type": "string"
        +        },
        +        "trovato": {
        +          "description": "false se il soggetto non ha un LEI (normale per le piccole imprese)",
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "fonte",
        +        "trovato",
        +        "servizio_disponibile"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "description": "Dati LEI (GLEIF); null se la P.IVA è formalmente errata"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "formale",
        -  "vies",
        -  "ipa",
        -  "sanzioni",
        -  "riepilogo"
        -]New value: +[
        +  "formale",
        +  "vies",
        +  "ipa",
        +  "gleif",
        +  "sanzioni",
        +  "riepilogo"
        +]
  3. 7 tool updates
    • First observedcerca_comune
    • First observedcontrolla_sanzioni
    • First observedscheda_soggetto
    • First observedvalida_codice_fiscale
    • First observedvalida_iban
    • First observedvalida_partita_iva
    • First observedverifica_partita_iva

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to verify Italian suppliers by looking up VAT numbers against EU VIES and checking public administration entities in the IndicePA dataset, with pay-per-call x402/USDC micropayments and a free offline VAT checksum endpoint.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides free read-only business checks for IBANs, EU VAT number format, Peppol e-invoice rules, supplier bank-detail changes, and CSV/XLSX data cleaning.
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to work with Italian FatturaPA electronic invoices and the SDI exchange system: extracting invoice data, running structural XML checks, detecting anomalies, aggregating multi-invoice reports, looking up SDI error codes offline, and verifying Italian or EU VAT numbers via VIES. Installs in one line and runs locally with fail-closed file access so untrusted documents can be processed safely.
    7
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables real-time verification of Polish NIP (Tax Identification Numbers) using the official Ministry of Finance API. Also supports checking if a bank account belongs to a specific NIP.
    2
    4 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.