LazyDB CLI

Терминальный клиент баз данных на Rust с MCP и JSON CLI: агент читает схему и запускает запросы с правами профиля.

  • 67 ★ репозитория
  • Последний коммит
CLI

Расширенный доступ

Почему такой уровень

  • Агент выполняет запросы к реальным базам; запись закрыта политикой `deny`, но права роли в базе остаются главной защитой.
Все причины и проверки

yelog/lazydb

Установка

Работает в

Ручная установка

brew install yelog/tap/lazydb

Первый вариант из раздела Quickstart. Для macOS и Linux есть скрипт установки, для Windows PowerShell-скрипт.

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Агент выполняет запросы к реальным базам; запись закрыта политикой `deny`, но права роли в базе остаются главной защитой.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

LazyDB — клавиатурный клиент баз данных для терминала, написанный на Rust. Он открывает схемы, данные таблиц, ключи Redis и Valkey, документы MongoDB, SQL-консоли с автодополнением и панель мониторинга. Поддержаны PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, ClickHouse, Snowflake, BigQuery, SQLite, DuckDB, Elasticsearch и другие. Для агентов есть две точки входа: локальный MCP-сервер по stdio и JSON CLI `lazydb agent`. Команда `lazydb mcp setup` подключает сервер к Claude Code, Codex или OpenCode. Агент видит профили подключений текущего проекта и общие профили, ищет объекты схемы, описывает таблицы и выполняет запросы. Запись в базу по умолчанию запрещена.

Для кого. Разработчикам, которые отлаживают данные в нескольких базах и хотят дать Claude Code или Codex доступ на чтение к схеме проекта без отдельного MCP на каждую СУБД.

Подходит, если

  • Агент пишет миграцию и сначала смотрит реальную схему таблиц.
  • В проекте живут PostgreSQL, Redis и MongoDB, и нужен один клиент для всех.
  • Надо быстро выполнить `SELECT` из терминала и отдать результат агенту в JSON.
  • Запись в базу разрешают только на dev и staging, а прод закрыт.

Не подходит, если

  • Нужен веб-интерфейс с мышью для аналитиков без терминала.
  • Агенту разрешено менять рабочие данные без ревью.
  • База недоступна с машины разработчика и нет туннеля.

Пример запроса к агенту

Покажи таблицы проекта, найди поле `email` и выполни `SELECT * FROM users LIMIT 20` на профиле orders-dev.

Ограничения

Проект в бете: возможности зависят от СУБД, список лежит в `docs/database-capabilities.md`. Для Oracle нужен Oracle Instant Client, для DuckDB отдельная среда выполнения C API. Агенты видят и общие профили, поэтому лишние подключения лучше хранить в профилях других проектов. Запись защищена флагом `--write-policy`, но настоящим барьером остаются права роли в самой базе: для чтения заводите роль только на чтение.

Как отключить. Удалите запись `lazydb` из конфигурации MCP клиента (например `.codex/config.toml` или `opencode.json`) и перезапустите агента. Сам клиент удаляет инструкция из `docs/installation.md`.

Частые вопросы

Может ли агент менять данные?

Нет, пока включена политика по умолчанию. `--write-policy deny` отклоняет `execute_change` и `execute_file` даже после подтверждения в клиенте. Режим `non-production` открывает запись на dev и staging, режим `all` нужен для прод-записи.

Какие профили видит агент?

Профили текущего Git-проекта и общие профили. Профили, привязанные только к другому проекту, скрыты и недоступны ни по имени, ни по UUID.

Как хранится пароль?

Пароль сохраняется в локальном зашифрованном хранилище LazyDB. Его передают через переменную окружения опцией `--password-env`, а в команду и URL не вписывают.

Работает ли без MCP?

Да, команды `lazydb agent connections`, `schema-search`, `describe` и `query` печатают JSON и подходят для скриптов и агентов без поддержки MCP.

Какие базы поддерживает клиент?

PostgreSQL, CockroachDB, MySQL, MariaDB, TiDB, Oracle, SQL Server, ClickHouse, Snowflake, BigQuery, SQLite, DuckDB, Redis, Valkey, MongoDB, Elasticsearch и OpenSearch. Возможности зависят от СУБД и описаны в `docs/database-capabilities.md`.

Обсуждение

Вопросов и отзывов пока нет.

Один MCP-сервер для SQLite, SQL Server, PostgreSQL и MySQL: агент читает и меняет данные, правит схему и выгружает CSV и JSON

MCP-серверШирокий доступ391Звезды репозитория
Официальный

Легкое рабочее место для баз данных с MCP-сервером: агент читает схему, выполняет запросы и разбирает данные в PostgreSQL, MySQL и других

MCP-серверШирокий доступ5,1 тыс.Звезды репозитория

CLI для десятков баз данных с режимом для агентов: JSON на выходе, режим только для чтения, лимиты и брокер, скрывающий пароли

CLIШирокий доступ92Звезды репозитория
Официальный

Консольная утилита linq2db с MCP-сервером: агент смотрит схему любой из поддерживаемых баз и запускает один SELECT за раз.

MCP-серверРасширенный доступ3,3 тыс.Звезды репозитория
Официальный

Десктопное рабочее место для SQL с встроенным MCP-сервером: агент читает схему и выполняет запросы в том же клиенте, где работаете вы

MCP-серверШирокий доступ5,5 тыс.Звезды репозитория
Официальный

Один бинарник MCP-сервера для MySQL, MariaDB, PostgreSQL и SQLite: запросы только на чтение по умолчанию и маскировка ПДн

MCP-серверШирокий доступ33Звезды репозитория

Коротко о README

LazyDB работает как терминальный клиент для разработчиков. Сверх этого он отдает агентам схему и запросы через MCP и JSON CLI, а запись выключена до явного разрешения.

Бейдж для README

Сообщить о проблеме