Skip to main content
Glama

MCP Server for PostgreSQL

by asadudin

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

Лицензия: Массачусетский технологический институт Докер тянет

Реализация сервера Model Context Protocol (MCP) для PostgreSQL, предоставляющая простой интерфейс для взаимодействия с базами данных PostgreSQL через MCP.

Функции

  • Выполнение SQL-запросов с параметризованными входными данными

  • Выполнение операций INSERT/UPDATE/DELETE

  • Создать новые базы данных

  • Создание или обновление схем таблиц

  • Отладка соединений PostgreSQL

  • Контейнеризация с Docker для простоты развертывания

  • Конфигурация на основе среды

Related MCP server: PostgreSQL MCP Server

Предпосылки

  • Питон 3.8+

  • PostgreSQL 10+

  • Docker (опционально, для контейнерного развертывания)

  • Docker Compose (опционально, для разработки)

Установка

Использование Docker (рекомендуется)

  1. Клонируйте репозиторий:

    git clone https://github.com/asadudin/mcp-server-postgres.git cd mcp-server-postgres
  2. Скопируйте пример файла среды:

    cp .env.example .env
  3. Обновите файл .env , указав свои учетные данные PostgreSQL:

    PG_HOST=postgres PG_PORT=5432 PG_USER=postgres PG_PASSWORD=your_password PG_DATABASE=your_database HOST=0.0.0.0 PORT=8056
  4. Запустите службу с помощью Docker Compose:

    docker-compose up -d

Ручная установка

  1. Клонируйте репозиторий:

    git clone https://github.com/asadudin/mcp-server-postgres.git cd mcp-server-postgres
  2. Создайте и активируйте виртуальную среду:

    python -m venv venv source venv/bin/activate # On Windows: .\venv\Scripts\activate
  3. Установить зависимости:

    pip install -r requirements.txt
  4. Скопируйте пример файла среды и обновите его:

    cp .env.example .env # Edit .env with your configuration
  5. Запускаем сервер:

    python mcp_server_postgres.py

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

Сервер MCP предоставляет следующие конечные точки:

sql_query

Выполнить запрос SELECT и вернуть результаты в формате JSON.

Параметры:

  • query : строка запроса SQL

  • params : Необязательная строка JSON параметров запроса (список или словарь)

Пример:

{ "query": "SELECT * FROM users WHERE id = $1", "params": [1] }

sql_execute

Выполните оператор INSERT/UPDATE/DELETE.

Параметры:

  • query : SQL-выражение

  • params : Необязательная строка JSON параметров запроса (список или словарь)

Пример:

{ "query": "INSERT INTO users (name, email) VALUES ($1, $2)", "params": ["John Doe", "john@example.com"] }

create_database

Создайте новую базу данных PostgreSQL.

Параметры:

  • database_name : Имя создаваемой базы данных

create_or_update_table

Создайте или обновите схему таблицы.

Параметры:

  • sql : SQL-оператор CREATE TABLE или ALTER TABLE

debug_postgres_connection

Отладка соединения PostgreSQL.

Переменные среды

Переменная

По умолчанию

Описание

PG_HOST

локальный хост

Хост PostgreSQL

PG_PORT

5432

Порт PostgreSQL

PG_USER

постгрес

Имя пользователя PostgreSQL

PG_ПАРОЛЬ

Пароль PostgreSQL

PG_DATABASE

постгрес

Имя базы данных по умолчанию

ХОЗЯИН

0.0.0.0

Хост для привязки сервера MCP

ПОРТ

8056

Порт для запуска сервера MCP

Разработка

Проведение тестов

# Install test dependencies pip install -r requirements-dev.txt # Run tests pytest

Создание образа Docker

docker build -t mcp-server-postgres .

API-документация

Подробную документацию по API можно найти в спецификации OpenAPI .

Внося вклад

Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.

Лицензия

Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE .

Благодарности

  • FastMCP — серверная платформа MCP

  • asyncpg — клиент PostgreSQL для Python

  • FastAPI — современный, быстрый веб-фреймворк для создания API

-
security - not tested
F
license - not found
-
quality - not tested

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/asadudin/mcp-server-postgres'

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