M

MCP服务端演示

wuyanzuqingyuan/Mcp-Java_Demo
0 Stars 39 次浏览 更新于 2026-08-23

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "Mcp-demo": {
      "args": [
        "-jar",
        "../target/Mcp-demo-0.0.1-SNAPSHOT.jar"
      ],
      "command": "java",
      "env": {}
    }
  }
}

服务介绍

MCP 工具演示项目

这是一个基于 Spring Boot 的简单工具服务演示项目,展示了如何通过 MCP 协议提供数学计算工具服务。

项目简介

本项目实现了两个基础数学工具:

  • 两数相加
  • 生成指定范围的随机整数

项目采用 Spring Boot 框架,通过 @Tool 注解暴露工具方法,支持快速扩展更多工具类。

核心组件

McpDemoApplication.java

package org.mcp.demo;

import org.mcp.demo.mcp_server.MathTools;
import org.springframework.ai.tool.ToolCallbackProvider;
import org.springframework.ai.tool.method.MethodToolCallbackProvider;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;

@SpringBootApplication
public class McpDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(McpDemoApplication.class, args);
    }

}

McpToolConfig.java

@Configuration
public class McpToolConfig {

    @Bean
    public ToolCallbackProvider toolProvider(MathTools mathTools) {
        return MethodToolCallbackProvider.builder()
                .toolObjects(mathTools)
                .build();
    }
}

MathTools.java

@Service
public class MathTools {

    @Tool(description = "两数相加")
    public int add(
            @ToolParam(description = "被加数") int a,
            @ToolParam(description = "加数") int b) {
        return a + b;
    }

    @Tool(description = "生成随机整数")
    public int randomInt(
            @ToolParam(description = "最小值(含)") int min,
            @ToolParam(description = "最大值(含)") int max) {
        return (int) (Math.random() * (max - min + 1)) + min;
    }
}

快速开始

  1. 确保已安装 JDK 17+ 和 Maven
  2. 克隆项目:git clone https://gitee.com/lxl173/mcp-demo
  3. 进入项目目录:cd mcp-demo
  4. 启动项目:mvn spring-boot:run
  5. 服务将在 http://localhost:8080 启动

使用示例

启动服务后,可以通过 MCP 客户端调用以下工具:

  • math.add:执行加法运算
  • math.randomInt:生成随机整数

贡献指南

欢迎贡献更多工具类!请遵循以下步骤:

  1. 创建新的工具类并添加 @Service 注解
  2. 使用 @Tool 注解标记工具方法
  3. McpToolConfig 中注册新工具
  4. 提交 PR 并描述新增功能

许可证

本项目采用 Apache-2.0 许可证。详见 LICENSE 文件。

相关 MCP 服务