banca-dati-merito-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@banca-dati-merito-mcp cerca sentenze del tribunale di Bologna sulla responsabilità medica"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
banca-dati-merito-mcp
Server MCP per consultare la Banca Dati di Merito del Ministero della Giustizia da un assistente AI (Claude, Cursor, Windsurf e altri client MCP): cerca, legge e aiuta a citare i provvedimenti civili di tribunali e corti d'appello e i relativi abstract, usando la tua sessione SPID, CIE, CNS o eIDAS.
Progetto non ufficiale. Non è affiliato al Ministero della Giustizia né approvato da esso. Usa le stesse API che il sito della Banca Dati usa nel tuo browser, con il tuo accesso personale.
Cosa fa
Strumento | A cosa serve |
| Controlla la sessione; apre il browser per l'accesso |
| Trasforma "tribunale di Bologna" nel criterio esatto |
| Sentenze, ordinanze e decreti per testo (tutte le parole, almeno una, frase esatta), criteri e date |
| Gli abstract, cioè le sintesi dei principi affermati |
| Metadati completi, esito, abstract collegati, gradi di giudizio, note personali |
| Testo integrale pseudonimizzato, a blocchi |
| Abstract completo con precedenti conformi e difformi |
| La sequenza dei gradi di giudizio |
| Salva il PDF in una cartella del tuo computer |
| Materie, ruoli, uffici per distretto, giudici, parole chiave, riferimenti normativi |
| Statistiche e navigazione dell'archivio |
| La tua area personale, in sola lettura |
Il server è in sola lettura: non crea, modifica né cancella nulla nella Banca
Dati. Include anche una skill che insegna all'assistente il metodo di ricerca e di
citazione (skills/ricerca-banca-dati-merito).
Related MCP server: Banca Dati di Merito MCP Server
Requisiti
Un'identità digitale con cui accedi alla Banca Dati: SPID, CIE, CNS o eIDAS.
Google Chrome o Microsoft Edge, per la finestra di accesso.
Node.js 22 o successivo, solo per Claude Code e gli altri client (Claude Desktop ha già il suo).
Dove funziona
Il server gira sul tuo computer, perché la sessione con la Banca Dati non deve uscirne (ADR 0001). Per questo funziona solo nei client che avviano programmi locali:
Funziona | Non funziona |
App desktop di Claude (estensione | claude.ai dal browser, app di Claude per smartphone |
Claude Code (plugin) | ChatGPT (browser, smartphone e chat dell'app desktop) |
Cursor, Windsurf, Zed, Codex e altri client MCP locali |
Nei client che accettano solo server remoti l'unico modo sarebbe esporre il server su internet, e con lui la tua sessione: non farlo.
Installazione
Claude Desktop
Scarica il file banca-dati-merito-mcp-<versione>.mcpb dalle
release e aprilo:
Claude Desktop lo installa come estensione. Nelle impostazioni dell'estensione puoi
scegliere la cartella per i PDF.
Claude Code
/plugin marketplace add andreadorizza/banca-dati-merito-mcp
/plugin install banca-dati-merito@banca-dati-meritoIl plugin installa sia il server sia la skill di ricerca.
Altri client MCP
Aggiungi il server alla configurazione del client (Cursor, Windsurf, Zed, ecc.):
{
"mcpServers": {
"banca-dati-merito": {
"command": "npx",
"args": ["-y", "banca-dati-merito-mcp@0.1.2"]
}
}
}Per Codex di OpenAI:
codex mcp add banca-dati-merito -- npx -y banca-dati-merito-mcp@0.1.2La skill di ricerca è specifica di Claude; negli altri client restano gli strumenti e le regole che il server stesso invia al modello.
Accesso
Chiedi all'assistente di accedere alla Banca Dati: lo strumento accedi apre una
finestra di Chrome o Edge sulla pagina di accesso del Ministero, dove entri come fai di
solito. Le credenziali non passano mai dal server.
In alternativa, da terminale:
npx banca-dati-merito-mcp@0.1.2 loginLa sessione dura circa due ore. Il browser usa un profilo dedicato, separato dal tuo, in cui il salvataggio delle password è disattivato.
Privacy e sicurezza
La sessione resta sul tuo computer, in un file leggibile solo dal tuo utente:
~/Library/Application Support/banca-dati-merito-mcp/su macOS,%APPDATA%\banca-dati-merito-mcp\su Windows,~/.config/banca-dati-merito-mcp/su Linux. Il server non ha componenti remoti e non contatta altri servizi oltre alla Banca Dati (ADR 0001). Unica eccezione: se la Banca Dati cambia certificato, il server può scaricare il certificato intermedio dal server dell'autorità di certificazione indicato nel certificato stesso.Quello che il server legge arriva al modello AI che usi: testi dei provvedimenti, metadati e, se li chiedi, le tue note e cartelle personali. Valuta il tuo fornitore AI di conseguenza.
Per uscire:
npx banca-dati-merito-mcp@0.1.2 logoutcancella la sessione e il profilo del browser dedicato.
Uso responsabile
La Banca Dati è pensata per la consultazione individuale. Il server lo rispetta:
una richiesta alla volta per ogni app che usa il server, con almeno un secondo tra l'una e l'altra; una richiesta annullata dal client non parte;
al massimo 50 risultati per chiamata (20 di norma);
nessuno strumento di download massivo.
Ogni chiamata usa il tuo accesso personale: un assistente che cerca in modo mirato protegge anche il tuo account.
Configurazione
Variabile | Predefinito | Effetto |
|
| Dove |
|
| Pausa minima tra due richieste (mai sotto 250) |
| cartella dati del sistema | Dove salvare sessione e profilo del browser |
Come funziona
Il sito della Banca Dati è un'applicazione che parla con un backend JSON
(/api/bdm/frontoffice/): GraphQL per ricerche e dettagli, REST per testi, documenti
e liste. Il server usa le stesse chiamate. Alcuni dettagli non ovvi:
La sessione è legata al browser che ha fatto l'accesso: il server ripete lo stesso User-Agent e gli stessi client hint, altrimenti la Banca Dati risponde 401.
Il certificato del sito non include il certificato intermedio, che i browser recuperano da soli e Node no. Il server lo include (
src/bdp/tls.ts) e, se il sito cambia certificato, lo scarica dall'indirizzo indicato nel certificato stesso, accettandolo solo se firmato da un'autorità già attendibile.Ogni risposta è validata: se la Banca Dati cambia formato, lo strumento restituisce un errore chiaro invece di dati vuoti.
Il glossario spiega i termini; docs/adr le scelte di progetto.
Sviluppo
npm install
npm run check # typecheck e test (Node 22.18+)
npm run buildscripts/record.ts registra una risposta per ogni endpoint, con la tua sessione, in
test/fixtures/raw/ (esclusa da git); scripts/pack-mcpb.sh crea il pacchetto per
Claude Desktop.
Crediti
Due progetti precedenti hanno aperto la strada: mcp-bdm-civile di avvocati-e-mac e mcp-bdm di slimmanolesta, il cui README ha documentato per primo il legame tra sessione e User-Agent. Il codice di questo progetto è scritto da zero.
Licenza
In English
An unofficial MCP server for Italy's Ministry of Justice Banca Dati di Merito (public database of first- and second-instance civil decisions). It searches and reads decisions and their abstracts with the user's own SPID/CIE/CNS/eIDAS session, which never leaves the user's machine. Read-only, rate-limited, Apache-2.0. Tools and documentation are in Italian because the data and its users are.
Available Tools
19 toolsaccediAccedi alla Banca DatiAIdempotent
Apre una finestra di Chrome o Edge sulla pagina di accesso della Banca Dati di Merito, dove l'utente entra con SPID, CIE, CNS o eIDAS. Ritorna subito: chiedi all'utente di completare l'accesso nella finestra, poi controlla con stato_sessione. La sessione dura circa due ore.
Inputs: no named parameters.
archivioArchivioARead-only
Conteggi dell'archivio della Banca Dati, come nella sezione Archivio del sito. Senza parametri: per distretto. Con distretto: per ufficio. Con ufficio: per materia, eventualmente limitati a un anno e a un mese. Per elencare i provvedimenti usa cerca_provvedimenti con il criterio ufficio e le date.
Inputs: anno, area, mese, materia, +2 more.
cartelle_personaliCartelle personaliARead-only
Elenca le cartelle personali che l'utente ha creato nella Banca Dati (sola lettura), con le sottocartelle.
Inputs: no named parameters.
cerca_abstractCerca abstractARead-only
Cerca gli abstract della Banca Dati, cioè le sintesi dei principi affermati nei provvedimenti. Usalo per gli orientamenti su una questione. Un abstract non è una massima ufficiale: prima di citarlo come principio di un provvedimento, verificalo nel testo con leggi_testo_provvedimento. Senza filtri restituisce gli ultimi pubblicati.
Inputs: da, area, date, testo, +7 more.
cerca_provvedimentiCerca provvedimentiARead-only
Cerca sentenze, ordinanze e decreti di merito nella Banca Dati, per testo, criteri di campo e date. Senza filtri restituisce gli ultimi pubblicati. Restituisce estremi, metadati, estratti evidenziati e gli abstract collegati. Gli estratti sono frammenti: non bastano per dire che cosa ha deciso un provvedimento. Prima di riferire il principio o l'esito di un provvedimento, leggine il testo con leggi_testo_provvedimento.
Inputs: da, area, date, testo, +7 more.
cerca_valoriCerca valoriARead-only
Cerca i valori di un singolo campo che contengono un testo: uffici, giudici, parole chiave o riferimenti normativi (per esempio '1453' trova 'ART. 1453 C.C.'). Per risolvere un nome senza sapere il campo usa risolvi_criteri.
Inputs: campo (required), testo (required), area.
elenca_ufficiElenca uffici giudiziariARead-only
Elenca gli uffici giudiziari presenti nella Banca Dati, raggruppati per distretto di corte d'appello. Con distretto restituisce solo gli uffici di quel distretto.
Inputs: distretto.
elenca_valoriElenca valoriARead-only
Elenca tutti i valori ammessi di materia o ruolo, nella forma esatta da usare come criterio di ricerca.
Inputs: campo (required), area.
frequenze_parole_chiaveFrequenza delle parole chiaveBRead-only
Restituisce le parole chiave più usate nei provvedimenti o negli abstract, con il numero di documenti.
Inputs: area, tipo.
leggi_abstractLeggi abstractARead-only
Restituisce un abstract completo: titolo, testo del principio, estremi del provvedimento da cui deriva, precedenti conformi e difformi collegati dalla Banca Dati, e le note personali dell'utente.
Inputs: id (required), area, includi_cartelle.
leggi_cartella_personaleLeggi cartella personaleARead-only
Restituisce il contenuto di una cartella personale dell'utente: provvedimenti, abstract e sottocartelle (sola lettura).
Inputs: id (required).
leggi_provvedimentoLeggi provvedimentoARead-only
Restituisce i metadati completi di un provvedimento: estremi, giudici, materia, parole chiave, riferimenti normativi, esito, gli abstract che ne derivano, i provvedimenti precedente e successivo nel giudizio, e le note personali dell'utente.
Inputs: id (required), area, includi_cartelle.
leggi_testo_provvedimentoLeggi testo del provvedimentoARead-only
Restituisce il testo integrale del provvedimento, pseudonimizzato dalla Banca Dati (le parti diventano Parte_1, Controparte_1 ecc.). I testi lunghi arrivano a blocchi: se continua è vero, richiama con da_carattere uguale a prossimo_da.
Inputs: id (required), da_carattere, max_caratteri.
pubblicazioniProvvedimenti pubblicatiARead-only
Quanti provvedimenti e abstract la Banca Dati ha pubblicato: totali per distretto oppure, con distretto, per ciascun ufficio del distretto. Riporta anche aree diverse da CIVILE.
Inputs: distretto.
ricerche_salvateRicerche salvateCRead-only
Elenca le ricerche che l'utente ha salvato nella Banca Dati (sola lettura).
Inputs: tipo.
risolvi_criteriRisolvi criteri di ricercaARead-only
Trasforma un nome detto dall'utente (un tribunale, una città, un giudice, un tema) nei criteri esatti della Banca Dati, con il campo giusto. Usalo prima di cercare per ufficio, distretto, giudice, parola chiave o materia: i criteri funzionano solo con il valore esatto.
Inputs: testo (required), area, tipo.
scarica_documentoScarica documentoA
Salva il PDF di un provvedimento o di un abstract nella cartella di download configurata dall'utente (predefinita: Download/banca-dati-merito) e restituisce il percorso del file. Non sovrascrive file esistenti. La Banca Dati può impiegare oltre mezzo minuto a generare il PDF. Per leggere il contenuto usa leggi_testo_provvedimento o leggi_abstract.
Inputs: id (required), tipo (required), nome_file.
stato_sessioneStato della sessioneARead-only
Dice se c'è una sessione valida con la Banca Dati di Merito e quando scade, e lo stato di un eventuale accesso in corso. Chiamalo prima di una serie di ricerche.
Inputs: no named parameters.
timeline_provvedimentoTimeline del giudizioARead-only
Restituisce la sequenza dei gradi di giudizio collegati a un provvedimento, come la mostra la Banca Dati.
Inputs: id (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 19 tools
Most tools map to a distinct resource+action (cerca/leggi/elenca/scarica on provvedimenti, abstract, uffici), and descriptions explicitly route ambiguous cases (risolvi_criteri vs cerca_valori, cerca_provvedimenti vs leggi_provvedimento). The weakest spot is the statistics pair pubblicazioni vs archivio, which both return counts by distretto/ufficio and could easily be swapped, plus the three value-listing tools (elenca_valori, elenca_uffici, cerca_valori) whose boundaries need careful reading.
Consistent Italian snake_case with a dominant verb_noun pattern (cerca_*, leggi_*, elenca_*, risolvi_criteri, scarica_documento). Deviations are minor: a handful of noun-only names (pubblicazioni, archivio, ricerche_salvate, cartelle_personali, frequenze_parole_chiave) and the bare verb accedi, which break the pattern but remain readable and unambiguous.
19 tools is on the heavy side but justified by a genuinely broad domain spanning authentication, full-text search, document retrieval, reference-value resolution, statistics, and personal-library access. Each tool covers a distinct slice; there is little obvious dead weight, only mild overlap in the counting/listing area.
The research lifecycle is well covered: session/login, criteria resolution, search, metadata, full text, abstracts, PDF download, reference lists, counts, folders, and saved searches. The main gaps are write-side operations — folders and saved searches are read-only (explicitly 'sola lettura') and there is no way to add notes or save a provvedimento to a folder, so agents will hit dead ends on those requests but can work around them by reporting results instead.
Maintenance
Related MCP Connectors
Resolve, search and verify legal citations against the official sources, with provenance.
Italian administrative courts MCP -- search and read the published rulings of the Consiglio di…
Public lookup of Brazilian court cases (metadata + docket) via the CNJ/DataJud API. Free, no login.
Busca jurisprudencia española desde Claude, ChatGPT y otros clientes MCP. Localiza resoluciones, consulta sus fundamentos y el fallo cuando estén disponibles y comprueba los pasajes con enlaces a las fuentes oficiales para preparar tu investigación jurídica. Conecta tu cuenta mediante OAuth o utiliza una clave API. Los resúmenes se distinguen del texto íntegro; la cobertura es progresiva y no exhaustiva.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceProvides access to Swiss court decisions through the entscheidsuche.ch API, enabling search, retrieval, and analysis of legal documents across different cantons and courts using natural language queries.-
- FlicenseAqualityDmaintenanceEnables querying and retrieving Italian civil court rulings, decrees, and orders from the Ministry of Justice's database via natural language, using CIE authentication.11-
- AlicenseNot gradedqualityCmaintenanceProvides MCP tools (bdm_search, bdm_get_provvedimento, bdm_check_session) to query the Italian public judicial database (Banca Dati di Merito) for civil court rulings using a session authenticated via CNS.2MIT
- AlicenseBqualityDmaintenanceConnects AI assistants to Brazilian judicial data via DataJud CNJ, LexML, and local corpus, enabling process consultation, legal research, and document generation with Visual Law.262MIT