mcp postgres查询
MCP服务器,将Claude连接到任何PostgreSQL数据库。通过自然对话探索模式、运行查询、分析性能。
由...建造 色变.
安装
npm install -g mcp-postgres-query或者直接运行:
npx mcp-postgres-query配置
设置 DATABASE_URL 带有PostgreSQL连接字符串的环境变量:
DATABASE_URL=postgresql://user:password@localhost:5432/mydb克劳德桌面版
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "mcp-postgres-query"],
"env": {
"DATABASE_URL": "postgresql://user:password@localhost:5432/mydb"
}
}
}
}克劳德代码
添加到您的 .mcp.json:
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "mcp-postgres-query"],
"env": {
"DATABASE_URL": "postgresql://user:password@localhost:5432/mydb"
}
}
}
}工具(7)
| 工具 | 描述 | 参数 |
|---|---|---|
query | 执行SQL查询 | sql (字符串), params (可选数组) |
list_tables | 列出公共架构中的所有表 | 无 |
describe_table | 获取列详细信息(类型、可空、默认) | table_name |
list_indexes | 列出表上的索引 | table_name |
explain_query | 获取解释分析计划(安全,回滚) | sql |
get_table_stats | 行数和表大小 | table_name |
get_db_info | 数据库概述(版本、大小、表数) | 无 |
示例用法
一旦连接,问克劳德这样的问题:
- “此数据库中有哪些表?”
- “描述用户表”
- “从创建的订单中选择\*at>'2024-01-01'限制10”
- “解释这个慢速查询:SELECT…”
- “活动桌有多大?”
安全说明
- 这
query该工具执行任意SQL。与a连接 只读数据库用户 为了安全。 - 这
explain_query该工具将EXPLAIN ANALYZE封装在一个总是回滚的事务中,因此它永远不会修改数据。 - 通过以下方式支持参数化查询
params防止SQL注入的参数。 - 永远不要暴露
DATABASE_URL在公共存储库或日志中。
许可证
麻省理工学院
