Riferimento degli strumenti
Tutti i 26 strumenti MCP di Certivant raggruppati per compito — smistamento della coda, invio e monitoraggio dei moduli, azioni sul ciclo di vita, spiegazione delle decisioni e rischio di rete, sessioni di verifica Live ID, controlli sul registro KYB e reportistica — con ciò che restituiscono e ciò che deliberatamente non fanno.
Il catalogo contiene 26 strumenti per impostazione predefinita, volutamente limitati a circa questo numero. Oltre tale soglia, l'accuratezza con cui il modello sceglie gli strumenti peggiora in modo misurabile, quindi una nuova funzione sostituisce o consolida invece di aggiungersi: list_expiring_documents accetta un argomento mode invece di produrre due strumenti fratelli, e gli strumenti di verifica Live ID raccolgono elenco e dettaglio in uno solo, e riprogrammazione, annullamento e reinvito in un altro. Altri tre strumenti di conformità esistono dietro flag dell'operatore (vedi la fine di questa pagina).
Ogni strumento è annotato in modo onesto (readOnlyHint, destructiveHint, idempotentHint), così il Suo host può controllare quelli con conseguenze reali. Cinque strumenti inviano email reali (o SMS). Due sono distruttivi. Tutti gli altri leggono.
send_form_to_customer, send_verification_reminder e renew_verification inviano email a clienti reali. Nessuno di essi è idempotente: chiamarne uno due volte invia due email. Se una chiamata restituisce un errore, controlli list_form_deliveries prima di riprovare, anziché reinviare alla cieca.
Affrontare la giornata
| Strumento | Restituisce | Non restituisce |
|---|---|---|
get_todays_queue | Un'unica istantanea aggregata per l'intera organizzazione: conteggi per stato, inoltrate e in attesa di secondo controllo, fermi (nessuna attività da N giorni, predefinito 7), controlli sulle sanzioni falliti, inoltri oltre il termine di revisione (SLA), ricontrolli KYC in scadenza, più l'attività delle ultime 24 ore e dei 7 giorni. | Solo conteggi — nessun ID di richiesta, nessun nome, nessun dato del richiedente. Per agire su una categoria, prosegua con gli strumenti di elenco. |
find_verification | Ricerca libera per nome della persona, email, nome dell'azienda o riferimento esterno. Un elenco compatto per la disambiguazione — ID, stato, tipo, decisione, punteggio, timestamp, giorni dall'ultimo aggiornamento — più il numero di corrispondenze, così una ricerca ambigua resta visibilmente ambigua. | Gli indirizzi email non vengono restituiti per impostazione predefinita. I nomi dei richiedenti arrivano dentro la busta non attendibile. |
list_stalled_verifications | Pratiche non concluse senza attività da N giorni (predefinito 7), ciascuna con daysWaiting e i pendingDocTypes ancora dovuti. È l'elenco di «chi devo sollecitare?» — queste pratiche attendono il richiedente. | L'arretrato lato revisore. Inoltri e violazioni dell'SLA sono in get_todays_queue. Abbinare il filtro a uno stato terminale non restituisce nulla. |
whats_changed_since | Passaggio di consegne tra turni: tutto ciò che è stato toccato da un dato istante, dal più vecchio, raggruppato per lo stato attuale, con il tempo trascorso da ogni spostamento. | Orari in linguaggio naturale. since deve essere una data-ora ISO-8601 completa, come 2026-07-18T00:00:00.000Z — una data senza orario viene rifiutata. |
get_verification_status | Una forma di stato essenziale per un ID di richiesta — stato, timestamp, decisione, punteggio complessivo. Abbastanza leggera da poter essere interrogata. | Nessun dato personale, con qualsiasi impostazione. |
Inizi da get_todays_queue, poi approfondisca. Non ricostruisca la coda facendo un ciclo su find_verification — il limite di frequenza per tenant è di 120 richieste al minuto, e un ciclo lo esaurisce prima di terminare.
Far avanzare il lavoro
| Strumento | Restituisce | Note |
|---|---|---|
start_verification | Crea una verifica e restituisce il link che usa il richiedente, in un'unica chiamata. | Non invia email — il link torna a Lei affinché lo consegni. Non idempotente. |
start_verifications_batch | Fino a 50 righe in una chiamata. Ogni riga viene convalidata e creata in modo indipendente; un'email errata fa fallire solo quella riga, e le righe riuscite non vengono annullate. I fallimenti riportano l'index nel Suo elenco e il motivo. | Da usare al posto di un ciclo su start_verification. Segnali i fallimenti uno per uno — mai come «alcuni sono falliti». |
send_form_to_customer | Invia un'email reale. Crea il richiedente, crea la richiesta, genera il link personale, invia l'invito e restituisce un identificativo di tracciamento per get_delivery_status. | Non idempotente — due volte significano due richiedenti, due richieste, due email. Ottenga prima l'ID del modulo da list_verification_forms; un'ipotesi restituisce 404. |
send_verification_reminder | Invia un'email reale. Sollecita un richiedente con un link nuovo che riprende la stessa richiesta — stato e documenti già caricati vengono conservati. | Solo mentre la pratica è in PENDING_UPLOAD o DOCUMENTS_READY. Limitato lato server — vedi Sicurezza e limiti. |
renew_verification | Invia un'email reale. Crea una nuova richiesta per lo stesso richiedente, collegata all'originale, che richiede gli stessi documenti, e invia un avviso di riverifica via email. | L'originale resta invariato. Non idempotente — ogni chiamata è un altro rinnovo e un'altra email. Trovi prima le pratiche in scadenza con list_expiring_documents in modalità renewals. |
resubmit_verification | Riporta una richiesta REJECTED a PENDING_UPLOAD, così il richiedente può riprovare — la soluzione abituale per una foto sfocata o un documento scaduto. | Distruttivo. Elimina i controlli e il punteggio di rischio esistenti, quindi explain_verification_decision non potrà più spiegare il rifiuto in seguito. Legga prima la spiegazione. Non invia email. |
list_verification_forms | Il catalogo da cui inviare: ID, nome, tipo (kyc = persona fisica, kyb = azienda), stato, slug pubblico. Per impostazione predefinita solo i moduli pubblicati. | Nessun dato del richiedente di alcun tipo. Un modulo non pubblicato indirizza il destinatario al flusso di caricamento generico, invece che al modulo che intendeva. |
list_form_deliveries | Tutti i destinatari a cui è stato inviato un dato modulo e lo stato di ciascuno — sent, started, completed, bounced, failed. status: sent è l'elenco per i solleciti. | Gli indirizzi email dei destinatari sono mascherati per impostazione predefinita. |
get_delivery_status | Il ciclo di vita completo di un invio: inviato, consegnato, aperto, avviato, completato, quanti solleciti sono stati inviati e quando è partito l'ultimo. | Si fidi di startedAt / completedAt — sono osservati lato server. openedAt dipende dal tracciamento di apertura del client di posta, che la maggior parte dei client blocca; un openedAt nullo non è la prova che la persona abbia ignorato l'email. |
Capire una decisione
| Strumento | Restituisce | Non restituisce |
|---|---|---|
explain_verification_decision | Il ragionamento effettivo dello scorer per una richiesta: quali squalifiche di primo livello o trigger di revisione di secondo livello sono scattati, quali fattori di scoring sono falliti e su quali evidenze, quali non è stato possibile valutare e perché, il punteggio rispetto alla soglia applicata, eventuali regole di policy scattate, segnali di allarme del rischio di rete con il modo in cui ciascuno è stato rilevato, e un riepilogo scritto della pratica. Segnala anche quando un revisore umano ha sovrascritto il verdetto automatico. | Vedi la lacuna qui sotto — il ragionamento strutturato non è presente su ogni richiesta. |
get_verification_result | L'esito: stato, decisione, punteggio di affidabilità, ogni controllo eseguito e se è stato superato, un conteggio superato / fallito / non applicabile sui fattori di scoring, quali squalifiche o trigger di revisione sono scattati, redFlags e un riepilogo network (VPN, proxy, Tor, data center o relay rilevati, come, il paese e l'operatore di rete dell'IP, se il fuso orario del dispositivo corrisponde), quali documenti sono stati forniti e cosa deve ancora il richiedente. | Nessun dato personale per impostazione predefinita — nessun nome, data di nascita, numero di documento, indirizzo o testo OCR. include_pii: true amplia la risposta ai campi di identità, ed è registrato. |
reasoningAvailable: false è comune. Il ragionamento strutturato dello scorer (verdictMeta) viene registrato solo sulle verifiche valutate da quando è stato introdotto, quindi molte — in pratica la maggior parte delle richieste meno recenti — restituiscono reasoningAvailable: false e nessuna scomposizione dei fattori. In un controllo a campione su un tenant reale, nessuna delle 12 richieste più vecchie lo aveva, e solo 5 delle 12 più recenti. Quando lo vede, descriva ciò che mostrano lo stato e i controlli, e dichiari che il ragionamento non è stato registrato. Non deduca perché lo scorer ha deciso.
Rischio di rete
Il collegamento di ogni verifica viene controllato dal rilevamento proprio di Certivant — nessun fornitore terzo — per reti Tor, VPN, proxy, hosting / data center e relay di privacy. Entrambi gli strumenti sopra lo riportano come redFlags più un oggetto network:
detected— i tipi trovati;detections— ciascuno con la sua fonte (un elenco di IP aggiornato ogni giorno, il nome dell'operatore, una perdita WebRTC o DNS, un IP condiviso da molti richiedenti, oppure un tempo di andata e ritorno del browser molto più lungo di quello misurato all'edge).ipCountry,networkOperator,deviceTimezoneMatchesIp,ipToGpsDistanceKm,likelyRealNetworkCountry.- Mai l'indirizzo IP, il nome host o la città — sono dati personali.
assessed: falsesignifica non verificato (nessun IP del richiedente, per esempio nelle richieste create via API) — mai «pulito».
Un segnale di allarme descrive la connessione, non la persona: gli utenti attenti alla privacy e quelli aziendali usano le VPN. Ogni organizzazione sceglie, per tipo, se un rilevamento respinge, inoltra, si limita a segnalare oppure viene ignorato.
Verifica dal vivo Live ID
| Strumento | Restituisce | Note |
|---|---|---|
list_live_verifications | Senza conference_id: sessioni filtrate per stato (scheduled, in_progress, completed, cancelled, oppure expired = mai svolta), richiesta, riferimento o intervallo di date. Con conference_id: il dettaglio di quella sessione — conduttore, se il richiedente è entrato e ha dato il consenso, impostazioni della sessione (caricamento di file da parte del richiedente, verifica automatica dei documenti ricevuti), decisione ed esito, registrazione e certificato. | Nessun nome o email del richiedente, a meno di include_pii: true insieme a un conference_id (tracciato). |
schedule_live_verification | Pianifica una sessione per una richiesta esistente (scheduled_for con un fuso orario, oppure start_now), con facoltativi applicant_file_upload e auto_verify_documents. | Invia email o SMS al richiedente. Non idempotente; una richiesta con una sessione accessibile restituisce 409. Il link di accesso una tantum viene restituito solo nel testo — lo condivida solo con il richiedente. |
manage_live_verification | action: reschedule (i partecipanti vengono avvisati), resend_invitation (nuovo link, il vecchio smette di funzionare), oppure cancel. | Annotato come distruttivo: l'annullamento è irreversibile. Confermi prima di annullare o di reinvitare. |
KYB
| Strumento | Restituisce | Note |
|---|---|---|
get_business_record | Ciò che l'azienda ha dichiarato su una richiesta BUSINESS: ragione sociale, numero di iscrizione, paese e tipo di costituzione, stato KYB, il rappresentante autorizzato e come è stato abbinato, più amministratori e titolari effettivi dichiarati con le percentuali di proprietà e l'eventuale richiesta KYC collegata che verifica un UBO. | Una pura lettura di ciò che Certivant detiene. Non effettua alcuna chiamata al registro e non ha costi. Non Le dice se una qualsiasi di queste informazioni sia vera. |
check_company_registry | La differenza tra il registro societario pubblico e ciò che l'azienda ha dichiarato: quali amministratori dichiarati il registro non elenca, e quali amministratori del registro non sono mai stati dichiarati. La differenza è la risposta; il record grezzo è prova a sostegno. | Non è una lettura — effettua una chiamata esterna fatturabile al registro e, in caso di corrispondenza, contrassegna il record KYB come verified. La chiami una volta per azienda, mai in un ciclo. |
submit_business_details | Registra i dati KYB di un'azienda su una richiesta BUSINESS esistente — ragione sociale, numero di iscrizione, paese e tipo di costituzione, amministratori, titolari effettivi. | Effetti collaterali oltre al record: avvia una ricerca nel registro in background e crea una richiesta di verifica INDIVIDUAL separata per ogni titolare effettivo con una quota pari o superiore al 25% (la soglia del GAFI). Non la chiami mai in via speculativa, né per «correggere un refuso». |
Limitazione nota: check_company_registry attualmente non funziona con il registro reale. La chiamata al registro a monte restituisce 401, perché la chiave API di OpenCorporates non viene inoltrata, quindi il confronto degli amministratori non è dimostrato con una vera corrispondenza nel registro. Finché non viene risolto, si aspetti un errore anziché una differenza, e non costruisca un workflow che dipenda dal percorso positivo di questo strumento. get_business_record e submit_business_details non sono interessati.
Reportistica e documenti
| Strumento | Restituisce | Non restituisce |
|---|---|---|
get_compliance_metrics | Il riepilogo dell'intero tenant: tasso di approvazione e il funnel completo (inviate / in attesa / in elaborazione / approvate / rifiutate / inoltrate), volume per tipo di documento, esiti per nazionalità, un andamento giornaliero di 30 giorni e tassi di fallimento per controllo che mostrano quale controllo fallisce più spesso — OCR, confronto del volto, vivacità, sanzioni. | Non è un elenco dei motivi di rifiuto. Lo strumento non produce i «principali motivi di rifiuto»; fornisce tassi di fallimento dei controlli. Inoltre nessun dato di riga e nessun dato personale. |
list_expiring_documents | Due modalità. documents (predefinita) — verifiche i cui documenti caricati scadono o diventano obsoleti entro N giorni (un documento d'identità oltre la scadenza, oppure un documento di supporto datato più vecchio della finestra di recenza del tenant). renewals — verifiche per cui è dovuto il loro ricontrollo periodico (expiresAt della richiesta), scadute o in scadenza entro N giorni. | Sono domande diverse. Un passaporto valido su una richiesta dovuta al rinnovo annuale compare solo in renewals. Esegua la modalità che Le è stata effettivamente richiesta. |
list_verification_documents | Solo metadati per ogni documento di una richiesta: tipo (passport, id_card, drivers_license, selfie, business_reg, utility_bill, bank_statement), lato, stato di elaborazione, tipo e dimensione del file, orario di caricamento, e le date estratte dal documento stesso, incluso se risulta scaduto. | Nessuna immagine, nessun testo OCR, nessun numero di documento, nessun nome, nessun indirizzo, nessun MRZ — il blob OCR è escluso a livello strutturale e non può essere ottenuto con nessuna impostazione. |
get_document_download_url | Un URL firmato a breve durata (15 minuti), così che una persona possa visualizzare un documento caricato, più la sua durata. | Non restituisce il file, e l'agente non deve recuperarlo — un documento d'identità portato in una conversazione è una scansione del passaporto copiata nei log di un fornitore di modelli. Il link non richiede credenziali, quindi lo tratti come un segreto: lo consegni alla persona che l'ha chiesto e si fermi lì. |
Strumenti di conformità a gate
Esistono tre strumenti, ma sono disattivati per impostazione predefinita. Il gate viene applicato alla registrazione, quindi con il flag non impostato lo strumento non compare affatto in tools/list. Ciascuno richiede il proprio flag impostato esattamente su "true" nel server MCP, e una chiave API con l'ambito kyc:manage:
| Strumento | Flag | Cosa fa |
|---|---|---|
decide_verification | CERTIVANT_MCP_ALLOW_DECISIONS | Registra un'approvazione o un rifiuto manuale. Una decisione regolamentata presa in un contesto che contiene testo controllato dal richiedente — la abiliti deliberatamente. |
export_applicant_data | CERTIVANT_MCP_ALLOW_EXPORT | Avvia un job di esportazione dei dati GDPR. |
erase_applicant | CERTIVANT_MCP_ALLOW_ERASURE | Cancellazione GDPR — irreversibile; richiede di ripetere una conferma. |
Cosa non è nel catalogo
get_fraud_signals,explain_to_applicant,submit_verification— non distribuiti.- Impostazioni (soglie, azioni sul rischio di rete, informativa sulla privacy, ruoli) — gestite solo nella dashboard; la chiave API del connettore non può leggerle.
Installazione
Colleghi qualsiasi client MCP — Claude, Cursor, VS Code, OpenAI Codex, Gemini, Mistral — al server MCP di Certivant usando la Sua chiave API Certivant esistente come token bearer.
Risorse e prompt
Le quattro risorse MCP che il modello può recuperare come contesto senza costi e i cinque flussi di lavoro predefiniti basati su prompt — smistamento del mattino, invio e monitoraggio, sollecito dei fermi, report mensile di conformità e analisi di una pratica.