Author avatar

mcp-server-demo

by liqingdong

Server

Tags

4.8 (120)

MCP Server Demo 项目文档

项目简介

这是一个基于Spring Boot 3.4.4的MCP(Model Control Protocol)服务示例项目,集成Spring AI工具链实现智能服务功能。项目包含基础数值运算、天气查询等服务的实现模板。

核心功能

1. 数字服务NumberService

  • 奇偶数判断
  • 素数检测(已实现)
  • 扩展建议:可添加质因数分解、斐波那契计算等

2. 天气服务WeatherService

  • 天气数据接口(当前使用随机数伪代码。真实需对接第三方API实现,可参考OpenWeatherMap API

3. MCP工具支持

  • 通过@Tool注解暴露服务为标准化工具
  • 通过@ToolParam注解定义服务参数

项目结构

src
|-- main
|  |-- java
|  |  `-- cn
|  |    `-- liqingdong
|  |      `-- mcp
|  |        `-- server
|  |          |-- McpApplication.java
|  |          `-- service
|  |            |-- NumberService.java
|  |            `-- WeatherService.java
|  `-- resources
|    `-- application.yml
`-- test
  `-- java
    `-- cn
      `-- liqingdong
        `-- mcp
          `-- server
            |-- McpApplicationTest.java
            `-- SSEMcpTest.java
            `-- STDIOMcpTest.java


快速开始

环境要求

  • JDK 17
  • Maven 3.8+
  • IDE(推荐IntelliJ IDEA)

运行步骤

1. 克隆仓库

git clone https://github.com/liqingdong/mcp-server-demo.git 

2. 构建项目

mvn clean install

3. 使用服务

3.1 使用STDIO模式
3.1.1 配置启动命令
java -jar -Dspring.ai.mcp.server.stdio=true target/mcp-server-demo-0.0.1-SNAPSHOT.jar
3.1.2 使用支持MCP工具的客户端,例如:Cherry Studio 进行测试
3.2 使用SSE模式
3.2.1 配置启动命令(默认访问地址为:http://localhost:8081/sse)
java -jar target/mcp-server-demo-0.0.1-SNAPSHOT.jar 

核心测试类

测试类名 测试内容
McpApplicationTest 应用上下文加载验证
SSEMcpTest/StdioMcpTest 不同协议的MCP服务测试

开发规范

  1. 代码风格:遵循Spring官方编码规范
  2. 工具注解:所有服务方法需用@Tool标注,参数需用@ToolParam标注
  3. 测试覆盖率:核心功能需达到80%+单元测试覆盖

贡献指南

  1. Fork仓库 → 创建功能分支
  2. 实现新功能/修复问题
  3. 添加对应单元测试
  4. 提交Pull Request至main分支

项目状态

Java Spring Boot Maven MCP junit

Related Services

playwright-mcp

Server

4.8 (120)
View Details →

blender-mcp

Server

4.8 (120)
View Details →

tavily-mcp

Server

4.8 (120)
View Details →