Connessioni database

Lascia che i tuoi agenti interroghino il database,
in sola lettura finché non decidi altrimenti

AgentsRoom gestisce le tue connessioni MySQL e MariaDB e dà ai tuoi agenti di coding IA un modo per eseguire query su di esse. In sola lettura per impostazione predefinita, una istruzione alla volta, con la password tenuta fuori portata.

Un agente che può leggere le righe reali smette di tirare a indovinare sui tuoi dati. Un agente che non può scriverle smette di essere un rischio da sorvegliare riga per riga.

Client SQL
Sola lettura
AgentsRoom
SELECT id, email, plan FROM users LIMIT 50
DELETE FROM users WHERE id = 42
Bloccata: la connessione è in sola lettura
Tunnel SSHbastion.acme.dev
Subnet privata
Risultati limitati
Tramite la tua connessione salvata
Una sola istruzione per chiamataLa password non lascia mai l'app

Come AgentsRoom raggiunge un database in una subnet privata e risponde a una query in sola lettura di un agente IA.

Un agente di coding IA che non vede i tuoi dati scrive codice contro lo schema che ha immaginato. Inventa una colonna, dà per scontato che un enum abbia tre valori quando ne ha sette, e spiega un bug con una teoria invece che con una riga. Dargli una connessione al database risolve il problema, ed è anche il modo più rapido di trasformare un agente utile in un incidente. AgentsRoom è costruito attorno a questa tensione.

Salvi le tue connessioni MySQL e MariaDB nell'app come faresti in qualsiasi client SQL: host, porta, utente, database e TLS quando il server lo richiede. Se il database non è raggiungibile da internet, la connessione viene instradata tramite un tunnel SSH o una sessione di port forwarding AWS SSM, usando le connessioni SSH e SSM che hai già salvato in AgentsRoom. È così che un database che sta in una subnet privata diventa qualcosa che puoi interrogare senza aprirlo al mondo.

Ogni connessione nasce in sola lettura. Un SELECT viene eseguito. Un'istruzione che modificherebbe i dati no, finché non hai reso scrivibile quella specifica connessione e confermato l'operazione. Viene accettata una sola istruzione per chiamata, quindi nulla di extra si nasconde dietro un punto e virgola, e i risultati sono limitati perché una query troppo ampia non possa sommergere un agente o una finestra. Una connessione può anche essere contrassegnata come produzione, il che rende la conferma più difficile da dare per sbaglio.

Un client SQL che dà per scontato che alla guida ci sia un agente

MySQL e MariaDB, raggiungibili in reti private, con le protezioni attive per impostazione predefinita.

Connessioni MySQL e MariaDB

Salva una connessione per database: host, porta, utente, il database da aprire e TLS quando il server lo richiede. Il tuo database locale, quello di staging e la replica di produzione vivono nella stessa lista, pronti da scegliere invece che da ridigitare.

Raggiungi un database privato

Un database in una subnet privata non è un caso speciale. Instrada la connessione tramite un tunnel SSH o una sessione di port forwarding AWS SSM e AgentsRoom la apre per te, riutilizzando le connessioni SSH e SSM che hai già salvato nell'app.

In sola lettura per impostazione predefinita

Una nuova connessione può leggere e nient'altro. Le query restituiscono righe, le istruzioni che cambierebbero i dati vengono rifiutate. Nessuno deve ricordarsi di attivare la modalità sicura, perché la modalità sicura è il punto di partenza di ogni connessione.

Due lucchetti prima di una scrittura

Scrivere richiede due atti deliberati, non uno. La connessione deve essere resa scrivibile, e l'operazione stessa deve essere confermata in modo esplicito. Un singolo clic distratto non può concatenarsi in un UPDATE senza clausola WHERE.

Una sola istruzione per chiamata

Ogni chiamata porta esattamente un'istruzione. Tutto ciò che è impilato dietro un punto e virgola viene rifiutato invece che eseguito, quindi una lettura che sembra una lettura non può contrabbandare con sé una seconda istruzione. In più, i risultati sono limitati.

La produzione è contrassegnata

Contrassegna una connessione come produzione e la conferma diventa più severa. Il database che conta smette di sembrare identico alla copia locale, sia per te alla fine di una lunga giornata sia per un agente che sta smaltendo una lista di task.

Gli agenti interrogano il database, non tengono mai la password

Le tue credenziali di database sono conservate da AgentsRoom, non distribuite. Un agente chiede di eseguire una query su una connessione che conosce per nome, l'app apre la connessione, esegue l'istruzione e restituisce le righe. La password non fa mai parte di ciò che l'agente riceve, né della query che scrive, né della conversazione che conserva.

La regola di sola lettura è l'altra metà del discorso, e per un agente non è un'impostazione predefinita da cui possa uscire a forza di parole. Lo strumento con cui un agente interroga rifiuta tutto ciò che non è una lettura, qualunque cosa quella connessione permetta. Rendere scrivibile una connessione sblocca le scritture per te, nella console SQL, dove ognuna chiede una conferma esplicita, volutamente più difficile da dare quando la connessione è contrassegnata come produzione. Il peggio che può produrre un agente che esegue una query sbagliata resta una risposta sbagliata, non una tabella persa.

La regola dell'istruzione singola chiude la falla classica. Una chiamata che porta una sola istruzione non può essere estesa con un punto e virgola e una seconda, quindi una query che in revisione sembra innocua non può fare altro al momento dell'esecuzione. Unito ai risultati limitati, un errore resta un errore invece di diventare un'esportazione.

Motori supportati

Oggi MySQL e MariaDB, e nient'altro

Il client database di AgentsRoom parla il protocollo di rete MySQL, e MariaDB è compatibile con esso, quindi entrambi sono supportati fin da subito: in modo diretto, oppure tramite un tunnel SSH o una sessione di port forwarding AWS SSM quando il server non è raggiungibile da internet.

PostgreSQL, MongoDB, SQL Server, SQLite e gli altri non sono supportati. Meriti di saperlo prima del download, non dopo. Quale motore arriva dopo lo decide ciò che le persone chiedono, quindi se manca il tuo, dì quale sul backlog pubblico e verrà conteggiato.

Richiedi il tuo motore di database

Da un database privato a una risposta

Salva la connessione, instradala, poi interrogala o lascia che lo faccia un agente.

01

Salva la connessione

Aggiungi il database: host, porta, utente, il nome del database e TLS se il server lo richiede. Dagli un nome che riconoscerai in seguito, e contrassegnalo come produzione se è quello che è.

02

Instradala se è privata

Se il database non è raggiungibile direttamente, punta la connessione su un tunnel SSH o una sessione di port forwarding AWS SSM costruita a partire dalle connessioni già salvate in AgentsRoom. Un database in una subnet privata diventa raggiungibile senza esporlo pubblicamente.

03

Interrogalo, o lascia che lo interroghi un agente

Esegui la tua istruzione dall'app, oppure lascia che un agente ne esegua una via MCP. In sola lettura finché non lo cambi, una sola istruzione per chiamata, risultati limitati, e una conferma esplicita tra qualsiasi scrittura e i tuoi dati.

Quando a un agente servono le righe vere

I momenti in cui leggere i dati di produzione è la strada più breve verso la correzione.

Debug sui dati reali

Il bug si manifesta solo per una manciata di account. Lascia che l'agente legga quelle righe e troverà il valore che rompe la logica, invece di proporre tre teorie su come potrebbero essere fatti i dati.

Un database che non è pubblico

Il database vive in una subnet privata senza endpoint pubblico. Instrada la connessione tramite un tunnel SSH o una sessione AWS SSM costruita sulle tue connessioni salvate, e interrogalo senza aprire una porta su internet.

Lascia che l'agente verifichi, non che indovini

Prima di scrivere una migrazione o una query, un agente può guardare cosa è davvero memorizzato. Legge, riferisce, e nel farlo non ottiene mai la possibilità di cambiare qualcosa.

Produzione, senza il rischio di scrittura

Leggere la produzione è spesso necessario, scriverci quasi mai lo è nel mezzo di un task. Contrassegna la connessione come produzione, tienila in sola lettura, e la differenza tra indagare e rompere smette di dipendere dall'attenzione di qualcuno.

Agenti IA + SQL

Come fanno i miei agenti a interrogare il database?

db_listdb_schemadb_querydb_connection_new

Tramite AgentsRoom MCP, con quattro strumenti. db_list restituisce le tue connessioni salvate e i loro metadati, db_schema percorre gli schemi, le tabelle e le colonne senza una riga di SQL, db_query esegue una singola istruzione e restituisce le righe, e db_connection_new propone un database che non hai ancora salvato. AgentsRoom apre la connessione, incluso il tunnel SSH o la sessione AWS SSM che le sta davanti quando c'è. Quello che torna all'agente è un insieme di risultati, mai una credenziale.

db_query è in sola lettura qualunque cosa la connessione permetta. Rendere scrivibile una connessione sblocca le scritture per te, nella console SQL, dove ognuna viene confermata in modo esplicito e dove una connessione contrassegnata come produzione lo dichiara ad alta voce. Non le sblocca per un agente: la regola di sola lettura di db_query vive nell'app desktop invece che nel processo MCP, quindi tiene anche se l'agente viene convinto a chiedere qualcos'altro. Non serve una password per eseguire un DROP, ed è per questo che la protezione sta sull'istruzione e non solo sulla credenziale.

Lo stesso limite vale per la registrazione di un database. db_connection_new apre il modulo di creazione precompilato con l'host, l'utente e la connessione SSH o AWS SSM attraverso cui raggiungerlo, e sei tu a rivederlo, a digitare la password e a salvare. Nulla viene memorizzato finché non lo fai. L'agente ottiene ciò che gli serve per ragionare sui tuoi dati, e nessuno dei modi in cui quell'accesso di solito si trasforma in un incidente è a sua disposizione.

Scopri AgentsRoom MCP

FAQ

Quali database sono supportati?

MySQL e MariaDB, e solo questi. Il client parla il protocollo di rete MySQL e MariaDB è compatibile con esso, quindi funzionano entrambi, in modo diretto oppure tramite un tunnel SSH o una sessione di port forwarding AWS SSM. PostgreSQL, MongoDB, SQL Server, SQLite e gli altri oggi non sono supportati. Se ti serve uno di questi, chiedilo sul backlog pubblico: la lista cresce con ciò che le persone chiedono davvero.

Un agente IA può scrivere sul mio database?

No. Lo strumento MCP con cui un agente interroga, db_query, è in sola lettura qualunque cosa la connessione permetta: SELECT, SHOW, DESCRIBE, EXPLAIN e WITH passano, tutto ciò che modificherebbe i dati viene rifiutato. Rendere scrivibile una connessione sblocca le scritture per te nella console SQL, dove ognuna viene confermata in modo esplicito, non per un agente. La protezione sta sull'istruzione invece che sulla password, perché non è una password ciò che serve per eseguire un DROP.

Come raggiungo un database in una subnet privata?

Instrada la connessione tramite un tunnel SSH o una sessione di port forwarding AWS SSM, costruita a partire dalle connessioni SSH e SSM che hai già salvato in AgentsRoom. L'app apre il tunnel o la sessione e ci collega attraverso il database, così il database resta irraggiungibile da internet.

I miei agenti vedono la password del database?

No. Gli agenti interrogano via MCP nominando una connessione. AgentsRoom custodisce le credenziali ed esegue l'istruzione da sé, quindi la password non viene mai restituita all'agente, mai scritta nella query e mai inclusa nella conversazione.

Un agente può eseguire più istruzioni in una volta sola?

No. Una chiamata porta esattamente un'istruzione. Tutto ciò che è impilato dietro un punto e virgola viene rifiutato invece che eseguito, il che elimina il modo più vecchio di nascondere una scrittura dentro qualcosa che sembra una lettura.

Cosa cambia contrassegnare una connessione come produzione?

Rende più severa la conferma richiesta prima di una scrittura. Il database che conta smette di comportarsi come la copia locale, che è quello che vuoi alla fine di una lunga giornata e che vuoi ancora di più da un agente che sta smaltendo una lista di task.

Cosa succede con una query che restituisce moltissime righe?

I risultati sono limitati. Una query che restituirebbe una tabella enorme torna troncata invece di sommergere la finestra o il contesto dell'agente, così un SELECT troppo ampio resta una scomodità invece di diventare un'esportazione dei tuoi dati.

Un agente può aggiungere una connessione a un database?

Può proporne una, mai salvarla. db_connection_new apre il modulo di creazione precompilato con l'host, la porta, l'utente e la connessione SSH o AWS SSM attraverso cui raggiungere il database, e sei tu a rivederlo, a digitare la password e a salvare. Nulla viene memorizzato finché non lo fai, e l'agente non fornisce mai una credenziale.

Come fa un agente a conoscere il mio schema?

Con db_schema, che esplora una connessione salvata senza alcun SQL. Chiamato senza argomenti elenca gli schemi, con un database elenca le tabelle e le viste, con una tabella restituisce le colonne, i loro tipi, se ammettono valori nulli, le loro chiavi e i loro valori predefiniti. È più economico e più sicuro che far interrogare a mano information_schema a un agente.

Potrebbe interessarti anche

Dai ai tuoi agenti i dati, non le chiavi

Scarica AgentsRoom, salva le tue connessioni MySQL e MariaDB, raggiungile tramite un tunnel SSH o una sessione AWS SSM, e lascia che i tuoi agenti le interroghino in sola lettura.

GratisScarica

App companion: monitora i tuoi agenti in movimento

Usa Claude, Codex, Antigravity CLI o un altro provider IA.

Installa l'estensione
Chrome Web Store

Invia bug e richieste direttamente nel tuo backlog pubblico.

Uno sguardo ad AgentsRoom in azione.

Multi-progetto
Multi-provider
Multi-agente
Stato in tempo reale
Diff e commit
App mobile
Anteprima live
Team di agenti
Test browser
Dev guidata da backlog
Libreria di prompt
Libreria di skill
Vedi tutte le funzionalità