SQL分析引擎

MCP Query Engine是一个结合大型语言模型和数据库分析的智能商业智能平台,支持自然语言查询数据库并生成交互式可视化结果。

  • by Mohamedbadawyy12
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Mohamedbadawyy12/MCP-Query-Engine

使用说明

🤖 MCP查询引擎

基于人工智能的SQL分析平台 由Google Gemini和模型上下文协议(MCP)提供支持


📋 概述

这 MCP查询引擎 是一个智能商业智能平台,将大型语言模型的强大功能与数据库分析相结合。它使用户能够使用自然语言查询数据库,并通过交互式可视化接收格式化的见解。

🎯 主要特点

  • 🗣️ 自然语言到SQL:用简单的英语(或阿拉伯语)提问,获得准确的SQL查询
  • 📊 交互式可视化:使用Plotly自动生成图表(条形图、折线图、饼图、散点图)
  • 💬 多对话聊天:使用聊天记录管理多个分析会话
  • 🔍 SQL透明度:查看已执行的SQL查询以实现完全透明
  • 📥 数据导出:将查询结果下载为CSV文件
  • 🎨 专业用户界面:干净、现代的Streamlit界面,带有侧边栏导航
  • 🌐 多语言支持:以与您的查询相同的语言进行响应

技术栈

  • LLM:谷歌Gemini 2.5 Pro(通过LangChain)
  • 框架:Streamlit用于web界面
  • 协议:用于工具集成的模型上下文协议(MCP)
  • 可视化:绘图用于交互式图表
  • 数据库:SQLite(可扩展到其他SQL数据库)

🚀 入门指南

先决条件

安装

  1. 克隆存储库

    git clone <repository-url>
    cd "MCP Query Engine"
    
  2. 创建虚拟环境

    python -m venv venv
    # Windows
    venv\Scripts\activate
    # macOS/Linux
    source venv/bin/activate
    
  3. 安装依赖项

    pip install -r requirements.txt
    
  4. 配置环境变量

    创建一个 .env 根目录中的文件:

    GOOGLE_API_KEY=your_api_key_here
    
  5. 验证设置 (可选)

    python verify_system.py
    

💻 用法

启动应用程序

streamlit run app.py

应用程序将在您的浏览器中打开 http://localhost:8501

功能详解

  1. 新聊天:单击“➕ 新聊天”开始新的对话
  2. 聊天历史记录:从侧边栏访问以前的对话
  3. 提出问题:用自然语言键入您的问题
  4. 查看结果:
    • 查看带表格和亮点的格式化答案
    • 查看自动生成的图表
    • 展开以查看执行的SQL
    • 以CSV格式下载数据
  5. 切换对话:点击历史记录中的任何聊天记录以继续

🛠️ 配置

数据库设置

该项目包括一个示例 shop.db。要使用自己的数据库,请执行以下操作:

  1. 更新 Config.DB_PATH 在 src/config.py
  2. 确保数据库可访问
  3. 代理将自动发现架构

📊 示例数据库架构

包括 shop.db 包含:

  • 产品:带价格的产品目录
  • 订单:客户订单
  • 订单项目:每个订单的行项目
  • 客户:客户信息

📦 依赖项

mcp                      # Model Context Protocol
streamlit                # Web interface
langchain                # LLM orchestration
langchain-google-genai   # Google Gemini integration
pandas                   # Data manipulation
python-dotenv            # Environment configuration
plotly                   # Interactive charts