Datenbankverbindungen

Lass deine Agenten die Datenbank abfragen,
schreibgeschützt, bis du etwas anderes sagst

AgentsRoom verwaltet deine MySQL-, PostgreSQL- und MongoDB-Verbindungen und gibt deinen KI-Coding-Agenten einen Weg, Abfragen dagegen auszuführen. Standardmäßig schreibgeschützt, ein Statement nach dem anderen, und das Passwort bleibt außer Reichweite.

Ein Agent, der die echten Zeilen lesen kann, hört auf, über deine Daten zu raten. Ein Agent, der sie nicht ändern kann, hört auf, ein Risiko zu sein, das du Zeile für Zeile überwachen musst.

Datenbank-Client
Nur Lesen
AgentsRoom
SELECT id, email, plan FROM users LIMIT 50
DELETE FROM users WHERE id = 42
Blockiert: Verbindung ist schreibgeschützt
SSH-Tunnelbastion.acme.dev
Privates Subnetz
Begrenzte Ergebnismenge
Über deine gespeicherte Verbindung
Ein Statement pro AufrufDas Passwort verlässt die App nie

Wie AgentsRoom eine Datenbank in einem privaten Subnetz erreicht und eine schreibgeschützte Abfrage eines KI-Agenten beantwortet.

Ein KI-Coding-Agent, der deine Daten nicht sehen kann, schreibt Code gegen das Schema, das er sich vorgestellt hat. Er erfindet eine Spalte, nimmt an, ein Enum habe drei Werte, wo es sieben hat, und erklärt einen Bug mit einer Theorie statt mit einer Zeile. Ihm eine Datenbankverbindung zu geben, behebt das, und es ist zugleich der schnellste Weg, aus einem hilfreichen Agenten einen Vorfall zu machen. AgentsRoom ist um genau diese Spannung herum gebaut.

Du speicherst deine Verbindungen in der App wie in jedem Datenbank-Client: Engine, Host, Port, Benutzer, Datenbank und TLS, wenn der Server es erwartet. Ist die Datenbank aus dem offenen Internet nicht erreichbar, wird die Verbindung über einen SSH-Tunnel oder eine AWS SSM Port-Forwarding-Session geleitet, und zwar über die SSH- und SSM-Verbindungen, die du in AgentsRoom schon gespeichert hast. So wird eine Datenbank in einem privaten Subnetz zu etwas, das du abfragen kannst, ohne sie der Welt zu öffnen.

Jede Verbindung startet schreibgeschützt. Ein SELECT läuft. Ein Statement, das Daten verändern würde, läuft nicht, solange du diese eine Verbindung nicht schreibbar gemacht und die Operation bestätigt hast. Pro Aufruf wird nur ein Statement akzeptiert, es versteckt sich also nichts hinter einem Semikolon, und Ergebnismengen sind begrenzt, damit eine breite Abfrage weder einen Agenten noch ein Fenster überschwemmt. Eine Verbindung lässt sich außerdem als Produktion markieren, was die Bestätigung schwerer aus Versehen zu geben macht.

Lesen ist nicht die ganze Arbeit. Eine auf einem Rechner gespeicherte Verbindung taucht auch auf deinen anderen auf, du richtest eine Datenbank also einmal ein statt einmal pro Computer. Und eine Datenbank lässt sich in eine Datei exportieren, aus einer Datei wiederherstellen oder direkt auf einen anderen Server kopieren, durch dieselben Tunnel: genau die Vorgänge, für die du die App bisher verlassen hast.

Ein Datenbank-Client, der davon ausgeht, dass ein Agent am Steuer sitzt

MySQL, PostgreSQL und MongoDB, erreichbar in privaten Netzen, mit standardmäßig aktiven Leitplanken.

MySQL-, PostgreSQL- und MongoDB-Verbindungen

Speichere eine Verbindung pro Datenbank: Host, Port, Benutzer, die zu öffnende Datenbank und TLS, wenn der Server es verlangt. Deine lokale Datenbank, die von Staging und das Produktions-Replikat stehen alle in derselben Liste, bereit zum Auswählen statt zum Neutippen.

Eine private Datenbank erreichen

Eine Datenbank in einem privaten Subnetz ist kein Sonderfall. Leite die Verbindung über einen SSH-Tunnel oder eine AWS SSM Port-Forwarding-Session, und AgentsRoom öffnet sie für dich, wobei die SSH- und SSM-Verbindungen wiederverwendet werden, die du in der App schon gespeichert hast.

Standardmäßig schreibgeschützt

Eine neue Verbindung kann lesen und sonst nichts. Abfragen liefern Zeilen, Statements, die Daten ändern würden, werden abgelehnt. Niemand muss daran denken, den sicheren Modus einzuschalten, denn im sicheren Modus startet jede Verbindung.

Zwei Schlösser vor einem Schreibvorgang

Schreiben verlangt zwei bewusste Handlungen, nicht eine. Die Verbindung muss schreibbar gemacht werden, und die Operation selbst muss ausdrücklich bestätigt werden. Ein einziger unachtsamer Klick kann sich nicht zu einem UPDATE ohne WHERE-Klausel auswachsen.

Ein Statement pro Aufruf

Jeder Aufruf trägt genau ein Statement. Alles, was hinter einem Semikolon gestapelt ist, wird abgelehnt statt ausgeführt, ein Lesevorgang, der wie ein Lesevorgang aussieht, kann also kein zweites Statement mitschmuggeln. Obendrauf sind Ergebnismengen begrenzt.

Produktion ist markiert

Markiere eine Verbindung als Produktion, und die Bestätigung wird strenger. Die Datenbank, auf die es ankommt, sieht nicht mehr exakt aus wie die lokale Kopie, weder für dich am Ende eines langen Tages noch für einen Agenten, der eine Aufgabenliste abarbeitet.

Deine Verbindungen, auf jedem Rechner

Eine auf dem Bürorechner gespeicherte Verbindung ist auch auf dem Laptop da: Name, Host, Port, Benutzer, Standarddatenbank und der Tunnel, über den sie läuft. Zurück bleibt einzig das Passwort, verschlüsselt auf dem Rechner, auf dem du es getippt hast, sodass jeder Rechner einmal danach fragt.

Exportieren, Importieren, Kopieren

Zieh eine Datenbank in eine .sql-Datei, spiel eine solche Datei in eine Datenbank ein, oder kopiere eine Datenbank direkt auf eine andere. Das Ziel wird gesichert, bevor es überschrieben wird, und es ganz zu ersetzen ist eine eigene, bestätigte Entscheidung.

Agenten fragen die Datenbank ab, das Passwort halten sie nie in der Hand

Deine Datenbank-Zugangsdaten werden von AgentsRoom gespeichert, nicht herausgegeben. Ein Agent bittet darum, eine Abfrage gegen eine Verbindung auszuführen, die er nur beim Namen kennt, die App öffnet die Verbindung, führt das Statement aus und gibt die Zeilen zurück. Das Passwort ist nie Teil dessen, was der Agent bekommt, nie Teil der Abfrage, die er schreibt, und nie Teil der Konversation, die er behält.

Die zweite Hälfte davon ist die Schreibschutz-Regel, und für einen Agenten ist sie keine Voreinstellung, aus der er sich herausreden könnte. Das Werkzeug, mit dem ein Agent abfragt, lehnt alles außer einem Lesevorgang ab, egal was diese Verbindung erlaubt. Eine Verbindung schreibbar zu machen, schaltet Schreibvorgänge für dich frei, in der Konsole, wo jeder einzelne eine ausdrückliche Bestätigung verlangt, die bei einer als Produktion markierten Verbindung bewusst schwerer zu geben ist. Das Schlimmste, was aus einer schlechten Abfrage eines Agenten folgt, bleibt eine falsche Antwort statt einer verlorenen Tabelle.

Die Ein-Statement-Regel schließt die klassische Lücke. Ein Aufruf, der ein Statement trägt, lässt sich nicht um ein Semikolon und ein zweites erweitern, eine Abfrage, die im Review harmlos wirkt, kann zur Ausführungszeit also nichts anderes tun. Zusammen mit begrenzten Ergebnismengen bleibt ein Fehler ein Fehler, statt zu einem Export zu werden.

Unterstützte Engines

Drei Engines, und wir nennen die, die fehlen

MySQL und MariaDB, PostgreSQL und MongoDB. Jede hat ihren eigenen Treiber statt einer Übersetzungsschicht, denn sie unterscheiden sich wirklich: Eine PostgreSQL-Session hängt an einer einzigen Datenbank, MongoDB nimmt eine Abfrage entgegen und kein SQL, und jeder Export läuft über die Werkzeuge, die mit der jeweiligen Engine mitkommen. Alle drei erreichen einen Server direkt, oder über einen SSH-Tunnel oder eine AWS SSM Port-Forwarding-Session, wenn er nicht im offenen Internet steht.

SQL Server, Oracle, SQLite, Redis und die anderen werden nicht unterstützt. Das solltest du vor dem Download erfahren und nicht danach. Welche Engine als Nächstes kommt, entscheidet die Nachfrage: Fehlt deine, nenne sie im öffentlichen Backlog, und sie wird mitgezählt.

Deine Datenbank-Engine anfragen
Exportieren, importieren, kopieren

Eine Datenbank bewegen, nicht nur lesen

Exportiere eine Datenbank in eine Datei. Importiere eine Datei in eine Datenbank. Oder kopiere eine Datenbank direkt auf eine andere, auch durch den SSH-Tunnel oder die AWS SSM Session, die du schon gespeichert hast. Jede Engine läuft über ihre eigenen offiziellen Werkzeuge und schreibt im Stream auf die Platte, eine Datenbank von mehreren Gigabyte wird damit zu einem Fortschrittsbalken statt zu einem Absturz.

Diese Werkzeuge kommen mit der Datenbank mit, nicht mit AgentsRoom: mysqldump und mysql, pg_dump und psql, mongodump und mongorestore. Fehlen sie, sagt die App genau, welche, und lässt dich den Ordner angeben, in dem sie liegen, so wie ein Datenbank-Client das tun sollte: aus dem Dock oder dem Startmenü gestartet, sieht eine App nur einen minimalen PATH und würde sie sonst auf einem Rechner als fehlend melden, auf dem sie längst liegen.

Beim Kopieren kostet ein falscher Klick einen ganzen Tag, deshalb ist es genau darum herum gebaut und nicht um den Idealfall.

  • Eine schreibgeschützte Verbindung lehnt den Import rundweg ab, bevor überhaupt etwas geöffnet wird.
  • Das Ziel wird in eine Datei deiner Wahl gesichert, bevor auch nur ein Statement angewendet wird.
  • Die Bestätigung nennt die Verbindung und die Datenbank beim Namen und wird deutlicher, wenn die Verbindung als Produktion markiert ist.
  • Das Ziel zu löschen und neu anzulegen ist eine eigene Option, und auf einer Produktionsverbindung musst du den Namen der Datenbank eintippen.

Von einer privaten Datenbank zu einer Antwort

Verbindung speichern, routen, dann selbst abfragen oder einen Agenten abfragen lassen.

01

Die Verbindung speichern

Füge die Datenbank hinzu: Host, Port, Benutzer, Datenbankname und TLS, wenn der Server es erwartet. Gib ihr einen Namen, den du später wiedererkennst, und markiere sie als Produktion, wenn sie das ist.

02

Sie routen, wenn sie privat ist

Ist die Datenbank nicht direkt erreichbar, richte die Verbindung auf einen SSH-Tunnel oder eine AWS SSM Port-Forwarding-Session, gebaut aus den Verbindungen, die in AgentsRoom schon gespeichert sind. Eine Datenbank in einem privaten Subnetz wird erreichbar, ohne sie öffentlich freizulegen.

03

Selbst abfragen oder einen Agenten abfragen lassen

Führe dein Statement aus der App aus, oder lass einen Agenten eines über MCP ausführen. Schreibgeschützt, bis du es änderst, ein Statement pro Aufruf, begrenzte Ergebnismengen, und eine ausdrückliche Bestätigung zwischen jedem Schreibvorgang und deinen Daten.

Wenn ein Agent die echten Zeilen braucht

Die Momente, in denen das Lesen von Produktionsdaten der kürzeste Weg zum Fix ist.

Gegen echte Daten debuggen

Der Bug zeigt sich nur bei einer Handvoll Konten. Lass den Agenten diese Zeilen lesen, und er findet den Wert, der die Logik bricht, statt drei Theorien darüber vorzuschlagen, wie die Daten aussehen könnten.

Eine Datenbank, die nicht öffentlich ist

Die Datenbank liegt in einem privaten Subnetz ohne öffentlichen Endpunkt. Leite die Verbindung über einen SSH-Tunnel oder eine AWS SSM Session, gebaut auf deinen gespeicherten Verbindungen, und frage sie ab, ohne einen Port ins Internet zu öffnen.

Lass den Agenten nachsehen, nicht raten

Bevor er eine Migration oder eine Abfrage schreibt, kann ein Agent nachsehen, was tatsächlich gespeichert ist. Er liest, er berichtet, und er bekommt dabei nie die Fähigkeit, etwas zu ändern.

Produktion, ohne Schreibrisiko

Produktion zu lesen ist oft nötig, mitten in einer Aufgabe darauf zu schreiben fast nie. Markiere die Verbindung als Produktion, halte sie schreibgeschützt, und der Unterschied zwischen Untersuchen und Kaputtmachen hängt nicht mehr davon ab, dass jemand aufpasst.

Staging mit echten Daten auffrischen

Der Bug lässt sich nur mit echten Zeilen reproduzieren. Kopiere die Datenbank auf deinen Staging-Server, durch den Tunnel, den du schon gespeichert hast, und was dort vorher lag, wird zuerst in eine Datei gesichert.

Laptop aufklappen, alles ist da

Deine Verbindungen folgen deinem Konto: dieselben Hosts, dieselben Tunnel, dieselben Kennzeichen für schreibgeschützt und Produktion. Jeder Rechner fragt einmal nach dem Passwort, denn genau das ist der Teil, der den Rechner nie verlässt, auf dem er getippt wurde.

KI-Agenten + SQL

Wie fragen meine Agenten die Datenbank ab?

db_listdb_schemadb_querydb_connection_new

Über AgentsRoom MCP, mit vier Werkzeugen. db_list liefert deine gespeicherten Verbindungen und ihre Metadaten, db_schema geht Schemas, Tabellen und Spalten durch, ohne eine Zeile SQL, db_query führt ein Statement aus und gibt die Zeilen zurück, und db_connection_new schlägt eine Datenbank vor, die du noch nicht gespeichert hast. AgentsRoom öffnet die Verbindung, samt SSH-Tunnel oder AWS SSM Session davor, wenn es einen gibt. Was zum Agenten zurückwandert, ist eine Ergebnismenge, niemals Zugangsdaten.

db_query ist schreibgeschützt, egal was die Verbindung erlaubt. Eine Verbindung schreibbar zu machen, schaltet Schreibvorgänge für dich frei, in der Konsole, wo jeder einzelne ausdrücklich bestätigt wird und wo eine als Produktion markierte Verbindung das auch deutlich sagt. Für einen Agenten schaltet es nichts frei: Die Schreibschutz-Regel für db_query sitzt in der Desktop-App statt im MCP-Prozess, sie hält also selbst dann, wenn man den Agenten dazu überredet, etwas anderes zu verlangen. Für ein DROP braucht es kein Passwort, und genau deshalb sitzt die Leitplanke am Statement und nicht nur an den Zugangsdaten.

Dieselbe Grenze gilt für das Anlegen einer Datenbank. db_connection_new öffnet das Anlageformular, vorausgefüllt mit Host, Benutzer und der SSH- oder AWS SSM Verbindung, über die sie erreicht werden soll, und du prüfst es, tippst das Passwort und speicherst. Vorher wird nichts abgelegt. Der Agent bekommt, was er braucht, um über deine Daten nachzudenken, und keiner der Wege, auf denen dieser Zugriff sonst zu einem Vorfall wird, steht ihm offen.

AgentsRoom MCP entdecken

FAQ

Welche Datenbanken werden unterstützt?

MySQL und MariaDB, PostgreSQL und MongoDB. Jede hat ihren eigenen Treiber, und jede ist direkt erreichbar oder über einen SSH-Tunnel oder eine AWS SSM Port-Forwarding-Session. SQL Server, Oracle, SQLite und der Rest werden heute nicht unterstützt. Brauchst du eine davon, frag sie im öffentlichen Backlog an: Die Liste wächst mit dem, was tatsächlich nachgefragt wird.

Kann ein KI-Agent in meine Datenbank schreiben?

Nein. Das MCP-Werkzeug, mit dem ein Agent abfragt, db_query, ist schreibgeschützt, egal was die Verbindung erlaubt: Ein SELECT, ein SHOW oder ein EXPLAIN geht durch, ein find oder ein aggregate in MongoDB ebenso, alles, was Daten verändern würde, wird abgelehnt. Eine Verbindung schreibbar zu machen, schaltet Schreibvorgänge für dich in der Konsole frei, wo jeder einzelne ausdrücklich bestätigt wird, nicht für einen Agenten. Die Leitplanke sitzt am Statement und nicht am Passwort, denn für ein DROP braucht es kein Passwort.

Wie erreiche ich eine Datenbank in einem privaten Subnetz?

Leite die Verbindung über einen SSH-Tunnel oder eine AWS SSM Port-Forwarding-Session, gebaut aus den SSH- und SSM-Verbindungen, die du in AgentsRoom schon gespeichert hast. Die App öffnet den Tunnel oder die Session und verbindet die Datenbank darüber, die Datenbank bleibt also aus dem öffentlichen Internet unerreichbar.

Sehen meine Agenten das Datenbank-Passwort?

Nein. Agenten fragen über MCP ab, indem sie eine Verbindung benennen. AgentsRoom hält die Zugangsdaten und führt das Statement selbst aus, das Passwort wird also nie an den Agenten zurückgegeben, nie in die Abfrage geschrieben und ist nie Teil der Konversation.

Kann ein Agent mehrere Statements auf einmal ausführen?

Nein. Ein Aufruf trägt genau ein Statement. Alles, was hinter einem Semikolon gestapelt ist, wird abgelehnt statt ausgeführt, und damit fällt der älteste Weg weg, einen Schreibvorgang in etwas zu verstecken, das wie ein Lesevorgang aussieht.

Was ändert es, eine Verbindung als Produktion zu markieren?

Es verschärft die Bestätigung, die vor einem Schreibvorgang nötig ist. Die Datenbank, auf die es ankommt, verhält sich nicht mehr wie die lokale Kopie, und genau das willst du am Ende eines langen Tages, und noch mehr von einem Agenten, der eine Aufgabenliste abarbeitet.

Was passiert bei einer Abfrage, die sehr viele Zeilen zurückgibt?

Ergebnismengen sind begrenzt. Eine Abfrage, die eine riesige Tabelle zurückgeben würde, kommt gekürzt zurück, statt das Fenster oder den Kontext des Agenten zu überschwemmen, ein breites SELECT bleibt also eine Unannehmlichkeit statt eines Exports deiner Daten.

Kann ein Agent eine Datenbankverbindung hinzufügen?

Er kann eine vorschlagen, niemals eine speichern. db_connection_new öffnet das Anlageformular, vorausgefüllt mit Host, Port, Benutzer und der SSH- oder AWS SSM Verbindung, über die die Datenbank erreicht werden soll, und du prüfst es, tippst das Passwort und speicherst. Vorher wird nichts abgelegt, und der Agent liefert nie Zugangsdaten.

Wie lernt ein Agent mein Schema kennen?

Mit db_schema, das eine gespeicherte Verbindung ganz ohne SQL erkundet. Ohne Argument aufgerufen listet es die Schemas auf, mit einer Datenbank die Tabellen und Views, mit einer Tabelle liefert es die Spalten, ihre Typen, ob sie NULL zulassen, ihre Schlüssel und ihre Standardwerte. Das ist günstiger und sicherer, als einen Agenten information_schema von Hand abfragen zu lassen.

Werden meine Datenbankverbindungen zwischen meinen Rechnern synchronisiert?

Die Verbindung ja, das Passwort nicht. Name, Host, Port, Benutzer, Standarddatenbank, Geltungsbereich, die Kennzeichen schreibgeschützt und Produktion sowie der SSH- oder SSM-Tunnel, über den sie läuft, folgen deinem Konto: Eine auf einem Rechner gespeicherte Verbindung taucht auf den anderen auf, statt neu getippt zu werden. Das Passwort bleibt verschlüsselt im Schlüsselbund des Rechners, auf dem du es eingegeben hast, und wird nie an uns übertragen. Genau deshalb wird eine Verbindung, die von einem anderen Rechner kommt, als wartend auf ihr Passwort markiert, bevor sie sich öffnen lässt.

Kann ich eine Datenbank exportieren und woanders importieren?

Ja. Du kannst eine Datenbank in eine Datei exportieren, eine solche Datei wieder in eine Datenbank importieren, oder eine Datenbank direkt auf eine andere kopieren, auch durch die SSH- oder SSM-Tunnel, die du schon gespeichert hast. Jede Engine läuft über ihre eigenen offiziellen Werkzeuge (mysqldump und mysql, pg_dump und psql, mongodump und mongorestore), die mit der Datenbank mitkommen und nicht mit AgentsRoom: Werden sie nicht gefunden, fragt die App nach dem Ordner, in dem sie liegen. Eine Kopie läuft nur zwischen zwei Verbindungen derselben Engine, denn ein Dump lässt sich nur in die Engine zurückspielen, die ihn erzeugt hat. Auf einer schreibgeschützten Verbindung wird ein Import abgelehnt, das Ziel wird in eine Datei deiner Wahl gesichert, bevor irgendetwas hineingeschrieben wird, und das Ziel zu ersetzen ist eine eigene Option, deren Bestätigung die Datenbank beim Namen nennt.

Das könnte dir auch gefallen

Gib deinen Agenten die Daten, nicht die Schlüssel

Lade AgentsRoom herunter, speichere deine MySQL-, PostgreSQL- und MongoDB-Verbindungen, erreiche sie über einen SSH-Tunnel oder eine AWS SSM Session und lass deine Agenten sie schreibgeschützt abfragen.

KostenlosHerunterladen

Companion-App: Agenten auch unterwegs im Blick behalten

Nutzen Sie Claude, Codex, Antigravity CLI oder einen anderen KI-Anbieter.

Erweiterung installieren
Chrome Web Store

Bugs und Wünsche direkt in dein öffentliches Backlog schicken.

Ein Blick auf AgentsRoom in Aktion.

Multi-Projekte
Multi-Provider
Multi-Agenten
Live-Status
Diff & Commit
Mobile App
Live-Vorschau
Agent-Teams
Browser-Tests
Backlog-getriebene Entwicklung
Prompt-Bibliothek
Skills-Bibliothek
Alle Funktionen ansehen