Cover image
Try Now
2025-04-14

3 years

Works with Finder

4

Github Watches

0

Github Forks

4

Github Stars

MySQL MCP 项目

该项目是一个 Mysql 的 MCP Server,提供对MySQL数据库的访问。结合了传统关系型数据库(MySQL)和向量数据库(Milvus)的优势,实现了以下核心功能:

  1. 数据库schemas查询 :允许LLMs通过自然语言查询获取相关表结构信息
  2. SQL查询执行 :支持执行SQL语句并返回查询结果

更新日志

2025-04-22

  1. 实现表结构定时更新机制

流程图

流程图

环境配置

项目需要以下环境变量配置(在 .env 文件中设置):

MySQL 数据库配置

  • DB_USER: 数据库用户名
  • DB_PASSWORD: 数据库密码
  • DB_HOST: 数据库主机地址
  • DB_PORT: 数据库端口(默认 3306)
  • DB_NAME: 数据库名称
  • DB_PARAMS: 数据库连接参数(如字符集、时区等)

SiliconFlow API 配置(用于向量嵌入)

  • SILICONFLOW_TOKEN: SiliconFlow API 访问令牌
  • SILICONFLOW_URL: SiliconFlow API 端点 URL

Milvus 向量数据库配置

  • MILVUS_HOST: Milvus 服务器地址
  • MILVUS_PORT: Milvus 服务端口(默认 19530)
  • MILVUS_COLLECTION: Milvus 集合名称

功能特性

  • 表结构查询:通过 get_can_use_table 工具根据自然语言描述查找相关表结构
  • 执行 SQL 查询:通过 execute_sql 工具执行 MySQL 数据库查询
  • 向量相似度搜索:使用 Milvus 进行高效的向量相似度搜索
  • 自动表结构索引:系统启动时自动获取所有表结构并创建向量索引

主要流程说明

  1. 系统初始化:加载环境配置、初始化日志系统、连接数据库
  2. 向量数据库准备:检查并创建 Milvus 集合,获取所有表结构并进行向量化处理
  3. 请求处理
    • 表结构查询:将自然语言描述转换为向量,在 Milvus 中搜索相似表结构
    • SQL 查询:直接执行 SQL 语句并返回结果

使用方法

  1. 确保 MySQL 和 Milvus 可正常访问
  2. 打包应用程序:go build -o yourPath/mcp-mysql
  3. yourPath 创建 .env 文件并配置相关环境变量
  4. MCP 配置
 "mcpName": {
      "timeout": 60,
      "command": "yourPath/mcp-mysql",
      "args": [
        "-m",
        "query",
        ""
      ],
      "transportType": "stdio"
    }

依赖项

  • Go 1.23+
  • MySQL 数据库
  • Milvus 向量数据库 v2.5+
  • SiliconFlow API(用于生成文本嵌入向量)
  • zap 日志库(用于结构化日志记录)

其他资料

  • MCP 官方文档:https://modelcontextprotocol.io/introduction
  • vscode 安装 cline 扩展(MCP host端):https://docs.cline.bot/getting-started/installing-cline
  • milvus 本地安装教程:https://milvus.io/docs/install_standalone-docker-compose.md
  • 硅基流动注册、APIKEY 获取:https://docs.siliconflow.cn/cn/userguide/quickstart

相关推荐

  • av
  • Führen Sie mühelos LLM -Backends, APIs, Frontends und Dienste mit einem Befehl aus.

  • WangRongsheng
  • 🧑‍🚀 全世界最好的 llm 资料总结(数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Zusammenfassung der weltbesten LLM -Ressourcen.

  • 1Panel-dev
  • 🔥 1Panel bietet eine intuitive Weboberfläche und einen MCP -Server, um Websites, Dateien, Container, Datenbanken und LLMs auf einem Linux -Server zu verwalten.

  • rulego
  • ⛓️Rugele ist ein leichter, leistungsstarker, leistungsstarker, eingebetteter Komponenten-Orchestrierungsregel-Motor-Rahmen für GO.

  • hkr04
  • Leichtes C ++ MCP (Modellkontextprotokoll) SDK

  • sigoden
  • Erstellen Sie einfach LLM -Tools und -Argarten mit einfachen Bash/JavaScript/Python -Funktionen.

  • RockChinQ
  • 😎简单易用、🧩丰富生态 - 大模型原生即时通信机器人平台 | 适配 qq / 微信(企业微信、个人微信) / 飞书 / 钉钉 / diskord / telegram / slack 等平台 | 支持 Chatgpt 、 Deepseek 、 Diffy 、 Claude 、 Gemini 、 xai 、 ppio 、 、 ulama 、 lm Studio 、阿里云百炼、火山方舟、 siliconflow 、 qwen 、 mondshot 、 chatglm 、 sillytraven 、 mcp 等 llm 的机器人 / agent | LLM-basierte Instant Messaging Bots-Plattform, unterstützt Zwietracht, Telegramm, Wechat, Lark, Dingtalk, QQ, Slack

  • modelscope
  • Bauen Sie LLM-Multi-Agent-Anwendungen auf einfachere Weise auf.

  • dmayboroda
  • On-Premise-Konversationslappen mit konfigurierbaren Behältern

    Reviews

    5 (0)