# DB Connect MCP

Даёт агенту доступ только на чтение к PostgreSQL, MySQL и ClickHouse: посмотреть схемы, таблицы, связи и профили колонок.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 6
- Автор: yugui923
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/yugui923/db-connect-mcp
- Обновлён: 2026-10-21
- HTML: https://affpapa.org/nevibecode/mcp/db-connect-mcp

## Что делает

Сервер работает в режиме read-only. Разрешает только `SELECT` и `WITH`, сам добавляет лимиты к запросам, чтобы не вытащить всю таблицу. Каждое подключение открывается с параметрами только для чтения.

Внутри — адаптеры под три СУБД. Для PostgreSQL доступны метаданные и статистика, для MySQL и MariaDB — полная поддержка, для ClickHouse — аналитические нагрузки. Есть профилирование колонок (среднее, медиана, квартили, частота значений), сэмплирование данных, поиск объектов и планы запросов. Отдельно — гипотетические индексы в PostgreSQL через расширение HypoPG: это опт-ин, нужно `DB_HYPOPG_ENABLED=true` и администратор, установивший расширение. Оценки планировщика — не замеры реальной скорости.

Нужен Python 3.10 или выше и строка подключения в `DATABASE_URL`. Для баз за файрволом есть SSH-туннели с паролем или приватным ключом. Сервер лучше работает с базами, где у таблиц и колонок есть комментарии: тогда агенту понятнее модель данных. Без комментариев он видит только имена.

## Требования
- Нужно: Python и uv (команды через uvx)
- Переменные окружения: `DATABASE_URL` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add db-connect-mcp -e DATABASE_URL=<DATABASE_URL> -- uvx db-connect-mcp
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from db-connect-mcp <команда>

### Codex

**Командой платформы**
```bash
codex mcp add db-connect-mcp --env DATABASE_URL=<DATABASE_URL> -- uvx db-connect-mcp
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from db-connect-mcp <команда>

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "db-connect-mcp": {
            "command": "uvx",
            "args": [
                "db-connect-mcp"
            ],
            "env": {
                "DATABASE_URL": "<DATABASE_URL>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from db-connect-mcp <команда>

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "db-connect-mcp": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "db-connect-mcp"
            ],
            "env": {
                "DATABASE_URL": "<DATABASE_URL>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from db-connect-mcp <команда>

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e DATABASE_URL=<DATABASE_URL> db-connect-mcp uvx db-connect-mcp
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from db-connect-mcp <команда>

## Когда брать
- посмотреть структуру чужой базы, не подключаясь к ней вручную
- вытащить распределение значений по колонке
- найти таблицы и индексы по имени
- оценить план запроса до его запуска
- сравнить гипотетический индекс с текущим планом

## Примеры запросов агенту
- Покажи все схемы в базе и список таблиц с размерами
- Опиши таблицу `orders` и её связи с другими таблицами
- Профилируй колонку `status` в таблице `orders`

## Похожие
- [database-optimization](https://affpapa.org/nevibecode/agents/database-optimization.md) — субагент · 3924 установки
- [DBHub](https://affpapa.org/nevibecode/mcp/dbhub.md) — MCP-сервер · ★ 3730
- [MCP Database Server](https://affpapa.org/nevibecode/mcp/mcp-database-server.md) — MCP-сервер · ★ 19
- [DataClawe — Database as a Utility](https://affpapa.org/nevibecode/mcp/dataclawe-database-as-a-utility.md) — MCP-сервер
- [sql-pro](https://affpapa.org/nevibecode/skills/httpsgithubcomjeffallan-sql-pro.md) — скилл · 6400 установок
- [database-cloud-optimization-database-optimizer](https://affpapa.org/nevibecode/agents/database-cloud-optimization-database-optimizer.md) — субагент · ★ 41823

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
