Połączenia z bazami danych

Pozwól swoim agentom odpytywać bazę,
tylko do odczytu, dopóki nie zdecydujesz inaczej

AgentsRoom zarządza Twoimi połączeniami MySQL i MariaDB i daje agentom AI do kodowania sposób na uruchamianie zapytań. Domyślnie tylko do odczytu, po jednym poleceniu naraz, z hasłem trzymanym poza ich zasięgiem.

Agent, który widzi prawdziwe wiersze, przestaje zgadywać, co jest w Twoich danych. Agent, który nie może w nich pisać, przestaje być ryzykiem pilnowanym linijka po linijce.

Klient SQL
Tylko do odczytu
AgentsRoom
SELECT id, email, plan FROM users LIMIT 50
DELETE FROM users WHERE id = 42
Zablokowane: połączenie tylko do odczytu
Tunel SSHbastion.acme.dev
Prywatna podsieć
Ograniczony zbiór wyników
Przez Twoje zapisane połączenie
Jedno polecenie na wywołanieHasło nigdy nie opuszcza aplikacji

Jak AgentsRoom sięga po bazę danych w prywatnej podsieci i odpowiada na zapytanie agenta AI w trybie tylko do odczytu.

Agent AI do kodowania, który nie widzi Twoich danych, pisze kod pod schemat, który sobie wyobraził. Wymyśla kolumnę, zakłada, że enum ma trzy wartości, choć ma ich siedem, i tłumaczy błąd teorią zamiast wierszem. Danie mu połączenia z bazą to naprawia, a jednocześnie jest najszybszą drogą do zamiany pomocnego agenta w incydent. AgentsRoom jest zbudowany wokół tego napięcia.

Zapisujesz swoje połączenia MySQL i MariaDB w aplikacji tak, jak zrobiłbyś to w dowolnym kliencie SQL: host, port, użytkownik, baza i TLS, gdy serwer tego oczekuje. Jeśli baza nie jest osiągalna z otwartego internetu, połączenie jest kierowane przez tunel SSH albo sesję przekierowania portów AWS SSM, na bazie połączeń SSH i SSM zapisanych już w AgentsRoom. W ten sposób baza siedząca w prywatnej podsieci staje się czymś, co możesz odpytywać, nie otwierając jej na świat.

Każde połączenie startuje w trybie tylko do odczytu. SELECT się wykona. Polecenie, które zmieniłoby dane, nie, dopóki nie uczynisz tego konkretnego połączenia zapisywalnym i nie potwierdzisz operacji. Na jedno wywołanie przyjmowane jest wyłącznie jedno polecenie, więc nic dodatkowego nie schowa się za średnikiem, a zbiory wyników są ograniczane, żeby szerokie zapytanie nie zalało agenta ani okna. Połączenie można też oznaczyć jako produkcyjne, co utrudnia przypadkowe potwierdzenie.

Klient SQL, który zakłada, że steruje nim agent

MySQL i MariaDB, osiągalne w sieciach prywatnych, z zabezpieczeniami włączonymi domyślnie.

Połączenia MySQL i MariaDB

Zapisz połączenie dla każdej bazy: host, port, użytkownik, baza do otwarcia i TLS, gdy serwer tego wymaga. Twoja baza lokalna, ta ze stagingu i replika produkcyjna żyją na tej samej liście, gotowe do wybrania zamiast przepisywania.

Sięgnij po prywatną bazę

Baza w prywatnej podsieci to nie jest przypadek szczególny. Skieruj połączenie przez tunel SSH albo sesję przekierowania portów AWS SSM, a AgentsRoom otworzy je za Ciebie, wykorzystując połączenia SSH i SSM zapisane już w aplikacji.

Domyślnie tylko do odczytu

Nowe połączenie potrafi czytać i nic więcej. Zapytania zwracają wiersze, polecenia, które zmieniłyby dane, są odrzucane. Nikt nie musi pamiętać o włączeniu trybu bezpiecznego, bo tryb bezpieczny to punkt startowy każdego połączenia.

Dwa zamki przed zapisem

Zapis wymaga dwóch świadomych ruchów, nie jednego. Połączenie musi zostać uczynione zapisywalnym, a sama operacja musi zostać wyraźnie potwierdzona. Jedno nieuważne kliknięcie nie przerodzi się w UPDATE bez klauzuli WHERE.

Jedno polecenie na wywołanie

Każde wywołanie niesie dokładnie jedno polecenie. Cokolwiek doklejone za średnikiem jest odrzucane, a nie wykonywane, więc odczyt, który wygląda na odczyt, nie przemyci ze sobą drugiego polecenia. Do tego dochodzą ograniczone zbiory wyników.

Produkcja jest oznaczona

Oznacz połączenie jako produkcyjne, a potwierdzenie stanie się trudniejsze. Baza, na której naprawdę zależy, przestaje wyglądać dokładnie tak jak lokalna kopia, zarówno dla Ciebie pod koniec długiego dnia, jak i dla agenta przerabiającego listę zadań.

Agenci odpytują bazę, nigdy nie trzymają hasła

Dane logowania do Twojej bazy AgentsRoom przechowuje, a nie rozdaje. Agent prosi o uruchomienie zapytania na połączeniu, które zna po nazwie, aplikacja otwiera połączenie, wykonuje polecenie i zwraca wiersze. Hasło nigdy nie jest częścią tego, co agent dostaje, nigdy nie jest częścią zapytania, które pisze, ani rozmowy, którą prowadzi.

Reguła tylko do odczytu to druga połowa tej układanki, a dla agenta nie jest ustawieniem domyślnym, z którego dałoby się wygadać. Narzędzie, którym agent odpytuje bazę, odrzuca wszystko poza odczytem, niezależnie od tego, na co pozwala samo połączenie. Uczynienie połączenia zapisywalnym odblokowuje zapisy dla Ciebie, w konsoli SQL, gdzie każdy z nich prosi o wyraźne potwierdzenie, celowo trudniejsze do wydania, gdy połączenie jest oznaczone jako produkcyjne. Najgorszym skutkiem złego zapytania uruchomionego przez agenta zostaje zła odpowiedź, a nie utracona tabela.

Zasada jednego polecenia zamyka klasyczną lukę. Wywołania niosącego jedno polecenie nie da się rozszerzyć średnikiem i drugim poleceniem, więc zapytanie, które w przeglądzie czyta się jako nieszkodliwe, nie zrobi czegoś innego w chwili wykonania. W połączeniu z ograniczonymi zbiorami wyników pomyłka zostaje pomyłką, zamiast stać się eksportem danych.

Obsługiwane silniki

Dziś MySQL i MariaDB, i nic poza tym

Klient bazy danych w AgentsRoom mówi protokołem sieciowym MySQL, a MariaDB jest z nim zgodna, więc obie są obsługiwane już teraz: bezpośrednio albo przez tunel SSH lub sesję przekierowania portów AWS SSM, gdy serwer nie jest osiągalny z otwartego internetu.

PostgreSQL, MongoDB, SQL Server, SQLite i pozostałe nie są obsługiwane. Masz prawo wiedzieć o tym przed pobraniem, a nie po nim. O tym, który silnik będzie następny, decyduje to, o co proszą ludzie, więc jeśli brakuje Twojego, napisz który na publicznym backlogu, a zostanie policzony.

Poproś o swój silnik bazy danych

Od prywatnej bazy do odpowiedzi

Zapisz połączenie, skieruj je, a potem odpytuj sam albo pozwól agentowi.

01

Zapisz połączenie

Dodaj bazę: host, port, użytkownik, nazwa bazy i TLS, jeśli serwer tego oczekuje. Nadaj jej nazwę, którą później rozpoznasz, i oznacz jako produkcyjną, jeśli tym właśnie jest.

02

Skieruj je, jeśli baza jest prywatna

Jeśli baza nie jest osiągalna bezpośrednio, wskaż połączeniu tunel SSH albo sesję przekierowania portów AWS SSM zbudowaną z połączeń zapisanych już w AgentsRoom. Baza w prywatnej podsieci staje się osiągalna bez wystawiania jej publicznie.

03

Odpytaj ją sam albo pozwól agentowi

Uruchom polecenie z poziomu aplikacji albo pozwól agentowi uruchomić je przez MCP. Tylko do odczytu, dopóki tego nie zmienisz, jedno polecenie na wywołanie, ograniczone zbiory wyników i wyraźne potwierdzenie stojące między każdym zapisem a Twoimi danymi.

Kiedy agent potrzebuje prawdziwych wierszy

Momenty, w których odczyt danych produkcyjnych to najkrótsza droga do poprawki.

Debugowanie na prawdziwych danych

Błąd pokazuje się tylko dla garstki kont. Pozwól agentowi przeczytać te wiersze, a znajdzie wartość, która łamie logikę, zamiast proponować trzy teorie o tym, jak te dane mogą wyglądać.

Baza, która nie jest publiczna

Baza żyje w prywatnej podsieci bez publicznego endpointu. Skieruj połączenie przez tunel SSH albo sesję AWS SSM zbudowaną na Twoich zapisanych połączeniach i odpytuj ją, nie otwierając portu do internetu.

Niech agent sprawdzi, a nie zgaduje

Zanim napisze migrację albo zapytanie, agent może zobaczyć, co jest naprawdę zapisane. Czyta, raportuje i przy okazji nigdy nie dostaje możliwości zmiany czegokolwiek.

Produkcja bez ryzyka zapisu

Czytanie produkcji często jest konieczne, pisanie do niej w środku zadania prawie nigdy. Oznacz połączenie jako produkcyjne, zostaw je tylko do odczytu, a różnica między badaniem a psuciem przestanie zależeć od czyjejś uwagi.

Agenci AI + SQL

Jak moi agenci odpytują bazę danych?

db_listdb_schemadb_querydb_connection_new

Przez AgentsRoom MCP, za pomocą czterech narzędzi. db_list zwraca Twoje zapisane połączenia i ich metadane, db_schema przechodzi po schematach, tabelach i kolumnach bez linijki SQL, db_query uruchamia jedno polecenie i zwraca wiersze, a db_connection_new proponuje bazę, której jeszcze nie zapisałeś. AgentsRoom otwiera połączenie, razem z tunelem SSH albo sesją AWS SSM przed nim, jeśli taka istnieje. Do agenta wraca zbiór wyników, nigdy dane logowania.

db_query jest tylko do odczytu, niezależnie od tego, na co pozwala połączenie. Uczynienie połączenia zapisywalnym odblokowuje zapisy dla Ciebie, w konsoli SQL, gdzie każdy z nich jest wyraźnie potwierdzany i gdzie połączenie oznaczone jako produkcyjne mówi o tym głośno. Nie odblokowuje ich dla agenta: reguła tylko do odczytu dla db_query żyje w aplikacji desktopowej, a nie w procesie MCP, więc obowiązuje nawet wtedy, gdy ktoś namówi agenta, żeby poprosił o coś innego. Do uruchomienia DROP nie potrzeba hasła i właśnie dlatego zabezpieczenie siedzi na poleceniu, a nie tylko na danych logowania.

To samo ograniczenie dotyczy rejestrowania bazy danych. db_connection_new otwiera formularz tworzenia wypełniony wstępnie hostem, użytkownikiem oraz połączeniem SSH albo AWS SSM, przez które należy po nią sięgnąć, a Ty go sprawdzasz, wpisujesz hasło i zapisujesz. Nic nie zostaje zapisane, dopóki tego nie zrobisz. Agent dostaje to, czego potrzebuje, żeby wnioskować o Twoich danych, a żaden ze zwykłych sposobów, w jakie taki dostęp zamienia się w incydent, nie jest dla niego dostępny.

Poznaj AgentsRoom MCP

FAQ

Które bazy danych są obsługiwane?

MySQL i MariaDB, i tylko one. Klient mówi protokołem sieciowym MySQL, a MariaDB jest z nim zgodna, więc obie działają: bezpośrednio albo przez tunel SSH lub sesję przekierowania portów AWS SSM. PostgreSQL, MongoDB, SQL Server, SQLite i reszta nie są dziś obsługiwane. Jeśli potrzebujesz którejś z nich, poproś o nią na publicznym backlogu: lista rośnie wraz z tym, o co ludzie faktycznie proszą.

Czy agent AI może pisać do mojej bazy danych?

Nie. Narzędzie MCP, którym agent odpytuje bazę, db_query, jest tylko do odczytu, niezależnie od tego, na co pozwala połączenie: SELECT, SHOW, DESCRIBE, EXPLAIN i WITH przechodzą, a wszystko, co zmieniłoby dane, jest odrzucane. Uczynienie połączenia zapisywalnym odblokowuje zapisy dla Ciebie, w konsoli SQL, gdzie każdy jest wyraźnie potwierdzany, a nie dla agenta. Zabezpieczenie siedzi na poleceniu, a nie na haśle, bo do uruchomienia DROP hasło nie jest tym, czego trzeba.

Jak dostać się do bazy w prywatnej podsieci?

Skieruj połączenie przez tunel SSH albo sesję przekierowania portów AWS SSM, zbudowaną z połączeń SSH i SSM zapisanych już w AgentsRoom. Aplikacja otwiera tunel lub sesję i przez nią łączy się z bazą, więc baza pozostaje nieosiągalna z publicznego internetu.

Czy moi agenci widzą hasło do bazy danych?

Nie. Agenci odpytują bazę przez MCP, wskazując połączenie po nazwie. AgentsRoom trzyma dane logowania i sam wykonuje polecenie, więc hasło nigdy nie wraca do agenta, nigdy nie jest wpisywane do zapytania i nigdy nie jest częścią rozmowy.

Czy agent może uruchomić kilka poleceń naraz?

Nie. Jedno wywołanie niesie dokładnie jedno polecenie. Cokolwiek doklejone za średnikiem jest odrzucane, a nie wykonywane, co usuwa najstarszy sposób na ukrycie zapisu w czymś, co wygląda na odczyt.

Co zmienia oznaczenie połączenia jako produkcyjne?

Utwardza potwierdzenie wymagane przed zapisem. Baza, na której naprawdę zależy, przestaje zachowywać się jak lokalna kopia, czego chcesz pod koniec długiego dnia, a tym bardziej od agenta przerabiającego listę zadań.

Co się dzieje z zapytaniem, które zwraca mnóstwo wierszy?

Zbiory wyników są ograniczane. Zapytanie, które zwróciłoby ogromną tabelę, wraca przycięte, zamiast zalać okno albo kontekst agenta, więc szeroki SELECT zostaje niedogodnością, a nie eksportem Twoich danych.

Czy agent może dodać połączenie z bazą danych?

Może je zaproponować, nigdy zapisać. db_connection_new otwiera formularz tworzenia wypełniony wstępnie hostem, portem, użytkownikiem oraz połączeniem SSH albo AWS SSM, przez które należy sięgnąć po bazę, a Ty go sprawdzasz, wpisujesz hasło i zapisujesz. Nic nie zostaje zapisane, dopóki tego nie zrobisz, a agent nigdy nie podaje danych logowania.

Skąd agent poznaje mój schemat?

Dzięki db_schema, które bada zapisane połączenie bez żadnego SQL. Wywołane bez argumentu listuje schematy, z nazwą bazy listuje tabele i widoki, z nazwą tabeli zwraca kolumny, ich typy, dopuszczalność wartości pustych, klucze i wartości domyślne. To tańsze i bezpieczniejsze niż kazanie agentowi ręcznie odpytywać information_schema.

Może Cię też zainteresować

Daj swoim agentom dane, a nie klucze

Pobierz AgentsRoom, zapisz swoje połączenia MySQL i MariaDB, sięgnij po nie przez tunel SSH albo sesję AWS SSM i pozwól agentom odpytywać je tylko do odczytu.

Za darmoPobierz

Aplikacja towarzyszaca: monitoruj agentów w podrozy

Użyj Claude, Codex, Antigravity CLI lub innego dostawcy AI.

Zainstaluj rozszerzenie
Chrome Web Store

Wysyłaj bugi i prośby bezpośrednio do swojego publicznego backlogu.

Spojrzenie na AgentsRoom w akcji.

Wiele projektów
Multi-provider
Wielu agentów
Status na żywo
Diff i commit
Aplikacja mobilna
Podgląd na żywo
Zespoły agentów
Testy w przeglądarce
Dev oparta na backlogu
Biblioteka promptów
Biblioteka umiejętności
Zobacz wszystkie funkcje