Simple PostgreSQL MCP Server
简单的 PostgreSQL MCP 服务器
这是一个模板项目,适合那些想要搭建自己的 MCP 服务器的人。我把它设计得非常简单易懂,易于上手——代码简洁明了,并附带 MCP 文档,方便您快速上手。
什么是 MCP?
TL;DR - 这是为 AI 编写插件的一种方法
模型上下文协议 (MCP) 是 LLM 与外部工具和数据交互的标准方式。简而言之:
工具允许 LLM 执行命令(例如运行数据库查询)
资源是可以附加到对话的数据(例如将文件附加到提示)
提示是生成一致 LLM 指令的模板
Related MCP server: PostgreSQL MCP Server
特征
该 PostgreSQL MCP 服务器实现:
工具
execute_query——针对数据库运行 SQL 查询test_connection验证数据库连接是否正常工作
资源
db://tables模式中所有表的列表db://tables/{table_name}- 特定表的架构信息db://schema- 数据库中所有表的完整架构信息
提示
查询生成模板
分析查询构建器
基于此 repo 中的模板
先决条件
Python 3.8+
uv - 现代 Python 包管理器和安装程序
npx(包含在 Node.js 中)
您可以连接到的 PostgreSQL 数据库
快速设置
创建虚拟环境并安装依赖项:
# Create a virtual environment with uv uv venv # Activate the virtual environment source .venv/bin/activate # On Windows: .venv\Scripts\activate # Install dependencies uv pip install -r requirements.txt使用 MCP Inspector 运行服务器:
# Replace with YOUR actual database credentials npx @modelcontextprotocol/inspector uv --directory . run postgres -e DSN=postgresql://username:password@hostname:port/database -e SCHEMA=public注意:如果这是您第一次运行 npx,系统将提示您批准安装。输入“y”继续。
运行此命令后,您将看到浏览器中启动了 MCP Inspector 界面。您应该会看到如下消息:
MCP Inspector is up and running at http://localhost:5173如果浏览器没有自动打开,请复制并粘贴 URL 到浏览器中。你应该会看到类似这样的内容:

使用检查器:
点击界面上的“连接”按钮(除非左下方控制台有错误信息)
探索“工具”、“资源”和“提示”选项卡以查看可用的功能
尝试单击列出的命令或输入资源名称来检索资源和提示
该界面允许您测试查询并查看 MCP 服务器如何响应
看看官方文档
官方服务器开发者指南: https://modelcontextprotocol.io/quickstart/server
有关检查器的更多信息: https://modelcontextprotocol.io/docs/tools/inspector
将您的AI工具连接到服务器
您可以通过创建 MCP 配置文件来为您的 AI 助手配置 MCP 服务器:
{
"mcpServers": {
"postgres": {
"command": "/path/to/uv",
"args": [
"--directory",
"/path/to/simple-psql-mcp",
"run",
"postgres"
],
"env": {
"DSN": "postgresql://username:password@localhost:5432/my-db",
"SCHEMA": "public"
}
}
}
}或者,您可以使用包含的脚本生成此配置文件:
# Make the script executable
chmod +x generate_mcp_config.sh
# Run the configuration generator
./generate_mcp_config.sh出现提示时,输入您的 PostgreSQL DSN 和架构名称。
如何使用
现在,您可以使用自然语言向 LLM 询问有关您的数据的问题:
“我的数据库中有哪些表?”
“按创建日期显示前 5 名用户”
“按州统计地址”
为了进行测试,Claude Desktop 原生支持 MCP,并且开箱即用所有功能(工具、资源和提示)。
示例数据库(可选)
如果您没有准备好数据库或遇到连接问题,您可以使用附带的示例数据库:
# Make the script executable
chmod +x example-db/create-db.sh
# Run the database setup script
./example-db/create-db.sh此脚本会创建一个 Docker 容器,其中包含一个预先填充了示例用户和地址表的 PostgreSQL 数据库。运行后,您可以使用以下命令进行连接:
npx @modelcontextprotocol/inspector uv --directory . run postgres -e DSN=postgresql://postgres:postgres@localhost:5432/user_database -e SCHEMA=public后续步骤
要使用您自己的 MCP 服务器扩展此项目:
在
/src下创建一个新目录(例如/src/my-new-mcp)按照 PostgreSQL 示例实现您的 MCP 服务器
将新的 MCP 添加到
pyproject.toml:
[project.scripts]
postgres = "src.postgres:main"
my-new-mcp = "src.my-new-mcp:main"然后,您可以使用以下命令运行新的 MCP:
npx @modelcontextprotocol/inspector uv --directory . run my-new-mcp文档
包含 MCP 文档,方便 LLM 开发
基于以下方法:https: //modelcontextprotocol.io/tutorials/building-mcp-with-llms
安全
这是一个实验性项目,旨在帮助开发者创建自己的 MCP 服务器。我做了一些最低限度的设置,以确保它在你尝试时不会立即崩溃,但请小心——使用此工具很容易进行 SQL 注入。服务器会检查查询是否以 SELECT 开头,但除此之外,没有任何保证。简而言之,除非你是创始人并且没有付费客户,否则不要在生产环境中运行。
执照
麻省理工学院
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/NetanelBollag/simple-psql-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server