Postgres MCP Pro
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Postgres MCP ProAnalyze my database for performance issues and recommend indexes."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
📘 Postgres MCP Pro — сервер MCP для PostgreSQL
🔎 Обзор
Postgres MCP Pro — это open-source сервер Model Context Protocol (MCP), предназначенный для помощи разработчикам и AI-агентам на всех этапах разработки: от начального кода и тестирования до деплоя и продакшн-оптимизации.
📚 Полная документация: docs/DOCUMENTATION.md — развёртывание (Docker/облако), Gradio-оболочка, подключение клиентов (stdio/SSE), все инструменты и переменные окружения.
Отличается от простого подключения к базе данных следующими возможностями:
Анализ состояния БД: индекс, буферный кэш, autovacuum, последовательности, репликация и др.
Оптимизация индексов: автоматический подбор лучших индексов с помощью промышленных алгоритмов.
Планы выполнения: EXPLAIN и симуляция с гипотетическими индексами.
Интеллект схемы: генерация SQL с учётом структуры базы.
Безопасное выполнение SQL: поддержка режима только для чтения и защита в продакшне.
Поддерживает транспорты: stdio и SSE.
Запуск проекта и причины его создания
📺 Демонстрация
От медленного к молниеносному AI сгенерировал приложение на SQLAlchemy ORM — но оно было слишком медленным. Postgres MCP Pro с Cursor решил проблему за считанные минуты.
🚀 Оптимизация ORM-запросов, индексации и кэширования
🛠️ Исправление сломанной страницы
🧠 Улучшение вывода "топ-фильмов" путём анализа данных и корректировки запросов
👉 Подробнее: movie-app.md
⚡ Быстрый старт
Требования:
Доступ к вашей базе данных PostgreSQL
Docker или Python 3.12+
Удостоверьтесь в доступе:
Пример — подключение через psql или pgAdmin
💡 Для запуска через
docker composeзаранее создайте пустые файлы хранилищ подключений (иначе Docker смонтирует каталоги вместо файлов):touch connections.json llm_connections.json
Установка
🐳 Docker
docker pull crystaldba/postgres-mcp🐍 Python (через pipx)
pipx install postgres-mcpили через uv:
uv pip install postgres-mcp⚙️ Настройка AI-ассистента (на примере Claude Desktop)
Откройте конфигурационный файл:
MacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%/Claude/claude_desktop_config.json
Пример конфигурации:
Через Docker
{
"mcpServers": {
"postgres": {
"command": "docker",
"args": [
"run", "-i", "--rm", "-e", "DATABASE_URI",
"crystaldba/postgres-mcp", "--access-mode=unrestricted"
],
"env": {
"DATABASE_URI": "postgresql://username:password@localhost:5432/dbname"
}
}
}
}Через pipx
{
"mcpServers": {
"postgres": {
"command": "postgres-mcp",
"args": ["--access-mode=unrestricted"],
"env": {
"DATABASE_URI": "postgresql://username:password@localhost:5432/dbname"
}
}
}
}Через uv
{
"mcpServers": {
"postgres": {
"command": "uv",
"args": [
"run", "postgres-mcp", "--access-mode=unrestricted"
],
"env": {
"DATABASE_URI": "postgresql://username:password@localhost:5432/dbname"
}
}
}
}Режимы доступа:
--access-mode=unrestricted: полный доступ (dev)--access-mode=restricted: только чтение (prod)
⚠️ Флаг
--access-modeподдерживает только легаси-сервер (python -m postgres_mcp.server). Автономный MCP-сервер (postgres_mcp.autonomous.mcp_server) всегда выполняет переданный SQL; разграничение делайте на стороне пользователя БД.
🔄 SSE Transport
Чтобы использовать SSE:
docker run -p 8000:8000 \
-e DATABASE_URI=postgresql://username:password@localhost:5432/dbname \
crystaldba/postgres-mcp --access-mode=unrestricted --transport=sseПример для Cursor:
{
"mcpServers": {
"postgres": {
"type": "sse",
"url": "http://localhost:8000/sse"
}
}
}🧩 Установка расширений (опционально)
Нужно для:
pg_stat_statements— для анализа запросовhypopg— симуляция индексов
CREATE EXTENSION IF NOT EXISTS pg_stat_statements;
CREATE EXTENSION IF NOT EXISTS hypopg;🧪 Примеры использования
Проверка БД: "Check the health of my database..."
Медленные запросы: "What are the slowest queries..."
Рекомендации: "How can I make it faster?"
Индексы: "Suggest indexes to improve performance"
Оптимизация запроса: "Help me optimize this query: SELECT ..."
📡 MCP API (интерфейс)
Автономный сервер (postgres_mcp.autonomous.mcp_server) предоставляет 15 MCP tools:
Tool | Назначение |
| Список схем БД |
| Список таблиц, представлений и т.п. |
| Подробности по объекту |
| Выполнение SQL |
| EXPLAIN план запроса |
| Здоровье БД по множеству метрик |
| Самые медленные запросы (pg_stat_statements) |
| Анализ использования индексов |
| Выполняющиеся запросы |
| Размеры таблиц/индексов |
| Текущие блокировки |
| Форматирование SQL (sqlparse) |
| Версия, размер БД, расширения, uptime |
| Управление Fernet-сертификатами |
| Список всех инструментов сервера |
📌 Отличия от других MCP-серверов
Postgres MCP Pro | Другие MCP-серверы |
✅ Проверки здоровья с гарантией | ❌ Генерация LLM |
✅ Оптимизация индексов алгоритмом | ❌ Гипотетические советы |
✅ Симуляции EXPLAIN | ❌ "Попробуй сам" |
✅ Детальный workload-анализ | ❌ Нет анализа запросов |
🧠 Почему нужны инструменты MCP?
LLM отлично справляется с генерацией SQL, но медленно, дорого и непредсказуемо. Оптимизация БД давно решается алгоритмами. MCP Pro сочетает лучшее от LLM и классических алгоритмов.
🛠️ Технические заметки (ключевые моменты)
Индексы: использование
pg_stat_statements, генерация кандидатов, анализ черезhypopgLLM-оптимизация: экспериментальная, с использованием OpenAI API (
OPENAI_API_KEY)Здоровье БД: адаптация проверок из PgHero
Библиотека подключения:
psycopg3сlibpqБезопасность SQL: чтение, защита от
ROLLBACK; DROP ...Интеграция со схемой: передаёт схему агенту через инструменты, а не ресурсы
Конфигурация соединений: через переменные среды
Dev-сборка:
uv,pip, запуск с локальной БД
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.
Comprehensive PostgreSQL documentation and best practices, including ecosystem tools
Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sparta2025/postgres-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server