DB Connect MCP

DB Connect MCP

yugui923MIT
4 звёзд3 форков
DB Connect MCP — сервер для безопасного исследования баз данных через AI-ассистента. Поддерживает PostgreSQL, MySQL и ClickHouse. Работает только на чтение, поэтому данные остаются в целости. Инструмент пригодится разработчикам, аналитикам и администраторам, чтобы изучать схему, смотреть метрики таблиц и выполнять SQL-запросы без прямого доступа к консоли. Сервер спроектирован для исследовательского анализа: вы даёте команду ассистенту, а он получает данные через MCP. Никаких лишних действий.

Установка

uvx db-connect-mcp

Характеристики

Общее

  • СтатусСообщество
  • Разработчикyugui923
  • ЛицензияMIT

Технологии

  • Языки
    Python
  • Транспорт
    stdio

Описание

Возможности

  • Подключение к трём СУБД: PostgreSQL, MySQL и ClickHouse.
  • Просмотр списка схем и таблиц с метаданными (размер, количество строк, комментарии).
  • Детальное описание таблиц: структура колонок, индексы, ограничения.
  • Анализ связей между таблицами через внешние ключи.
  • Профилирование колонок: подсчёт уникальных значений, пропусков, числовые статистики (среднее, медиана, квартили).
  • Выборка данных с настраиваемым лимитом — удобно для быстрого просмотра содержимого.
  • Выполнение произвольных SQL-запросов в безопасном режиме read-only.
  • Получение общей статистики по базе: размер базы, самые крупные таблицы.
  • Анализ частотности значений в колонках для понимания распределения данных.

Как подключить

1. Установите пакет:

pip install db-connect-mcp

или через uvx (если используете uv):

uvx db-connect-mcp

2. Добавьте конфигурацию в файл настроек вашего MCP-клиента (например, для Claude Desktop), указав URL вашей базы данных:

{ "mcpServers": { "db-connect": { "command": "python", "args": ["-m", "db_connect_mcp"], "env": { "DATABASE_URL": "postgresql://user:pass@localhost:5432/mydb" } } } }

Замените DATABASE_URL на адрес вашей СУБД. Поддерживаются PostgreSQL, MySQL и ClickHouse.

3. Перезапустите клиент (Claude Desktop или другой). После перезапуска ассистент сможет подключаться к вашей базе.

Примеры запросов

  • «Покажи список всех таблиц и их размер в схеме public».
  • «Найди таблицы с максимальным количеством строк и укажи их размер».
  • «Профилируй колонку salary в таблице employees: среднее, медиана, квартили и количество пропусков».
  • «Покажи структуру таблицы orders, включая внешние ключи и индексы».
  • «Выполни SQL-запрос: SELECT status, count(*) FROM orders GROUP BY status ORDER BY count(*) DESC».

Технические детали

  • Язык разработки: Python
  • Транспорт: stdio
  • Лицензия: MIT
  • Режим работы: только чтение (read-only)
  • Поддерживаемые СУБД: PostgreSQL, MySQL, ClickHouse
  • Совместимые клиенты: Claude Desktop, любой MCP-клиент

Поделиться