Sull’AS/400 ci sono anni di ordini, distinte, giacenze e partite aperte. Il problema non sono i dati: è che per leggerli serve qualcuno che conosca i menu, i tasti funzione e le query giuste. Qui trovi come si arriva a farli leggere a un assistente AI, quali strade tecniche esistono (con le fonti di IBM), cosa fa già IBM e dove sono i limiti.
Cosa cambia per chi oggi usa lo schermo verde?
Oggi il commerciale chiede al magazzino, il magazzino apre il programma, filtra, stampa o ricopia in Excel. Con un connettore la stessa domanda si scrive in italiano nell’assistente e la risposta arriva dagli stessi file di Db2 for i che legge il programma RPG.
Quali ordini di Alfa Srl sono in ritardo e quanto manca da consegnare?
Due righe sono in ritardo, entrambe sull’ordine 260871: mancano 1.000 pezzi. Altri due ordini scadono entro fine mese.
| Ordine 260871 · TB-4012 | 400 pz · consegna 31/10 |
|---|---|
| Ordine 260871 · TB-4018 | 600 pz · consegna 07/11 |
| In scadenza entro il 30/11 | 1.250 pz su 2 ordini |
Fonte: Db2 for i · file ordini clienti · sola lettura
Il connettore non “guarda” lo schermo: interroga i dati che stanno sotto. Da lì la conversazione continua come con un collega: “prepara una mail per il cliente con le nuove date”, “confronta con lo stesso periodo dell’anno scorso”. Altre domande tipiche, per reparto:
- Commerciale: fatturato di Beta Spa da inizio anno contro l’anno scorso, per famiglia di articoli.
- Magazzino: articoli sotto scorta che hanno ordini cliente aperti.
- Amministrazione: partite scadute da più di 60 giorni, raggruppate per agente.
- Produzione: ordini di lavoro in ritardo e componenti che mancano per chiuderli.
Si può collegare l’AS/400 a ChatGPT o Claude senza migrare?
Sì. I file su cui lavorano i programmi RPG sono tabelle di Db2 for i, il database integrato in IBM i, e si leggono in SQL con i driver che IBM distribuisce [IBM]. Il connettore usa un profilo utente in sola lettura e offre all’assistente un elenco di strumenti già scritti, per esempio “ordini aperti per cliente” o “giacenza per articolo e magazzino”. Lo fa con MCP (Model Context Protocol), lo standard aperto con cui gli assistenti AI si collegano a sistemi esterni [Model Context Protocol].
Programmi, menu e utenti 5250 restano come sono. E la piattaforma non obbliga a migrare per usare l’AI: IBM i 7.5 e 7.6 non hanno ancora una data di fine supporto, mentre la 7.4 è passata il 1° ottobre 2026 all’estensione di servizio a pagamento, che termina il 30 settembre 2029 [IBM].
Quali strade tecniche esistono per leggere i dati di IBM i?
Sono sei, e non si escludono: spesso il connettore legge in SQL e usa un servizio per i pochi calcoli che vivono solo nel codice RPG.
| Strada | Cosa fa | Quando la scegliamo | Cosa serve sul sistema |
|---|---|---|---|
| ODBC (IBM i Access Client Solutions) | Driver per Windows e Linux verso Db2 for i [IBM] | Letture SQL dal server del connettore: è la nostra strada di partenza | Un profilo utente; la versione corrente del pacchetto è disponibile per chi ha un contratto di manutenzione software IBM i [IBM] |
JDBC (JTOpen, jt400.jar) |
Driver Java open source, indirizzi jdbc:as400: [IBM] |
Connettori scritti in Java | Un profilo utente |
| Mapepire | Server di database per Db2 for i pensato per il cloud, con librerie per Node.js, Python e .NET [Progetto Mapepire] | Quando si usa il server MCP di IBM o uno stack moderno | Installazione con yum install mapepire-server, porta 8076 di serie, certificato TLS [Progetto Mapepire] |
| Integrated Web Services (IWS) | Server compreso nel sistema operativo: espone programmi ILE come servizi REST o SOAP [IBM]; da IBM i 7.4 anche istruzioni SQL come API REST [IBM Developer] | Quando la regola sta nel codice RPG (prezzi, disponibilità) e per le scritture controllate | Configurazione del server web e PTF aggiornate |
| Server MCP di IBM | Esegue query SQL definite in file YAML, passando da Mapepire [IBM (GitHub)] | Da valutare come base: vedi sotto | Mapepire attivo |
| Esportazione periodica | File generati da un lavoro pianificato | Quando la rete verso la produzione non si può aprire | Un lavoro pianificato; dati aggiornati all’ultima esportazione |
Resta la lettura dello schermo 5250 (“screen scraping”): la usiamo solo come ultima risorsa, quando un dato esiste soltanto a video. È fragile, perché basta spostare un campo per romperla.
Il server MCP open source di IBM si può già usare?
IBM pubblica nella propria organizzazione GitHub un server MCP per IBM i, con licenza Apache 2.0 e pacchetto npm @ibm/ibmi-mcp-server. Si collega a Db2 for i tramite Mapepire e l’AI può eseguire solo le query SQL scritte in file YAML: è l’impostazione giusta, perché le domande possibili sono decise prima e non inventate dal modello [IBM (GitHub)].
Tre cose da sapere prima di usarlo con trenta persone:
- Stato. Le release su GitHub, compresa la più recente (v0.6.2 del 7 ottobre), sono marcate “Pre-release” [IBM (GitHub)]. Il README mostra un’etichetta “Stable”, ma non abbiamo trovato un impegno formale di supporto da parte di IBM.
- Accesso. L’esempio di avvio usa un solo profilo IBM i letto da un file di configurazione; al 13 novembre 2026 la documentazione non descrive un accesso per singolo utente [IBM (GitHub)].
- Contenuto. Le raccolte di strumenti già pronte riguardano prestazioni, sicurezza, lavori attivi, spazio su disco e oggetti del database: servono al sistemista. Le domande del commerciale vanno scritte sul tuo gestionale [IBM (GitHub)].
La nostra posizione: è un buon punto di partenza tecnico. Se nel tuo caso conviene, lo usiamo come base; altrimenti costruiamo un connettore con lo stesso principio. In entrambi i casi aggiungiamo accesso per persona, registro delle domande e il lavoro sui nomi dei campi.
Perché il vero lavoro è dare un nome ai campi
Su molti AS/400 file e campi hanno nomi brevi ereditati dai programmi originali, le date sono numeri, gli stati sono una lettera. E ogni azienda ha la sua applicazione, scritta in casa o personalizzata da una software house: due AS/400 dello stesso settore raramente si somigliano. Per questo il primo pezzo del progetto è un dizionario dei dati. Un esempio con nomi dimostrativi:
| Sul sistema (esempio) | Cosa contiene | Come lo usa l’assistente |
|---|---|---|
ORDT00F.OTCDCL |
Codice cliente a 6 cifre | Cliente, con ragione sociale presa dall’anagrafica |
ORDT00F.OTDTCN |
Data consegna salvata come numero, es. 1261128 | 28/11/2026 |
ORDR00F.ORSTAT |
Stato riga: A, P o E | Aperta, parziale o evasa |
ORDR00F.ORQTOR e ORQTEV |
Quantità ordinata ed evasa | Quantità da consegnare, calcolata |
ANCL00F.ACAGEN |
Codice agente | Nome dell’agente, dall’anagrafica agenti |
È la differenza tra un assistente che risponde “giacenza 1240” e uno che sa che sono pezzi, nel magazzino 02, al netto degli impegni. Il dizionario si scrive una volta, si verifica con chi conosce l’applicazione e resta documentato: torna utile anche il giorno in cui deciderete di modernizzare. Nello stesso passaggio si sistemano i campi di testo con la codifica dei caratteri (CCSID) sbagliata, quelli in cui accenti e simbolo dell’euro arrivano illeggibili: si corregge nella vista o nel driver, non nei programmi.
Modernizzare o aggiungere un livello AI?
Sono due progetti diversi, che rispondono a problemi diversi.
| Aspetto | Modernizzare (riscrivere o migrare) | Aggiungere un livello AI |
|---|---|---|
| Obiettivo | Cambiare il software: nuovo codice, nuova interfaccia o nuova piattaforma | Far leggere i dati di oggi a un assistente, con domande in italiano |
| Chi usa il 5250 | Impara programmi nuovi | Continua a lavorare come prima |
| Codice RPG | Si riscrive o si converte: è lo scopo | Non si tocca; il connettore legge |
| Rischio sui processi | Concentrato nel passaggio: va rifatto tutto ciò che il vecchio programma faceva | Contenuto: se il connettore si ferma, l’AS/400 lavora come prima |
| Tempi | Dipendono da quanto codice c’è da riscrivere | Pilota di 21 giorni su 10 domande concordate |
| Chi lo fa | Software house IBM i, con strumenti come IBM Bob | Noi, insieme a chi conosce l’applicazione |
| A chi serve | A chi mantiene e sviluppa il gestionale | A chi deve fare domande ai dati senza usare il 5250 |
Si possono fare insieme, e in quest’ordine conviene: il dizionario dei dati e l’elenco delle domande davvero usate dicono quali parti del gestionale contano di più, cioè da dove partire se e quando si modernizza.
Cosa fa già IBM con l’intelligenza artificiale su IBM i?
IBM ha puntato l’AI soprattutto su chi sviluppa. IBM Bob è nato come watsonx Code Assistant for i ed è diventato una piattaforma di sviluppo assistito: spiega, converte e verifica codice RPG, compresi i test automatici del codice convertito [IBM]. È lo strumento giusto per una software house che modernizza un’applicazione. Non è pensato per il direttore commerciale che vuole sapere quali clienti sono fuori fido.
L’altro pezzo è il server MCP open source descritto sopra, che tra i client cita anche Bob [IBM (GitHub)]. In sintesi: IBM lavora sul codice e sugli strumenti per sistemisti e sviluppatori; un connettore serve a chi interroga i dati. Uno non sostituisce l’altro.
Quali regole servono su un sistema di produzione?
L’AS/400 è quasi sempre il sistema su cui gira l’azienda. Le regole che proponiamo, da concordare con il tuo sistemista:
- Profilo dedicato, sola lettura. Il sistemista crea un profilo che può leggere solo i file o le viste necessarie. Niente profili con poteri di amministratore.
- Query scritte prima, non SQL libero. Ogni strumento è una query verificata, con filtri e un limite di righe per risposta. L’assistente sceglie quale usare, non riscrive la query.
- Carico misurato. Le query usano gli indici esistenti; i report pesanti girano negli orari concordati. Nel pilota misuriamo i tempi di risposta sulla macchina vera.
- Scritture solo dai programmi esistenti. Se servirà scrivere, si passa dal programma RPG che già lo fa, esposto come servizio IWS [IBM], con approvazione di una persona. Mai SQL diretto sui file del gestionale.
- Exit point. Se filtri gli accessi per indirizzo IP con gli exit point, tieni presente che con Mapepire tutte le connessioni risultano provenire da 127.0.0.1. Le regole per utente funzionano come prima; quelle per indirizzo IP devono leggere l’indirizzo vero del client dal registro speciale
CLIENT_WRKSTNNAME[Progetto Mapepire]. - Registro. Ogni domanda e ogni query restano registrate, per persona.
Come arriva l’assistente a un AS/400 che sta in sala server?
Claude, ChatGPT, Copilot e Gemini girano nei cloud dei loro fornitori e devono raggiungere un server MCP. Per Claude, per esempio, le chiamate arrivano da un intervallo di indirizzi pubblicato da Anthropic [Anthropic], mentre i tunnel verso reti private sono un’anteprima riservata al piano Enterprise, su richiesta [Anthropic].
L’impostazione che proponiamo: il connettore gira in UE (Francoforte) e raggiunge l’AS/400 attraverso un canale concordato con il tuo IT, di solito una VPN, così Db2 for i e il 5250 non vanno esposti su internet. Le opzioni di rete per ogni assistente sono spiegate nella pagina sul software su misura.
Una distinzione da tenere chiara: il connettore e il suo registro stanno in UE, ma l’assistente elabora i dati che legge secondo il piano e le condizioni del suo fornitore. Per Claude, Anthropic indica che i dati sono conservati negli Stati Uniti [Anthropic]. Lato configurazione, su Claude Team il connettore lo aggiunge un Owner o il Primary Owner e poi ogni persona si collega con il proprio account [Anthropic]; su ChatGPT Business i connettori MCP personalizzati li aggiungono amministratori e owner [OpenAI · da verificare]. I dettagli per assistente: collegare l’AS/400 a Claude, ChatGPT aziendale, Microsoft Copilot.
Cosa ci serve da te per partire?
- La release di IBM i e dove sta la macchina: in casa o in hosting.
- Chi mantiene l’applicazione: IT interno, software house, o nessuno.
- Un profilo utente dedicato in sola lettura, creato dal tuo sistemista.
- Una sessione con chi conosce l’applicazione, per i file principali.
- Le 10 domande che volete fare, divise per reparto.
- Chi userà l’assistente, e quale assistente pagate già.
Come lavoriamo sull’AS/400
-
Inventario
Release, applicazione, file principali e le 10 domande da cui partire, scelte con i reparti.
-
Accesso in sola lettura
Profilo dedicato, canale di rete concordato con il tuo IT, prime query di prova lontano dagli orari di punta.
-
Dizionario e strumenti
Nomi dei campi tradotti in termini aziendali, query predefinite, verifica delle risposte sulle 10 domande.
-
Assistente e formazione
Connettore aggiunto all’assistente che usate, accesso personale, registro delle domande, sessioni con il team.
Il programma pilota dura 21 giorni: se le 10 domande concordate al kickoff non ricevono risposte corrette entro 21 giorni dall’accesso ai dati, ti rimborsiamo l’attivazione. Come gestiamo accessi, registro e dati è spiegato in sicurezza. Se accanto all’AS/400 avete altri sistemi, li trovi tra i connettori.