关于 Data Generator Java MCP Server
Data Generator Java MCP Server 是基于 Spring Boot 和 Spring AI 的应用,将数据生成方法作为 MCP 工具公开。它面向开发或扩展 Java MCP 服务的开发者,支持同步执行,并包含用于外部 API 集成的 REST 客户端。
主要功能
- 01根据提示词生成数据
- 02根据 ID 和年龄生成用户数据
- 03同步执行模式
- 04用于外部 API 的 REST 客户端
- 05通过 Java 方法扩展工具
适用场景
- 01根据模型提示生成数据
- 02按 ID 和年龄创建用户记录
- 03为 Java MCP 服务添加自定义工具
MCP 相关
该 MCP 服务向 MCP 客户端提供 `generateData` 和 `getUserData` 工具,并通过 Spring AI 将 Java 服务方法注册为工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Data Generator Java MCP 服务
一个用于数据生成的 Spring Boot 应用,实现了 Model Completion Protocol(MCP)服务。此项目演示了如何使用 Spring AI 创建自定义 MCP 服务,并将其与 AI 模型集成,以根据提示词生成数据。
概述
此应用是一个提供数据生成工具的 MCP 服务。它使用 Spring AI 的 MCP 服务功能,将 Java 方法公开为可供 AI 模型调用的工具。该服务配置为以同步模式运行。
功能
- 实现 Model Completion Protocol(MCP)服务
- 提供数据生成工具
- 支持同步执行模式
- 包含用于外部 API 集成的 REST 客户端
- 实现简单的 User 数据模型
前提条件
- Java 21 或更高版本
- Maven 3.9+(或使用附带的 Maven wrapper)
- 具备 Spring Boot 和 Spring AI 的基础知识
快速开始
构建应用
-
克隆仓库:
git clone <repository-url> cd data-generator-java-mcp-server -
使用 Maven 构建应用:
./mvnw clean install
运行应用
使用 Maven wrapper 运行应用:
./mvnw spring-boot:run
MCP 服务将启动并准备好接收请求。
配置
MCP 服务配置
MCP 服务在 application.properties 文件中配置:
# Application name
spring.application.name=data-generator-java-mcp-server
# MCP server name
spring.ai.mcp.server.name=data-generator-java-mcp-server
# MCP server type (SYNC or ASYNC)
spring.ai.mcp.server.type=SYNC
# Disable Spring Boot banner
spring.main.banner-mode=off
# Run as a non-web application
spring.main.web-application-type=none
自定义配置
你可以通过修改 McpServerConfig 类来自定义 MCP 服务:
@Configuration
public class McpServerConfig {
@Bean
public ToolCallbackProvider dataGeneratorToolCallbackProvider(DataGeneratorService dataGeneratorService) {
return MethodToolCallbackProvider.builder()
.toolObjects(dataGeneratorService)
.build();
}
}
可用工具
MCP 服务提供以下工具:
-
generateData - 根据提供的提示词生成数据
- 参数:
prompt(String) - 返回:以 String 形式返回生成的数据
- 参数:
-
getUserData - 根据提供的 ID 和年龄生成用户数据
- 参数:
id(String)age(int)
- 返回:包含 ID、姓名和年龄的 User 对象
- 参数:
扩展应用
要向 MCP 服务添加新工具:
- 创建新的服务类,或扩展现有的
DataGeneratorService - 添加使用
@Tool注解的方法 - 在
McpServerConfig类中注册该服务
示例:
@Service
public class MyCustomService {
@Tool(
name = "myCustomTool",
description = "Description of what the tool does"
)
public SomeReturnType myCustomTool(String param1, int param2) {
// Implementation
return result;
}
}
然后在配置中注册:
@Bean
public ToolCallbackProvider myCustomToolCallbackProvider(MyCustomService myCustomService) {
return MethodToolCallbackProvider.builder()
.toolObjects(myCustomService)
.build();
}
与 AI 模型集成
此 MCP 服务可以与支持 Model Completion Protocol 的 AI 模型集成。AI 模型可以调用此服务公开的工具,在处理过程中生成数据。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。