Skip to main content
Glama
ferronicardoso

mcp-postgresql

PostgreSQL용 MCP 서버

Docker Publish GHCR Node.js

프로덕션 지향적인 PostgreSQL용 MCP 서버로, MCP 클라이언트(Claude Desktop, VS Code Copilot, Cursor 및 호환 호스트)에 데이터베이스 작업을 노출합니다.

기능

  • 쿼리 실행 (SELECT, INSERT, UPDATE, DELETE)

  • 데이터베이스 검색 및 스키마 분석

  • 테이블 메타데이터 검사 (열, 유형, null 허용 여부, 기본값, PK)

  • 인덱스 및 외래 키 검색

  • 안전한 배포를 위한 환경 변수 기반 구성

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

정의 및 PK/고유 플래그와 함께 테이블 인덱스를 나열합니다

get_foreign_keys

테이블 외래 키와 참조 대상을 나열합니다

요구 사항

  • Node.js 18+

  • PostgreSQL 인스턴스에 대한 액세스

  • MCP 호스트에서 PostgreSQL(host:port)까지의 네트워크 연결

구성

환경 변수를 사용하여 연결 설정을 구성합니다:

변수

필수

기본값

설명

PGHOST (또는 POSTGRES_HOST)

아니오

localhost

PostgreSQL 호스트 또는 IP

PGPORT (또는 POSTGRES_PORT)

아니오

5432

PostgreSQL TCP 포트

PGDATABASE (또는 POSTGRES_DB)

아니오

postgres

기본 데이터베이스

PGUSER (또는 POSTGRES_USER)

데이터베이스 사용자

PGPASSWORD (또는 POSTGRES_PASSWORD)

데이터베이스 비밀번호

PGSSL (또는 POSTGRES_SSL)

아니오

false

SSL/TLS 활성화

PGPOOL_MAX

아니오

10

최대 풀 연결 수

PGPOOL_IDLE_TIMEOUT_MS

아니오

30000

풀 유휴 시간 초과 (ms)

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"
      }
    }
  }
}

VS Code MCP 구성

.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 엔드포인트로 사용됩니다 (예: n8n의 MCP Client Tool 노드 또는 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

빌드 및 커밋 워크플로

이 저장소는 npx github:user/repo 사용을 지원하기 위해 의도적으로 dist/를 추적합니다.

프로젝트는 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