Дозвольте агентам читати вашу базу даних,
лише для читання, доки ви не вирішите інакше
AgentsRoom керує вашими з'єднаннями з MySQL і MariaDB і дає вашим AI-агентам для кодування спосіб виконувати до них запити. Лише для читання за замовчуванням, по одній інструкції за раз, і пароль лишається поза досяжністю.
Агент, який бачить справжні рядки, перестає гадати про ваші дані. Агент, який не може їх змінити, перестає бути ризиком, який доводиться контролювати рядок за рядком.
Як AgentsRoom дістається бази даних у приватній підмережі й відповідає на запит AI-агента в режимі лише для читання.
AI-агент для кодування, який не бачить ваших даних, пише код проти схеми, яку сам собі уявив. Він вигадує стовпець, припускає, що в переліку три значення, коли їх сім, і пояснює баг теорією замість рядка. З'єднання з базою даних це виправляє, і водночас це найшвидший спосіб перетворити корисного агента на інцидент. AgentsRoom побудований навколо цього напруження.
Ви зберігаєте свої з'єднання з MySQL і MariaDB у додатку так само, як у будь-якому SQL-клієнті: хост, порт, користувач, база даних і TLS, коли сервер його очікує. Якщо база недосяжна з відкритого інтернету, з'єднання маршрутизується через SSH-тунель або сесію перенаправлення портів AWS SSM, використовуючи SSH- та SSM-з'єднання, які ви вже зберегли в AgentsRoom. Саме так база даних у приватній підмережі стає чимось, до чого можна надіслати запит, не відкриваючи її світові.
Кожне з'єднання починається в режимі лише для читання. SELECT виконується. Інструкція, яка змінила б дані, не виконується, доки ви не зробите саме це з'єднання доступним для запису і не підтвердите операцію. На один виклик приймається лише одна інструкція, тож за крапкою з комою нічого зайвого не сховається, а набори результатів обмежені, щоб широкий запит не затопив ні агента, ні вікно. З'єднання також можна позначити як продакшн, і тоді підтвердження стає таким, що його важче дати випадково.
SQL-клієнт, який припускає, що за кермом агент
MySQL і MariaDB, доступні в приватних мережах, із запобіжниками, увімкненими за замовчуванням.
З'єднання з MySQL і MariaDB
Зберігайте по з'єднанню на базу даних: хост, порт, користувач, база, яку треба відкрити, і TLS, коли сервер його вимагає. Ваша локальна база, тестова і продакшн-репліка живуть в одному списку, готові до вибору замість повторного введення.
Дістаньтеся приватної бази даних
База даних у приватній підмережі: не окремий випадок. Спрямуйте з'єднання через SSH-тунель або сесію перенаправлення портів AWS SSM, і AgentsRoom відкриє її для вас, повторно використавши SSH- та SSM-з'єднання, які ви вже зберегли в додатку.
Лише для читання за замовчуванням
Нове з'єднання вміє читати і більше нічого. Запити повертають рядки, інструкції, які змінили б дані, відхиляються. Нікому не треба пам'ятати про ввімкнення безпечного режиму, бо саме з безпечного режиму починається кожне з'єднання.
Два замки перед записом
Запис потребує двох свідомих дій, а не однієї. З'єднання треба зробити доступним для запису, а саму операцію явно підтвердити. Один необережний клік не переросте в UPDATE без умови WHERE.
Одна інструкція на виклик
Кожен виклик несе рівно одну інструкцію. Усе, що зчеплене за крапкою з комою, відхиляється, а не виконується, тож читання, яке виглядає як читання, не може протягнути із собою другу інструкцію. Понад те, набори результатів обмежені.
Продакшн позначено
Позначте з'єднання як продакшн, і підтвердження стане суворішим. База даних, яка має значення, перестає виглядати точно так само, як локальна копія: і для вас наприкінці довгого дня, і для агента, який іде по списку завдань.
Агенти надсилають запити до бази, але ніколи не тримають пароль
Ваші облікові дані до бази даних зберігає AgentsRoom, а не роздає. Агент просить виконати запит до з'єднання, яке знає за іменем, додаток відкриває з'єднання, виконує інструкцію і повертає рядки. Пароль ніколи не входить у те, що отримує агент, ніколи не входить у запит, який він пише, і ніколи не потрапляє в розмову, яку він веде.
Правило лише для читання: це друга половина справи, і для агента це не значення за замовчуванням, від якого він міг би відмовитися вмовляннями. Інструмент, яким агент надсилає запити, відхиляє все, крім читання, хоч би що дозволяло це з'єднання. Зробити з'єднання доступним для запису розблоковує записи для вас, у SQL-консолі, де кожен просить явного підтвердження, яке навмисно важче дати, коли з'єднання позначене як продакшн. Найгірший наслідок поганого запиту від агента лишається хибною відповіддю, а не втраченою таблицею.
Правило однієї інструкції закриває класичну щілину. Виклик, який несе одну інструкцію, не можна доповнити крапкою з комою і другою, тож запит, що на рев'ю читається як безневинний, не зробить чогось іншого під час виконання. У парі з обмеженими наборами результатів помилка лишається помилкою, а не стає експортом.
Сьогодні MySQL і MariaDB, і більше нічого
Клієнт баз даних в AgentsRoom говорить мережевим протоколом MySQL, а MariaDB із ним сумісна, тож обидві підтримуються вже зараз: напряму, або через SSH-тунель чи сесію перенаправлення портів AWS SSM, коли сервер недосяжний з відкритого інтернету.
PostgreSQL, MongoDB, SQL Server, SQLite та інші не підтримуються. Ви маєте право знати це до завантаження, а не після нього. Який рушій буде наступним, вирішують запити людей, тож якщо вашого бракує, назвіть його в публічному беклозі, і його порахують.
Попросіть підтримку свого рушія бази данихВід приватної бази даних до відповіді
Збережіть з'єднання, прокладіть маршрут, а тоді запитуйте самі або дайте це зробити агенту.
Збережіть з'єднання
Додайте базу даних: хост, порт, користувач, назву бази і TLS, якщо сервер його очікує. Дайте їй ім'я, яке впізнаєте пізніше, і позначте як продакшн, якщо це саме він.
Прокладіть маршрут, якщо вона приватна
Якщо база недосяжна напряму, спрямуйте з'єднання на SSH-тунель або сесію перенаправлення портів AWS SSM, побудовану на з'єднаннях, уже збережених в AgentsRoom. База даних у приватній підмережі стає досяжною без відкриття її назовні.
Запитуйте самі або дайте запитати агенту
Виконайте свою інструкцію з додатка або дозвольте агенту виконати одну через MCP. Лише для читання, доки ви це не змінили, одна інструкція на виклик, обмежені набори результатів і явне підтвердження між будь-яким записом і вашими даними.
Коли агенту потрібні справжні рядки
Моменти, коли читання продакшн-даних: найкоротший шлях до виправлення.
Налагодження на справжніх даних
Баг проявляється лише для кількох акаунтів. Дозвольте агенту прочитати ці рядки, і він знайде значення, яке ламає логіку, замість того щоб пропонувати три теорії про те, як можуть виглядати дані.
База даних, якої немає в публічному доступі
База живе у приватній підмережі без публічної точки входу. Спрямуйте з'єднання через SSH-тунель або сесію AWS SSM, побудовану на ваших збережених з'єднаннях, і надсилайте запити, не відкриваючи порт в інтернет.
Нехай агент перевіряє, а не вгадує
Перш ніж написати міграцію чи запит, агент може подивитися, що насправді збережено. Він читає, він звітує, і при цьому ніколи не отримує можливості щось змінити.
Продакшн без ризику запису
Читати продакшн часто необхідно, писати в нього посеред задачі: майже ніколи. Позначте з'єднання як продакшн, лишіть його лише для читання, і різниця між дослідженням і поломкою перестане залежати від чиєїсь уважності.
Як мої агенти надсилають запити до бази даних?
Через AgentsRoom MCP, за допомогою чотирьох інструментів. db_list повертає ваші збережені з'єднання та їхні метадані, db_schema проходить схеми, таблиці та стовпці без жодного рядка SQL, db_query виконує одну інструкцію і повертає рядки, а db_connection_new пропонує базу даних, якої ви ще не зберігали. AgentsRoom відкриває з'єднання, включно з SSH-тунелем або сесією AWS SSM перед ним, якщо такі є. Назад до агента їде набір результатів, а не облікові дані.
db_query працює лише для читання, хоч би що дозволяло з'єднання. Зробити з'єднання доступним для запису розблоковує записи для вас, у SQL-консолі, де кожен підтверджується явно і де з'єднання, позначене як продакшн, каже про це вголос. Для агента воно не розблоковує нічого: правило лише для читання для db_query живе в настільному додатку, а не в процесі MCP, тож воно тримається, навіть якщо агента вмовили попросити щось інше. Щоб виконати DROP, пароль не потрібен, і саме тому запобіжник стоїть на інструкції, а не лише на облікових даних.
Те саме обмеження діє на реєстрацію бази даних. db_connection_new відкриває форму створення, заздалегідь заповнену хостом, користувачем і з'єднанням SSH чи AWS SSM, через яке слід діставатися бази, а переглядаєте її, вводите пароль і зберігаєте ви. Доки ви цього не зробите, нічого не зберігається. Агент отримує все, що потрібно, щоб міркувати про ваші дані, і жоден зі звичних шляхів, якими такий доступ перетворюється на інцидент, йому не доступний.
Відкрийте для себе AgentsRoom MCPЧасті запитання
Які бази даних підтримуються?
MySQL і MariaDB, і тільки вони. Клієнт говорить мережевим протоколом MySQL, а MariaDB із ним сумісна, тож працюють обидві: напряму або через SSH-тунель чи сесію перенаправлення портів AWS SSM. PostgreSQL, MongoDB, SQL Server, SQLite та решта сьогодні не підтримуються. Якщо вам потрібна одна з них, попросіть про це в публічному беклозі: список зростає за тим, що люди справді просять.
Чи може AI-агент писати в мою базу даних?
Ні. Інструмент MCP, яким агент надсилає запити, db_query, працює лише для читання, хоч би що дозволяло з'єднання: SELECT, SHOW, DESCRIBE, EXPLAIN і WITH проходять, усе, що змінило б дані, відхиляється. Зробити з'єднання доступним для запису розблоковує записи для вас у SQL-консолі, де кожен підтверджується явно. Для агента воно не розблоковує нічого. Запобіжник стоїть на інструкції, а не на паролі, бо щоб виконати DROP, пароль не потрібен.
Як дістатися бази даних у приватній підмережі?
Спрямуйте з'єднання через SSH-тунель або сесію перенаправлення портів AWS SSM, побудовану на SSH- та SSM-з'єднаннях, які ви вже зберегли в AgentsRoom. Додаток відкриває тунель або сесію і підключає базу даних через неї, тож база лишається недосяжною з публічного інтернету.
Чи бачать мої агенти пароль до бази даних?
Ні. Агенти надсилають запити через MCP, називаючи з'єднання. AgentsRoom тримає облікові дані і сам виконує інструкцію, тож пароль ніколи не повертається агенту, ніколи не потрапляє в запит і ніколи не стає частиною розмови.
Чи може агент виконати кілька інструкцій за раз?
Ні. Один виклик несе рівно одну інструкцію. Усе, що зчеплене за крапкою з комою, відхиляється, а не виконується, що прибирає найдавніший спосіб сховати запис усередині чогось, що виглядає як читання.
Що змінює позначка продакшн на з'єднанні?
Вона робить підтвердження перед записом суворішим. База даних, яка має значення, перестає поводитися як локальна копія: саме цього ви хочете наприкінці довгого дня і ще більше хочете від агента, який іде по списку завдань.
Що станеться із запитом, який повертає багато рядків?
Набори результатів обмежені. Запит, який повернув би величезну таблицю, приходить обрізаним замість того, щоб затопити вікно чи контекст агента, тож широкий SELECT лишається незручністю, а не експортом ваших даних.
Чи може агент додати з'єднання з базою даних?
Він може його запропонувати, але ніколи не зберегти. db_connection_new відкриває форму створення, заздалегідь заповнену хостом, портом, користувачем і з'єднанням SSH чи AWS SSM, через яке слід діставатися бази даних, а переглядаєте її, вводите пароль і зберігаєте ви. Доки ви цього не зробите, нічого не зберігається, і агент ніколи не надає облікових даних.
Як агент дізнається мою схему?
За допомогою db_schema, який досліджує збережене з'єднання без жодного SQL. Викликаний без аргументів, він перелічує схеми, з базою даних: таблиці та подання, з таблицею: стовпці, їхні типи, чи допускають вони NULL, їхні ключі та їхні значення за замовчуванням. Це дешевше і безпечніше, ніж змушувати агента вручну надсилати запити до information_schema.
Вам також може сподобатися
RDS через AWS SSM
Дістаньтеся зі своєї машини інстанса Amazon RDS, який не має публічної точки входу, через aws ssm start-session і документ AWS-StartPortForwardingSessionToRemoteHost. Ні бастіона, який треба обслуговувати, ні VPN, ні вхідного правила SSH. AgentsRoom відкриває сесію на loopback-порту і підключає через неї SQL-клієнт. Лише MySQL і MariaDB, тобто RDS MySQL і сумісні з MySQL редакції Aurora.
SSH-з'єднання
Зберігайте ваші SSH-з'єднання, відкривайте вбудований термінал через SSH і запускайте Claude Code, Codex або Antigravity CLI безпосередньо на вашому віддаленому сервері або VPS. Аутентифікація за ключем SSH або паролем, профілі з'єднань для кожного проєкту, окремий SSH-клієнт не потрібен.
Менеджер секретів
Зберігайте API-ключі, токени та паролі в ключовому сховищі вашої ОС, посилайтеся на них як {{secret:NAME}} у командах розробки та середовищах агентів, а AgentsRoom підставить значення під час запуску. Агенти бачать імена, але ніколи не значення, і нічого не надсилається на сервер.
Термінали для розробки
Менеджер терміналів і запуск процесів для кожного проєкту. Запускайте бекенд, фронтенд і воркери одним кліком, локально або на віддаленому сервері.
AgentsRoom MCP
MCP-сервер, який дозволяє вашим агентам керувати самим AgentsRoom: проєктами, терміналами, беклогом і з'єднаннями, з усіма запобіжниками, що йдуть у комплекті.
Дайте агентам дані, а не ключі
Завантажте AgentsRoom, збережіть свої з'єднання з MySQL і MariaDB, діставайтеся їх через SSH-тунель або сесію AWS SSM і дозвольте агентам надсилати до них запити в режимі лише для читання.
Додаток-компаньйон: контролюйте своїх агентів на ходу
Використовуйте свого: Claude, Codex, Antigravity CLI або іншого AI-провайдера.
Надсилайте баги та запити прямо у свій публічний беклог.
Погляд на AgentsRoom в дії.