PostgreSQL MCP Server
Connects to a local PostgreSQL database to fetch and view products using secure authentication.
Click on "Deploy 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., "@PostgreSQL MCP Serverlist all products in the database"
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.
š PostgreSQL MCP Server (Python & Docker)
A clean, fully executable implementation of a custom Model Context Protocol (MCP) server built in Python using Anthropic's FastMCP framework. This project connects Claude Desktop directly to a local PostgreSQL database running securely in Docker.
This repository contains all the code and configuration files showcased in the step-by-step YouTube tutorial.
šļø Architecture Overview
The connection is established using a simple client-server model defined by the Model Context Protocol: āāāāāāāāāāāāāāāāāāā JSON-RPC (stdio) āāāāāāāāāāāāāāāāāāāāā ā Claude Desktop ā <āāāāāāāāāāāāāāāāāāāāāāāāāā> ā Python MCP Server ā ā (MCP Client) ā ā (FastMCP) ā āāāāāāāāāāāāāāāāāāā āāāāāāāāāāā¬āāāāāāāāāā ā SQL ā (Authentication) ā¼ āāāāāāāāāāāāāāāāāāāāā ā PostgreSQL ā ā (Docker Container)ā āāāāāāāāāāāāāāāāāāāāā
Authentication: The Python script uses a secure username/password credential set to authenticate with the Postgres database.
Authorization: Claude is authorized strictly to fetch and view products via the
@mcp.tool()wrapper. It does not have access or permissions to perform destructive database modifications.
Related MCP server: PostgreSQL MCP Server for Claude Desktop
š Project Structure
mcp-postgres-demo/
āāā db/
ā āāā init.sql # Seed data & table schema definitions
āāā docker-compose.yml # Multi-container local database orchestrator
āāā server.py # FastMCP Server with stdio & SSE transport modes
āāā requirements.txt # Locked project dependencies
āāā .gitignore # Keeps local environments and OS junk out of Git
š Quick Start Guide
1. Clone & Set Up a Virtual Environment
Isolate your Python workspace to avoid dependency version conflicts:
# Clone this repository
git clone [https://github.com/](https://github.com/)<your-username>/claude-postgres-mcp-connector.git
cd claude-postgres-mcp-connector
# Create the virtual environment
python -m venv venv
# Activate it (macOS/Linux)
source venv/bin/activate
# Activate it (Windows PowerShell)
.\venv\Scripts\Activate.ps1
2. Install Project Dependencies
Install the locked dependencies defined in our requirement manifests:
pip install -r requirements.txt
3. Launch the Database (Docker)
We use Docker Compose to spin up a pre-configured Postgres database.
docker-compose up -d
Note: The docker-compose.yml mounts our SQL script using the :ro (Read-Only) volume flag. This is a secure best-practice protecting our local init.sql initialization script from being corrupted or altered by runtime database mutations.This server cannot be deployed
Maintenance
Related MCP Connectors
Query your Postgres from ChatGPT or Claude without exposing the database or handing over credentials. Run npx boltschema connect next to your database and it dials out over HTTPS ā no inbound firewall rule, no open port, works with localhost and VPC-private databases. Read-only is enforced by a SQL guard, a Postgres READ ONLY transaction, and a scoped role generated for you.
Query 40 databases from Claude, ChatGPT, or Cursor ā on any device. Read-only, encrypted, audited.
Query PostgreSQL databases in plain English ā LLM-generated, safety-validated SQL.
Connect Claude, Cursor, or ChatGPT to your business data. Ask questions, get answers.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables secure chat-based interaction with PostgreSQL databases through Claude Desktop. Features GitHub OAuth authentication, role-based access control, and enterprise-grade security for database queries and operations.1MIT
- FlicenseNot gradedqualityDmaintenanceEnables Claude Desktop to interact with PostgreSQL databases through natural language for schema exploration, data analysis, and query execution. Users can search schemas, describe tables, and perform read or write operations without needing to write manual SQL.-
- FlicenseNot gradedqualityDmaintenanceEnables Claude Desktop to query a PostgreSQL brand database through MCP. Supports local stdio and remote HTTP/SSE deployments with API key authentication for secure database access.-
- AlicenseAqualityDmaintenanceConnects Claude to any PostgreSQL database, enabling schema exploration, query execution, and performance analysis through natural conversation.77 npm1MIT