servidor PGSQL-MCP
一款用 Golang 实现的操作 PG 数据库的 MCP Server , , 欢迎 共 建!!! 建!!!
1
Github Watches
1
Github Forks
1
Github Stars
PostgreSQL MCP Server
A Model Context Protocol (MCP) server that provides tools for interacting with a PostgreSQL database. This server enables AI assistants to execute SQL queries, create tables, and list database tables through the MCP protocol.
Features
The server provides the following tools:
- read_query: Execute SELECT queries on the PostgreSQL database
 - write_query: Execute INSERT, UPDATE, or DELETE queries on the PostgreSQL database
 - create_table: Create a new table in the PostgreSQL database
 - list_tables: List all user tables in the database (with optional schema filtering)
 
Installation
Prerequisites
- Go 1.23 or later
 - PostgreSQL database server
 
Steps
- 
Clone the repository:
git clone https://github.com/sql-mcp-server.git cd sql-mcp-server - 
Install dependencies:
go mod download - 
Build the server:
go build -o sql-mcp-server 
Configuration
The server requires database connection details through environment variables. Create a .env file in the project root with the following variables:
DB_HOST=localhost      # PostgreSQL server host
DB_PORT=5432           # PostgreSQL server port
DB_NAME=postgres       # Database name
DB_USER=your_username  # Database user
DB_PASSWORD=your_pass  # Database password
DB_SSLMODE=disable     # SSL mode (disable, require, verify-ca, verify-full)
Usage
Running the Server
./sql-mcp-server
MCP Configuration
To use this server with an AI assistant that supports MCP, add the following to your MCP configuration:
{
  "mcpServers": {
    "pgsql-mcp-server": {
      "command": "/path/to/sql-mcp-server",
      "args": [],
      "env": {
        "DB_HOST": "localhost",
        "DB_PORT": "5432",
        "DB_NAME": "postgres",
        "DB_USER": "your_username",
        "DB_PASSWORD": "your_password",
        "DB_SSLMODE": "disable"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
Tool Examples
List Tables
List all user tables in the database:
{
  "server_name": "pgsql-mcp-server",
  "tool_name": "list_tables",
  "arguments": {}
}
List tables in a specific schema:
{
  "server_name": "pgsql-mcp-server",
  "tool_name": "list_tables",
  "arguments": {
    "schema": "public"
  }
}
Create Table
Create a new table:
{
  "server_name": "pgsql-mcp-server",
  "tool_name": "create_table",
  "arguments": {
    "schema": "CREATE TABLE users (id SERIAL PRIMARY KEY, name VARCHAR(100), email VARCHAR(100) UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP)"
  }
}
Read Query
Execute a SELECT query:
{
  "server_name": "pgsql-mcp-server",
  "tool_name": "read_query",
  "arguments": {
    "query": "SELECT * FROM users LIMIT 10"
  }
}
Write Query
Execute an INSERT query:
{
  "server_name": "pgsql-mcp-server",
  "tool_name": "write_query",
  "arguments": {
    "query": "INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com')"
  }
}
Execute an UPDATE query:
{
  "server_name": "pgsql-mcp-server",
  "tool_name": "write_query",
  "arguments": {
    "query": "UPDATE users SET name = 'Jane Doe' WHERE id = 1"
  }
}
Execute a DELETE query:
{
  "server_name": "pgsql-mcp-server",
  "tool_name": "write_query",
  "arguments": {
    "query": "DELETE FROM users WHERE id = 1"
  }
}
Security Considerations
- The server validates query types to ensure that only appropriate operations are performed with each tool.
 - Input sanitization is performed for schema names to prevent SQL injection.
 - Consider using a dedicated database user with limited permissions for this server.
 - In production environments, enable SSL by setting 
DB_SSLMODEtorequireor higher. 
Dependencies
- github.com/joho/godotenv - For loading environment variables from .env file
 - github.com/lib/pq - PostgreSQL driver for Go
 - github.com/mark3labs/mcp-go - Go SDK for Model Context Protocol
 
License
[Add license information here]
Contributing
[Add contribution guidelines here]
相关推荐
I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.
I find academic articles and books for research and literature reviews.
Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.
Confidential guide on numerology and astrology, based of GG33 Public information
Advanced software engineer GPT that excels through nailing the basics.
Emulating Dr. Jordan B. Peterson's style in providing life advice and insights.
Your go-to expert in the Rust ecosystem, specializing in precise code interpretation, up-to-date crate version checking, and in-depth source code analysis. I offer accurate, context-aware insights for all your Rust programming questions.
Converts Figma frames into front-end code for various mobile frameworks.
Descubra la colección más completa y actualizada de servidores MCP en el mercado. Este repositorio sirve como un centro centralizado, que ofrece un extenso catálogo de servidores MCP de código abierto y propietarios, completos con características, enlaces de documentación y colaboradores.
La aplicación AI de escritorio todo en uno y Docker con trapo incorporado, agentes de IA, creador de agentes sin código, compatibilidad de MCP y más.
Manipulación basada en Micrypthon I2C del expansor GPIO de la serie MCP, derivada de AdaFruit_MCP230xx
Plataforma de automatización de flujo de trabajo de código justo con capacidades de IA nativas. Combine el edificio visual con código personalizado, auto-anfitrión o nube, más de 400 integraciones.
🧑🚀 全世界最好的 llM 资料总结(数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Resumen de los mejores recursos del mundo.
Espejo dehttps: //github.com/agentience/practices_mcp_server
Una lista curada de servidores de protocolo de contexto del modelo (MCP)
Reviews
user_o5NZrMwM
As a dedicated user of the WhatsApp MCP Server by piyushgupta53, I have been extremely impressed with its seamless integration and performance. The server offers robust functionalities that enhance my messaging experience, making it reliable for both personal and professional use. The detailed documentation and user-friendly interface make it accessible, even for those new to MCP applications. Highly recommend checking it out!