PostgreSQL MCP Server

PostgreSQL MCP Server

By antonorlov GitHub

Easily connect to PostgreSQL databases via a plug-and-play MCP server. Supports SELECT, INSERT, UPDATE, and more with prepared statements, automatic connection handling, and full TypeScript support

postgres database
Overview

what is MCP PostgreSQL Server?

MCP PostgreSQL Server is a Model Context Protocol server that facilitates PostgreSQL database operations, allowing AI models to interact with PostgreSQL databases through a standardized interface.

how to use MCP PostgreSQL Server?

To use the server, install it via npm with npm install mcp-postgres-server or run it directly using npx mcp-postgres-server. Configure the server with the required environment variables for database connection.

key features of MCP PostgreSQL Server?

  • Secure connection handling with automatic cleanup
  • Prepared statement support for query parameters
  • Comprehensive error handling and validation
  • TypeScript support
  • Automatic connection management
  • Support for PostgreSQL-specific syntax and features

use cases of MCP PostgreSQL Server?

  1. Connecting AI models to PostgreSQL databases for data retrieval.
  2. Executing complex SQL queries through a standardized interface.
  3. Managing database operations securely and efficiently.

FAQ from MCP PostgreSQL Server?

  • What is the purpose of this server?

It allows AI models to interact with PostgreSQL databases seamlessly.

  • Is it secure to use?

Yes, it uses prepared statements to prevent SQL injection and handles connections securely.

  • Can I use it with TypeScript?

Yes, it has TypeScript support.

Content

MCP PostgreSQL Server

A Model Context Protocol server that provides PostgreSQL database operations. This server enables AI models to interact with PostgreSQL databases through a standardized interface.

Installation

Manual Installation

npm install mcp-postgres-server

Or run directly with:

npx mcp-postgres-server

Configuration

The server requires the following environment variables:

{
  "mcpServers": {
    "postgres": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-postgres-server"],
      "env": {
        "PG_HOST": "your_host",
        "PG_PORT": "5432",
        "PG_USER": "your_user",
        "PG_PASSWORD": "your_password",
        "PG_DATABASE": "your_database"
      }
    }
  }
}

Available Tools

1. connect_db

Establish connection to PostgreSQL database using provided credentials.

use_mcp_tool({
  server_name: "postgres",
  tool_name: "connect_db",
  arguments: {
    host: "localhost",
    port: 5432,
    user: "your_user",
    password: "your_password",
    database: "your_database"
  }
});

2. query

Execute SELECT queries with optional prepared statement parameters. Supports both PostgreSQL-style ($1, $2) and MySQL-style (?) parameter placeholders.

use_mcp_tool({
  server_name: "postgres",
  tool_name: "query",
  arguments: {
    sql: "SELECT * FROM users WHERE id = $1",
    params: [1]
  }
});

3. execute

Execute INSERT, UPDATE, or DELETE queries with optional prepared statement parameters. Supports both PostgreSQL-style ($1, $2) and MySQL-style (?) parameter placeholders.

use_mcp_tool({
  server_name: "postgres",
  tool_name: "execute",
  arguments: {
    sql: "INSERT INTO users (name, email) VALUES ($1, $2)",
    params: ["John Doe", "john@example.com"]
  }
});

4. list_tables

List all tables in the connected database.

use_mcp_tool({
  server_name: "postgres",
  tool_name: "list_tables",
  arguments: {}
});

5. describe_table

Get the structure of a specific table.

use_mcp_tool({
  server_name: "postgres",
  tool_name: "describe_table",
  arguments: {
    table: "users"
  }
});

Features

  • Secure connection handling with automatic cleanup
  • Prepared statement support for query parameters
  • Support for both PostgreSQL-style ($1, $2) and MySQL-style (?) parameter placeholders
  • Comprehensive error handling and validation
  • TypeScript support
  • Automatic connection management
  • Supports PostgreSQL-specific syntax and features

Security

  • Uses prepared statements to prevent SQL injection
  • Supports secure password handling through environment variables
  • Validates queries before execution
  • Automatically closes connections when done

Error Handling

The server provides detailed error messages for common issues:

  • Connection failures
  • Invalid queries
  • Missing parameters
  • Database errors

License

MIT

No tools information available.
Postgres
Postgres by guoling2008

-

postgres database
View Details
Sqlite
Sqlite by sqlite

Database interaction and business intelligence capabilities

sqlite database
View Details
mcp-db-server
mcp-db-server by iotassss

-

mcp-db-server database
View Details
mcp-lancedb-server
mcp-lancedb-server by richard-gyiko

-

mcp-lancedb-server database
View Details
db-mcp
db-mcp by goru00

Database Model Context Protocol (DB-MCP) Server

db-mcp database
View Details

mysql数据库连接,改 f4ww4z/mcp-mysql-server中的连接配置支持cherry studio

mcp-mysql-server database
View Details

Mirror of

mysql database
View Details