PostgreSQL performance Tuner MCP Server

PostgreSQL performance Tuner MCP Server

isdanielApache-2.0
24 звёзд5 форков
Это MCP-сервер для PostgreSQL. Он даёт AI-ассистенту доступ к диагностике производительности базы данных. Сервер собирает метрики, анализирует запросы и конфигурацию, а затем предлагает конкретные действия: какой индекс добавить, какой параметр изменить, на какую таблицу обратить внимание. Инструмент рассчитан на DevOps-инженеров и администраторов баз данных. Вместо того чтобы вручную выполнять десятки SQL-запросов, вы просто описываете проблему ассистенту. Сервер сам подключается к базе, собирает данные и выдаёт готовый отчёт или план действий.

Установка

uvx pgtuner-mcp

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

Общее

  • СтатусСообщество
  • Разработчикisdaniel
  • ЛицензияApache-2.0

Технологии

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

Описание

Возможности

  • Собирает и анализирует медленные запросы из расширения pg_stat_statements
  • Строит и разбирает планы выполнения через EXPLAIN и EXPLAIN ANALYZE
  • Рекомендует индексы на основе рабочей нагрузки. Поддерживает гипотетические индексы через HypoPG — без нагрузки на диск
  • Проводит комплексную проверку здоровья базы: кэш, блокировки, репликация, вакуум
  • Отслеживает процессы VACUUM в реальном времени и анализирует эффективность автовакуума
  • Анализирует дисковый ввод-вывод по таблицам и индексам, выявляет горячие точки
  • Предлагает оптимальные настройки PostgreSQL по категориям: память, контрольные точки, WAL, автовакуум
  • Находит неиспользуемые и дублирующиеся индексы
  • Предоставляет готовые шаблоны запросов (prompts) для частых сценариев: диагностика, тюнинг, ежедневный аудит

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

Сервер запускается через инструмент uvx из состава менеджера пакетов uv.

  1. Добавьте сервер в конфигурацию вашего MCP-клиента. Пример для Claude Desktop:
{ "mcpServers": { "pgtuner": { "command": "uvx", "args": ["pgtuner-mcp"], "env": { "DATABASE_URL": "postgresql://user:password@host:5432/database" } } } }

Вместо DATABASE_URL можно задать по отдельности переменные PGHOST, PGPORT, PGUSER, PGPASSWORD, PGDATABASE.

После сохранения конфигурации перезапустите клиент.

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

  • «Покажи пять самых тяжёлых запросов в базе и предложи, как их ускорить»
  • «Проверь здоровье кластера: есть ли долгие транзакции, блокировки, проблемы с вакуумом»
  • «Какие индексы в этой базе не используются?»
  • «Проанализируй текущую конфигурацию и скажи, какие параметры нужно изменить для сервера с 32 ГБ RAM»
  • «Создай гипотетический индекс для этой таблицы и покажи, изменится ли план запроса»

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

  • Язык: Python
  • Транспорт: stdio
  • Лицензия: Apache-2.0
  • Установка: через uvx или pip (пакет pgtuner-mcp), а также Docker-образ
  • Совместимые клиенты: любые MCP-клиенты — Claude Desktop, Cline, GoMCP, Continue.dev
  • Требования к БД: расширение pg_stat_statements (для анализа запросов), HypoPG (для гипотетических индексов — опционально)

Поделиться