Skip to main content
Glama
ferronicardoso

mcp-postgresql

MCP-сервер для PostgreSQL

Docker Publish GHCR Node.js

Производственно-ориентированный MCP-сервер для PostgreSQL, предоставляющий операции с базой данных MCP-клиентам (Claude Desktop, VS Code Copilot, Cursor и совместимые хосты).

Возможности

  • Выполнение запросов (SELECT, INSERT, UPDATE, DELETE)

  • Обнаружение баз данных и интроспекция схем

  • Просмотр метаданных таблиц (столбцы, типы, допустимость NULL, значения по умолчанию, первичные ключи)

  • Обнаружение индексов и внешних ключей

  • Конфигурация через переменные окружения для безопасного развертывания

Related MCP server: Azure Database for PostgreSQL MCP Server

Доступные инструменты

Инструмент

Описание

execute_query

Выполняет SQL-запрос и возвращает строки или количество затронутых строк

list_tables

Выводит таблицы из INFORMATION_SCHEMA.TABLES (опциональный фильтр схемы)

describe_table

Возвращает метаданные столбцов таблицы и маркеры первичных ключей

list_databases

Выводит все базы данных PostgreSQL

get_table_indexes

Выводит индексы таблицы с определениями и флагами первичного ключа/уникальности

get_foreign_keys

Выводит внешние ключи таблицы и целевые ссылки

Требования

  • Node.js 18+

  • Доступ к экземпляру PostgreSQL

  • Сетевая связь от MCP-хоста до PostgreSQL (host:port)

Конфигурация

Установите параметры подключения с помощью переменных окружения:

Переменная

Обязательно

По умолчанию

Описание

PGHOST (или POSTGRES_HOST)

Нет

localhost

Хост или IP-адрес PostgreSQL

PGPORT (или POSTGRES_PORT)

Нет

5432

TCP-порт PostgreSQL

PGDATABASE (или POSTGRES_DB)

Нет

postgres

База данных по умолчанию

PGUSER (или POSTGRES_USER)

Да

Пользователь базы данных

PGPASSWORD (или POSTGRES_PASSWORD)

Да

Пароль базы данных

PGSSL (или POSTGRES_SSL)

Нет

false

Включает SSL/TLS

PGPOOL_MAX

Нет

10

Максимальное количество соединений в пуле

PGPOOL_IDLE_TIMEOUT_MS

Нет

30000

Тайм-аут простоя пула (мс)

MCP_TRANSPORT

Нет

stdio

Режим транспорта: stdio (по умолчанию, для npx/Claude Desktop/VS Code) или http (Streamable HTTP, для Docker/удаленных клиентов, таких как n8n)

MCP_HTTP_PORT

Нет

3002

Порт для HTTP-сервера (используется только при MCP_TRANSPORT=http)

MCP_HTTP_HOST

Нет

0.0.0.0

Адрес привязки для HTTP-сервера (используется только при MCP_TRANSPORT=http)

Использование

Запуск напрямую из GitHub

npx github:ferronicardoso/mcp-postgresql

Claude Code (CLI)

claude mcp add postgresql --scope user -- npx -y github:ferronicardoso/mcp-postgresql

--scope управляет тем, где хранится регистрация сервера:

Область

Хранится в

Видимость

local (по умолчанию)

локально в проекте, не отслеживается

только у вас, только в этом проекте

project

.mcp.json в корне проекта

у всех, кто клонирует репозиторий (закоммитьте, чтобы поделиться)

user

глобальная конфигурация Claude Code

у вас, во всех проектах

Переменные окружения можно передать с помощью повторяющихся флагов --env KEY=VALUE перед --, например:

Bash (Linux/macOS/WSL):

claude mcp add postgresql --scope user \
  --env PGHOST=localhost \
  --env PGPORT=5432 \
  --env PGDATABASE=postgres \
  --env PGUSER=postgres \
  --env PGPASSWORD=your-password \
  -- npx -y github:ferronicardoso/mcp-postgresql

PowerShell:

claude mcp add postgresql --scope user `
  --env PGHOST=localhost `
  --env PGPORT=5432 `
  --env PGDATABASE=postgres `
  --env PGUSER=postgres `
  --env PGPASSWORD=your-password `
  -- npx -y github:ferronicardoso/mcp-postgresql

Codex CLI

Bash (Linux/macOS/WSL):

codex mcp add postgresql \
  --env PGHOST=localhost \
  --env PGPORT=5432 \
  --env PGDATABASE=postgres \
  --env PGUSER=postgres \
  --env PGPASSWORD=your-password \
  npx -- -y github:ferronicardoso/mcp-postgresql

PowerShell:

codex mcp add postgresql `
  --env PGHOST=localhost `
  --env PGPORT=5432 `
  --env PGDATABASE=postgres `
  --env PGUSER=postgres `
  --env PGPASSWORD=your-password `
  npx -- -y github:ferronicardoso/mcp-postgresql

Это регистрирует сервер в ~/.codex/config.toml. Чтобы удалить его, выполните codex mcp remove postgresql.

Конфигурация Claude Desktop

%APPDATA%\\Claude\\claude_desktop_config.json:

{
  "mcpServers": {
    "postgresql": {
      "command": "npx",
      "args": ["github:ferronicardoso/mcp-postgresql"],
      "env": {
        "PGHOST": "localhost",
        "PGPORT": "5432",
        "PGDATABASE": "postgres",
        "PGUSER": "postgres",
        "PGPASSWORD": "your-password"
      }
    }
  }
}

Конфигурация MCP в VS Code

.vscode/mcp.json:

{
  "servers": {
    "postgresql": {
      "command": "npx",
      "args": ["github:ferronicardoso/mcp-postgresql"],
      "env": {
        "PGHOST": "localhost",
        "PGPORT": "5432",
        "PGDATABASE": "postgres",
        "PGUSER": "postgres",
        "PGPASSWORD": "your-password"
      }
    }
  }
}

Запуск с Docker (HTTP-транспорт)

Опубликованный образ по умолчанию работает в режиме Streamable HTTP, для использования в качестве удаленной MCP-конечной точки (например, из узла MCP Client Tool в n8n или любого совместимого клиента Streamable HTTP):

Bash (Linux/macOS/WSL):

docker run -d --name mcp-postgresql \
  -p 3002:3002 \
  -e PGHOST=host.docker.internal \
  -e PGPORT=5432 \
  -e PGDATABASE=postgres \
  -e PGUSER=postgres \
  -e PGPASSWORD=your-password \
  ghcr.io/ferronicardoso/mcp-postgresql:latest

PowerShell:

docker run -d --name mcp-postgresql `
  -p 3002:3002 `
  -e PGHOST=host.docker.internal `
  -e PGPORT=5432 `
  -e PGDATABASE=postgres `
  -e PGUSER=postgres `
  -e PGPASSWORD=your-password `
  ghcr.io/ferronicardoso/mcp-postgresql:latest

MCP-конечная точка становится доступна по адресу http://localhost:3002/mcp.

Локальная разработка

git clone https://github.com/ferronicardoso/mcp-postgresql
cd mcp-postgresql
npm install
npm run build

Запустите скомпилированный сервер:

npm start

Процесс сборки и коммитов

Этот репозиторий намеренно отслеживает dist/, чтобы поддерживать использование npx github:user/repo.

Проект использует Husky-хук pre-commit для:

  1. сборки TypeScript (npm run build)

  2. добавления сгенерированных артефактов в индекс (git add dist)

Ручной аналог:

npm run build
git add dist

Замечания по безопасности

  • Никогда не коммитьте реальные учетные данные или файлы .env.

  • Для производственного использования предпочитайте пользователей базы данных с минимальными привилегиями.

  • Для публичных или ненадежных сетей включите шифрование (PGSSL=true) и настройте соответствующие сертификаты.

Лицензия

MIT © Raphael Augusto Ferroni Cardoso

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    An extensible MCP server for database operations that supports PostgreSQL for managing schemas, tables, data, and user permissions. It features automatic migration recording for DDL changes and integrates with various AI-powered editors like Cursor, Zed, and Claude Code.
    22
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) Server that allows AI models to securely interact with data hosted in Azure Database for PostgreSQL. It enables natural language querying, schema exploration, and data management through MCP clients like Claude Desktop and Visual Studio Code.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A production-ready MCP server for PostgreSQL — built for Claude Desktop, Claude Code, and any MCP-compatible AI agent.
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    A Model Context Protocol (MCP) server that provides secure database access to PostgreSQL through Kysely ORM, enabling Claude Desktop to interact with PostgreSQL databases using natural language.
    22
    1
    ISC

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

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/ferronicardoso/mcp-postgresql'

If you have feedback or need assistance with the MCP directory API, please join our Discord server