O

Ollama 数据库助手

@robdodson/ollama-mcp-db
0 Stars 1.0k 次浏览 robdodson 更新于 2026-08-23

一个交互式聊天界面,结合了Ollama的大型语言模型能力并通过模型上下文协议(MCP)访问PostgreSQL数据库。用自然语言提问关于你的数据的问题,并获得由真实SQL查询支持的人工智能驱动的回答。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

Ollama MCP 数据库助手

一个结合了 Ollama 的 LLM 能力和通过 Model Context Protocol (MCP) 访问 PostgreSQL 数据库的交互式聊天界面。用自然语言询问您的数据,并获得基于真实 SQL 查询的人工智能响应。

功能

  • 以自然语言访问您的 PostgreSQL 数据库
  • 自动生成 SQL 查询
  • 基于模式的响应
  • 交互式聊天界面
  • 安全、只读的数据库访问

先决条件

  • Node.js 16 或更高版本
  • 正在运行的 PostgreSQL 数据库
  • Ollama 已安装并在本地运行
  • 在 Ollama 中拉取 qwen2.5-coder:7b-instruct 模型

设置

  1. 克隆仓库:
git clone [your-repo-url]
cd [your-repo-name]
  1. 安装依赖项:
npm install
  1. 拉取所需的 Ollama 模型:
ollama pull qwen2.5-coder:7b-instruct
  1. 在项目根目录中创建 .env 文件:
DATABASE_URL=postgresql://user:password@localhost:5432/dbname
OLLAMA_MODEL=qwen2.5-coder:7b-instruct  # Optional - this is the default

使用方法

  1. 启动聊天界面:
npm start
  1. 用自然语言询问您的数据:
Connected to database. You can now ask questions about your data.
Type "exit" to quit.

What would you like to know about your data? Which products generated the most revenue last month?
Analyzing...

[AI will generate and execute a SQL query, then explain the results]
  1. 输入 'exit' 退出应用程序。

工作原理

  1. 应用程序通过 PostgreSQL MCP 服务器 连接到您的 PostgreSQL 数据库。
  2. 加载并缓存您的数据库模式。
  3. 当您提出问题时:
    • 将模式和问题发送给 Ollama
    • Ollama 生成适当的 SQL 查询
    • 通过 MCP 执行查询
    • 结果返回到 Ollama 进行解释
    • 您收到自然语言响应

环境变量

变量名 描述 默认值
DATABASE_URL PostgreSQL 连接字符串 必填
OLLAMA_MODEL 要使用的 Ollama 模型 qwen2.5-coder:7b-instruct

安全性

  • 所有数据库访问均为只读
  • SQL 查询仅限于 SELECT 语句
  • 数据库凭据安全地保存在 .env 文件中

开发

使用以下技术构建:

  • TypeScript
  • Model Context Protocol (MCP)
  • Ollama
  • PostgreSQL

故障排除

常见问题

  1. "无法连接到数据库"

    • 检查 .env 中的 DATABASE_URL
    • 确认 PostgreSQL 正在运行
    • 检查网络连接
  2. "无法连接到 Ollama"

    • 确保 Ollama 正在运行 (ollama serve)
    • 验证模型已安装 (ollama list)
  3. "执行查询时出错"

    • 检查数据库权限
    • 核实模式中的表/列名称

许可证

MIT

贡献指南

  1. 分叉仓库
  2. 创建功能分支
  3. 提交更改
  4. 推送到分支
  5. 发起 Pull Request

相关 MCP 服务