Java 开发必看!MCP Server 实战全攻略,原来这么简单 原创

发布于 2025-4-3 07:32
浏览
0收藏

Model Context Protocol(MCP)作为新一代 AI 服务交互协议,近期发布了 Java SDK 0.8 版本。新版本带来了更强大的会话管理能力和工具集成机制,但在使用原生 SDK 时,开发者仍面临以下挑战:

  • 依赖注入和生命周期管理:需手动处理,操作繁琐。
  • 工具注册流程:较为复杂,配置步骤多。
  • 与 Spring 生态整合:缺乏深度整合,与现有 Spring 项目适配性差。

为解决这些问题,Spring 官方团队与 MCP 项目合作推出了 Spring AI MCP 扩展。通过 Spring Boot Starter,实现了一键式整合,显著降低了企业级 AI 服务的开发门槛,让开发者可以更轻松地在 Spring 项目中使用 MCP 功能。

1、MCP Server 开发步骤

本文将手把手教您搭建一个基于 Spring AI MCP 的 Java MCP Server,让您能够在各类客户端轻松调用企业级 AI 服务。借助这一方案,您可以将业务逻辑与工具无缝融入 AI 交互流程,为用户提供更智能、更贴合业务场景的体验。

第一、准备环境

<dependency>    
    <groupId>org.springframework.ai</groupId>    
    <artifactId>spring-ai-mcp-server-webmvc-spring-boot-starter</artifactId>
</dependency>
  • 1.
  • 2.
  • 3.
  • 4.

第二、业务逻辑实现

@Service
publicclassMeilisearchService {
    @Tool(description = "PIG ISSUE 知识库检索,解决用户技术问题 ")
    public String queryQuestion(@ToolParam(description = "用户的技术问题描述 ") String question) {
        Clientclient=newClient(newConfig()
));
        SearchResultresults= client.index("pigx-doc")
            .search(newSearchRequest(question)
                .setShowMatchesPosition(true)
                .setSort(newString[]{"lvl2:desc"})
                .setLimit(1));
        return results.getHits().stream()
            .map(hit -> "【"+hit.get("lvl0")+"】"+hit.get("text"))
            .collect(Collectors.joining("\n\n"));
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.

第三、服务注册

@Configuration
    public class McpConfig {   
    @Bean    
        public ToolCallbackProvider documentTools(MeilisearchService searchService) {        
           return MethodToolCallbackProvider.builder()               
           .toolObjects(searchService)               
           .build();   
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

2、MCP Client 配置

第一、MCP Clent 通用配置

{
  "mcpServers":{
    "pig-issue":{
      "isActive":true,
      "command":"java",
      "args":[
        "-Dspring.ai.mcp.server.stdio=true",
        "-jar",
        "/Users/lengleng/env/repository/io/github/pig-mesh/pig-issue-query-mcp/0.0.1-SNAPSHOT/pig-issue-query-mcp-0.0.1-SNAPSHOT.jar"
      ]
    }
}
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

第二、图形化配置

1.Cherry 客户端配置界面

Java 开发必看!MCP Server 实战全攻略,原来这么简单-AI.x社区

2.客户端配置界面

Java 开发必看!MCP Server 实战全攻略,原来这么简单-AI.x社区

第三、效果展示

Java 开发必看!MCP Server 实战全攻略,原来这么简单-AI.x社区


本文转载自公众号玄姐聊AGI  作者:玄姐

原文链接:​​https://mp.weixin.qq.com/s/t_-DhAtP4xW8j5-batvAhw​

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2025-4-3 07:32:05修改
收藏
回复
举报


回复
相关推荐