
Ollama Db
一个交互式聊天界面,结合了Ollama的LLM能力与通过模型上下文协议(MCP)实现的PostgreSQL数据库访问功能。
概述
Ollama MCP 数据库助手
一个结合 Ollama 大型语言模型能力与通过模型上下文协议 (MCP) 访问 PostgreSQL 数据库的交互式聊天界面。用自然语言提问您的数据问题,获取由真实 SQL 查询支持的 AI 响应。
功能特性
- PostgreSQL 数据库的自然语言界面
- 自动生成 SQL 查询
- 基于模式感知的响应
- 交互式聊天界面
- 安全的只读数据库访问
先决条件
- Node.js 16 或更高版本
- 正在运行的 PostgreSQL 数据库
- 本地安装并运行的 Ollama
- 在 Ollama 中拉取 qwen2.5-coder:7b-instruct 模型
安装配置
- 克隆仓库:
bash
git clone [your-repo-url]
cd [your-repo-name]
- 安装依赖:
bash
npm install
- 拉取所需的 Ollama 模型:
bash
ollama pull qwen2.5-coder:7b-instruct
- 在项目根目录创建
.env文件:
bash
DATABASE_URL=postgresql://user:password@localhost:5432/dbname
OLLAMA_MODEL=qwen2.5-coder:7b-instruct # 可选 - 这是默认值
使用方法
- 启动聊天界面:
bash
npm start
- 用自然语言询问您的数据问题:
已连接数据库。您现在可以询问您的数据问题。
输入"exit"退出。
您想了解数据的哪些信息?上个月哪些产品产生了最多收入?
分析中...
[AI将生成并执行SQL查询,然后解释结果]
- 输入'exit'退出应用。
工作原理
- 应用通过 PostgreSQL MCP 服务器连接您的 PostgreSQL 数据库
- 加载并缓存您的数据库模式
- 当您提问时:
- 模式和问题被发送至 Ollama
- Ollama 生成适当的 SQL 查询
- 查询通过 MCP 执行
- 结果返回至 Ollama 进行解释
- 您会收到自然语言响应
环境变量
| 变量名 | 描述 | 默认值 |
|---|---|---|
| DATABASE_URL | PostgreSQL 连接字符串 | 必填 |
| OLLAMA_MODEL | 使用的 Ollama 模型 | qwen2.5-coder:7b-instruct |
安全性
- 所有数据库访问均为只读
- SQL 查询限制为 SELECT 语句
- 数据库凭证安全保存在您的 .env 文件中
开发技术
构建使用:
- TypeScript
- 模型上下文协议 (MCP)
- Ollama
- PostgreSQL
故障排除
常见问题
-
"无法连接数据库"
- 检查 .env 中的 DATABASE_URL
- 确认 PostgreSQL 正在运行
- 检查网络连接
-
"无法连接 Ollama"
- 确保 Ollama 正在运行 (
ollama serve) - 确认模型已安装 (
ollama list)
- 确保 Ollama 正在运行 (
-
"执行查询错误"
- 检查数据库权限
- 确认模式中的表/列名称
许可证
MIT
贡献指南
- Fork 仓库
- 创建特性分支
- 提交您的更改
- 推送至分支
- 发起 Pull Request

1panel
mcp-1panel 是为 1Panel 实现的 Model Context Protocol (MCP) 服务器。
Aact mcp
与AACT临床试验数据库集成,支持查询和分析大规模试验数据,适用于研究和医疗应用。
Abap Adt
一个服务器,它将模型上下文协议(MCP)与SAP ABAP系统连接起来,使像Cline这样的工具能够检索ABAP源代码、表结构和其他开发工件。
Adwords Mcp
一个令人尴尬的MCP服务器,向Cursor、Claude和其他客户端的开发者提供广告
