SpringAI-MySQLMcp服务

1.定义

MySQLMcp的server已被别人创建好,拉下来使用即可。

MySQL MCP ( Model Context Protocol for MySQL ) 是⼀个基于 MCP 协议的服务器组件,它像 ⼀座"桥梁",连接⼤语⾔模型与 MySQL 数据库。通过它, LLM 可以直接理解⾃然语⾔查询,并⾃动 转换为 SQL 语句执⾏,返回结果。

2.安装服务

⾸先执⾏以下命令安装对应的 MCP Server 到机器上。

局部

复制代码
npm install mysql-mcp-server

全局

复制代码
npm -g install mysql-mcp-server

3.配置文件

复制代码
server:
  port: 8013
spring:
  application:
    name: ai-siliconflow-glm-mcp-sse-client
  ai:
    openai:
      base-url: https://api.siliconflow.cn
      api-key: 你的硅基流动key
      chat:
        options:
          model: "zai-org/GLM-4.6"
          temperature: 0.7
    mcp:
      client:
        name: ai-siliconflow-glm-mcp-mysql-client
        stdio:
          connections:
            mysql:
              # Windows操作系统使⽤npx.cmd,Linux和MacOS使⽤npx
              command: "npx.cmd"
              args:
                # mcp server名称
                - "mysql-mcp-server"
              env:
                # 数据库ip
                "MYSQL_HOST": "localhost"
                # 数据库服务端⼝
                "MYSQL_PORT": "3306"
                # 数据库⽤户名
                "MYSQL_USER": "root"
                # 数据库密码
                "MYSQL_PASSWORD": "123456"
                # 数据库名称
                "MYSQL_DATABASE": "jiazhong_2025_2"

4.config类

java 复制代码
package com.jiazhong.mingxing.ai.siliconflow.glm.mcp.mysql.client.config;

import jakarta.annotation.Resource;
import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.mcp.SyncMcpToolCallbackProvider;
import org.springframework.ai.openai.OpenAiChatModel;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class ChatClientConfig {
    @Resource
    private OpenAiChatModel openAiChatModel;
    @Resource
    private SyncMcpToolCallbackProvider syncMcpToolCallbackProvider;
    @Bean("openAiChatClient")
    public ChatClient openAiChatClient(){
        return ChatClient.builder(openAiChatModel)
                .defaultToolCallbacks(syncMcpToolCallbackProvider)
                .build();
    }
}

5.controller类

java 复制代码
package com.jiazhong.mingxing.ai.siliconflow.glm.mcp.mysql.client.controller;

import jakarta.annotation.Resource;
import org.springframework.ai.chat.client.ChatClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import reactor.core.publisher.Flux;

@RestController
@RequestMapping("/mysql")
public class MySQLController {
    @Resource
    private ChatClient openAiChatClient;
    @GetMapping(value = "/a",produces = "text/html;charset=utf-8")
    public Flux<String> a(@RequestParam("question") String questiono){
        return openAiChatClient.prompt(
                        """
                                1.查询jiazhong_2025_2数据库
                                """
                )
                .user(questiono)
                .stream().content();
    }
}

6.启动类

java 复制代码
package com.jiazhong.mingxing.ai.siliconflow.glm.mcp.mysql.client;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class AiSiliconflowGlmMcpMySQLClientApplicatiion {
    public static void main(String[] args) {
        SpringApplication.run(AiSiliconflowGlmMcpMySQLClientApplicatiion.class,args);
    }
}
相关推荐
乌恩大侠1 小时前
从 5G 通信到厘米级感知:基于 NVIDIA Aerial、SRS 与 UL-TDOA 构建 6G 无线定位实验平台
人工智能·5g·电信大模型
云和数据.ChenGuang8 小时前
Python 重写(Override)深度解析:从 MRO 到 super() 的完整机制
java·开发语言·人工智能·python·langchain·1024程序员节
摇滚侠8 小时前
《On Java 中文版 基础卷》阅读笔记 实现隐藏 12
java·数据库·笔记
西西木科技丨Shopify开发机构8 小时前
CalDigit TS4案例:AI产品图的Shopify整站接入与验收
人工智能·shopify·独立站
跨境Jacky8 小时前
亚马逊选品排名监控改造记:从手抄表格到MCP自动监控
跨境电商·mcp·sorftime
川石课堂软件测试9 小时前
学习软件测试需掌握的一些知识
数据库·python·sql·功能测试·网络协议·mysql·http
2601_965448879 小时前
AI视频制作:做系列节气民俗视频音色不统一,AI 音色克隆省事的方法
人工智能·机器学习·音视频
美狐美颜SDK开放平台9 小时前
视频美颜SDK试用DEMO阶段应该测试什么?直播APP接入实操指南
开发语言·人工智能·深度学习·音视频·美颜sdk·直播美颜sdk·第三方美颜sdk
HRaitest9 小时前
秋招技术岗招聘提效:三类 AI 招聘方案的技术底层与选型逻辑
大数据·人工智能·求职招聘·ai-native
天远数科9 小时前
零信任架构实战:基于天远企业股权变更构建自动化商业银行对公授信存续期股权异动与资产抽逃预警网关
运维·人工智能·架构·自动化