
PostgreSQL MCP Server
itunified-ioAGPL-3.0
PostgreSQL MCP Server — это MCP-сервер с 27 инструментами для работы с PostgreSQL. Он позволяет AI-ассистентам выполнять SQL-запросы, анализировать схему, проводить CRUD-операции и администрировать сервер.
Сервер подходит для разработчиков, которым нужен быстрый доступ к данным из чата, и DBA для мониторинга и настройки. Всё управление происходит через MCP-клиент — вы даёте команду на естественном языке, а ассистент выполняет её в базе данных.
Установка
npx -y @itunified.io/mcp-postgresХарактеристики
Общее
- СтатусСообщество
- Разработчикitunified-io
- ЛицензияAGPL-3.0
Технологии
- ЯзыкиTypeScript
- Транспортstdio
Описание
Возможности
- Подключение к PostgreSQL через строку подключения или отдельные параметры (PGHOST, PGPORT, PGUSER, PGPASSWORD, PGDATABASE) с опциональным SSL.
- Выполнение параметризованных запросов и подготовленных выражений с защитой от SQL-инъекций.
- Запуск EXPLAIN и EXPLAIN ANALYZE для оптимизации запросов.
- Интроспекция схемы: просмотр таблиц, индексов, ограничений, представлений, функций, перечислений и расширений.
- Типизированные CRUD-операции: вставка, обновление, удаление и upsert.
- Управление сервером: версия PostgreSQL, настройки, перезагрузка конфигурации, аптайм.
- Определение размеров баз данных и таблиц с разбивкой по индексам и TOAST.
- Управление пулом соединений: подключение, отключение, мониторинг здоровья пула.
- Мультибазовая конфигурация через YAML- или JSON-файл, переключение между базами данных.
- Интеграция с HashiCorp Vault для безопасного хранения паролей (опционально).
Как подключить
1. Установите пакет:
npm install @itunified.io/mcp-postgres
Или используйте npx для однократного запуска:
npx -y @itunified.io/mcp-postgres
2. Настройте подключение к базе данных. Можно задать строку подключения через переменную POSTGRES_CONNECTION_STRING, или отдельные параметры: PGHOST, PGPORT, PGUSER, PGPASSWORD, PGDATABASE, PGSSLMODE.
3. Для работы с несколькими базами создайте конфигурационный файл в директории ~/.config/mcp-postgres/databases.yaml или databases.json. Укажите в нём имена баз и параметры подключения. Переменные окружения в значениях автоматически подставляются.
4. Пример конфигурации для Claude Desktop:
{ "mcpServers": { "postgres": { "command": "npx", "args": ["@itunified.io/mcp-postgres"], "env": { "POSTGRES_CONNECTION_STRING": "postgresql://user:password@host:5432/db" } } } }
5. Перезапустите MCP-клиент.
Примеры запросов
- «Выведи все таблицы в схеме public с количеством строк.»
- «Выполни EXPLAIN ANALYZE для запроса SELECT * FROM users WHERE created_at > now() - interval '7 days'.»
- «Добавь пользователя: name = "Елена", email = "elena@example.com".»
- «Покажи размеры всех баз данных на сервере PostgreSQL.»
Технические детали
- Язык: TypeScript
- Транспорт: stdio
- Лицензия: AGPL-3.0
- Совместимые клиенты: Claude Desktop, Cline и другие MCP-клиенты