SQLite数据库自然语言查询工具

一个结合传统SQL查询和AI自然语言处理的全端解决方案,用于本地SQLite数据库的交互式查询与管理。

  • by sumitsahoo
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 sumitsahoo/sqlite-mcp-server

使用说明

🚀 SQLite MCP服务器和DataStudio

欢迎来到 SQLite MCP服务器 和 DataStudio 项目!此存储库包含一个完整的端到端解决方案,用于使用强大的模型上下文协议(MCP)查询本地SQLite数据库。它具有传统SQL查询和高级 问AI 自然语言界面。

该项目分为两个主要部分:

  1. 服务器(/server):一个封装了Node.js Express的服务器 better-sqlite3 数据库,并通过服务器发送事件(SSE)公开MCP工具。它还包括一个LangGraph代理来处理自然语言查询。
  2. 客户(/client):一个漂亮的、玻璃形态的React 19应用程序,使用Vite和Tailwind CSS v4构建,与服务器交互。

🛠 先决条件

在开始之前,请确保您的计算机上安装了以下内容:

  • Node.js (建议使用v18或更高版本)
  • npm (附带Node.js)
  • 一 OpenAI API密钥 (“Ask AI”自然语言功能需要)

🚀 入门指南

按照以下步骤启动并运行服务器和客户端。

1.安装与环境

  1. 打开终端并导航到项目根目录。
  2. 安装前端和后端的依赖关系:
    cd server && npm install
    cd ../client && npm install
    
  3. 配置环境变量:
    • 打开 /server/.env 文件。
    • 添加您的OpenAI API密钥:
      OPENAI_API_KEY=your_actual_api_key_here
      

2.启动两项服务

安装依赖项后,您可以使用提供的启动脚本同时启动服务器和React应用程序!

  1. 返回到根目录。
  2. 运行启动脚本(Linux/Mac):
    ./start.sh
    
  3. 控制台将同时显示两个应用程序的输出。打开浏览器并导航到提供的URL(通常 http://localhost:5173/).

💻 如何使用DataStudio

一旦服务器和客户端都运行了,你就可以开始探索你的数据了!

🟢 状态检查

看左上角。你应该看到一个绿点和文字 “服务器已连接”。如果显示已断开连接,请确保您的服务器正在端口上运行 3001.

🗄 探索图式

  1. 在左侧边栏上,单击 products “数据库”部分下的表。
  2. 主面板将更新以显示确切的SQL CREATE TABLE 该表的语句和列。

📝 运行原始SQL

  1. 确保你在 “原始SQL” 选项卡。
  2. 在编辑器中键入标准SELECT查询。例如:
    SELECT name, price, stock FROM products WHERE price > 100 ORDER BY price DESC;
    
  3. 点击 “运行查询” 按钮(或按Enter键)。
  4. 结果将立即填充到下面光滑的数据表中!

✨ Ask AI(自然语言查询)

  1. 切换到 “询问AI(NL)” 选项卡。
  2. 在提示框中用简单的英语键入问题。例如:
    • “给我看看3件最贵的东西。”
    • “所有电子产品的总库存是多少?”
    • “寻找价格低于50美元的产品。”
  3. 点击 “询问代理人” 按钮。
  4. AI将分析您的提示,连接到数据库模式,编写SQL并执行它!
  5. 观看UI显示:
    • 🧠 智能体思考:人工智能是如何处理你的问题的。
    • 💻 生成的SQL:它编写的确切SQL代码。
    • 📊 结果:从数据库返回的确切行。

📁 项目结构

sqlite-mcp-server/
├── server/                 # Backend Node.js Express application
│   ├── src/
│   │   ├── index.ts        # Main Express server and MCP tool registration
│   │   ├── db.ts           # SQLite database connection and initialization
│   │   └── agent.ts        # LangGraph ReAct agent for Natural Language processing
│   ├── package.json
│   └── .env                # OpenAI API Key goes here!
├── client/                 # Frontend React 19 application
│   ├── src/
│   │   ├── App.tsx         # Main Datastudio UI component
│   │   ├── index.css       # Premium Tailwind v4 styling
│   │   └── lib/mcp.ts      # MCP Server-Sent Events (SSE) connection hook
│   └── package.json
├── database.sqlite         # The generated local SQLite database
└── .gitignore

享受MCP和AI的强大功能,探索您的数据! 🎈