Google ha annunciato il rilascio della versione 1.0 del suo Java‑SDK per la MCP Toolbox for Databases, una piattaforma open‑source progettata per facilitare l’accesso a database tramite il Model Context Protocol (MCP). La toolbox permette a Java‑application di caricare strumenti definiti sul server, inviarli a agenti di intelligenza artificiale e ricevere risposte basate su query SQL predefinite, evitando che il modello linguistico generi autonomamente query potenzialmente non sicure.

Che cos’è la MCP Toolbox for Databases?

Il progetto, inizialmente denominato “Gen AI Toolbox for Databases”, è stato avviato prima dell’introduzione del protocollo MCP. Oggi funge da server centrale che espone una serie di tool configurabili, consentendo a agenti IA, IDE e altre applicazioni di interagire con diversi sistemi di gestione di database. Tra i database supportati nativamente dalla Google Cloud troviamo AlloyDB, BigQuery, Cloud SQL e Spanner; il server estende inoltre la compatibilità a PostgreSQL, MySQL, SQL Server, Oracle, MongoDB e Snowflake.

Configurazione dei tool con tools.yaml

Gli sviluppatori definiscono le query SQL consentite all’interno di un file tools.yaml. In questo modo è possibile limitare le operazioni che un agente può eseguire, specificando non solo la query ma anche i parametri accettati. Quando l’agente riceve una richiesta, sceglie lo strumento più appropriato dalla lista e fornisce i parametri richiesti, lasciando al modello il compito di orchestrare l’interazione senza dover “inventare” query non previste.

Novità della conferenza betterCode() Java

Il 13 ottobre si è tenuta la conferenza betterCode() Java, che ha messo in evidenza le più recenti funzionalità delle versioni Java, tra cui Pattern Matching, Structured Concurrency e gli ultimi miglioramenti al Garbage Collector, alla performance di Time‑to‑Peak e al tempo di avvio della JVM. Questi avanzamenti sono particolarmente rilevanti per chi intende sfruttare il nuovo SDK MCP, poiché consentono di ottenere applicazioni più reattive e a minor consumo di risorse.

Gestione dei parametri legati (bound parameters)

Nei Release Notes pubblicati il 9 settembre, Google ha segnalato un “breaking change” relativo ai parametri legati. Quando un’applicazione imposta un valore fisso tramite bindParam – ad esempio il nome dell’utente autenticato – tale parametro non viene più mostrato nella definizione dello strumento visibile al modello. Chi migra dalla versione 0.2 deve verificare che i prompt o i test non facciano più affidamento su questi parametri. Inoltre, il nuovo SDK introduce valori di default per i parametri degli strumenti e due hook opzionali, eseguiti rispettivamente prima e dopo la chiamata a uno strumento.

Autenticazione e trasporto separati

L’autenticazione al server MCP è ora gestita tramite le interfacce CredentialsProvider e AuthMethods, separate dal client principale. Questo permette di utilizzare token OIDC di Google attraverso le Application Default Credentials (ADC) o di integrare fonti di token personalizzate. In caso di trasmissione di credenziali su HTTP non criptato, l’SDK genera un avviso di sicurezza. Inoltre, la logica di protocollo è stata isolata dal client HTTP mediante la classe HttpMcpTransport, offrendo la possibilità di implementare meccanismi di connection pooling personalizzati.

Limitazioni rispetto ad altri linguaggi

Nel repository dell’SDK Google esplicita che, rispetto alle controparti per Python, TypeScript e Go, il supporto per Java è ancora in fase di maturazione. In particolare, mancano al momento i pacchetti per framework Java come LangChain, LlamaIndex o l’Agent Development Kit (ADK) di Google, disponibili per altre lingue. Una applicazione di esempio combina Spring Boot e LangChain4j con AlloyDB, ma il codice di integrazione richiede ancora notevoli adattamenti manuali.

Requisiti e distribuzione

Il nuovo SDK richiede Java 17 come minimo, ma è pienamente compatibile con Java 21, includendo il supporto ai thread virtuali. È rilasciato sotto licenza Apache 2.0 e può essere integrato nei progetti tramite Maven Central con la dipendenza com.google.cloud.mcp:mcp-toolbox-sdk-java:1.0.0. Questa scelta di licenza e di distribuzione semplifica l’adozione sia in contesti open‑source sia in ambienti enterprise.

Prospettive future

La MCP Toolbox rappresenta un passo significativo verso una collaborazione più sicura e controllata tra intelligenza artificiale e sistemi di gestione dei dati. Consentendo di definire in modo esplicito le query autorizzate e fornendo meccanismi di autenticazione flessibili, Google apre la porta a nuovi casi d’uso, dal supporto al cliente basato su IA alla generazione automatica di report aziendali. Tuttavia, la mancanza di integrazioni native con i principali framework Java potrebbe rallentare l’adozione su larga scala, almeno fino a quando la community non contribuirà al porting di librerie come LangChain e ADK.

In sintesi, il rilascio della versione 1.0 del Java‑SDK per la MCP Toolbox for Databases mette a disposizione degli sviluppatori uno strumento potente per orchestrare query su più database tramite agenti IA, ma richiede attenzione ai cambiamenti introdotti nei parametri legati e una valutazione delle attuali limitazioni rispetto ad altri linguaggi. Con l’evoluzione delle funzionalità di Java e l’espansione della compatibilità con framework emergenti, il potenziale di questa piattaforma è destinato a crescere nei prossimi mesi.