Spring AI MCP Server开发

仓库地址:https://gitee.com/youfule/spring-ai-demo

踩坑记录

对接本地ollama,不配置mcp可以正常对话,配置后报400错误

.defaultTools(mcpTools)
.defaultTools(classesTool, subjectTool, studentTool, gradeTool)

将异步调用改为同步调用发现,报400错误是使用的模型不支持tools

    @GetMapping(value = "/ai/generateStreamAsString", produces = MediaType.TEXT_PLAIN_VALUE)
    public String generateStreamAsString(String message) {
        String content = chatClient.prompt()
                .user(message)
                .call()
                .content();
        return content + "[complete]";
    }

访问https://ollama.com/,搜索模型,勾选Tools筛选条件,过滤支持tools的模型

发送消息到后台,请求大模型后一直没有响应

停止模型,退出ollama,重新启动ollama得到解决

使用granite3-dense:latest模型不调用mcp,且回复内容有点胡扯

更换模型,更换qwen2.5:0.5b后解决

启动项目报mcpTools中提供的tools重名

采用这种方式配置,将多个mcp server放在一个里面,且外部的mcp server放在前面

.defaultTools(mcpTools)
.defaultTools(classesTool, subjectTool, studentTool, gradeTool)

没有调用外部的mcp server

采用这种方式配置,将外部的mcp server放在前面

.defaultTools(mcpTools)
.defaultTools(classesTool, subjectTool, studentTool, gradeTool)
posted @ 2025-04-16 17:10  fortuneju  阅读(443)  评论(0)    收藏  举报