一个提供访问 Spring Initializr 功能的 MCP(模型上下文协议)服务器,允许 AI 助手以编程方式生成和下载 Spring Boot 项目。
该项目实现了一个 MCP 服务器,封装了 Spring Initializr API,使 AI 助手(如 Claude)能够创建具有自定义配置的 Spring Boot 项目。无需手动访问 start.spring.io,现在你可以要求你的 AI 助手生成具有特定依赖项、Java 版本和项目结构的项目。
在生成项目时,可以指定:
maven-project, gradle-project, gradle-project-kotlinjava, kotlin, groovy17, 21, 24(默认为 11)jar, war(默认为 jar)从 Releases 页面下载适合您平台的二进制文件:
springinitializr-mcp-linux-x64springinitializr-mcp-windows-x64.exespringinitializr-mcp-macos-x64springinitializr-mcp-macos-arm64需求:
git clone https://github.com/hpalma/springinitializr-mcp.git
cd springinitializr-mcp
./gradlew build
./gradlew nativeCompile
将 MCP 服务器添加到您的 Claude Desktop 配置中:
编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"springinitializr": {
"command": "/path/to/springinitializr-mcp-binary"
}
}
}
编辑 %APPDATA%/Claude/claude_desktop_config.json:
{
"mcpServers": {
"springinitializr": {
"command": "C:\\path\\to\\springinitializr-mcp-windows-x64.exe"
}
}
}
配置完成后,您可以要求 Claude 生成 Spring Boot 项目:
"创建一个带有 Spring Data JPA、PostgreSQL 和 Spring Security 依赖项的 Spring Boot 网络应用程序"
"生成一个使用 Gradle 的 Kotlin Spring Boot 项目,包含 WebFlux 和 MongoDB"
"创建一个基于 Maven 的 Spring Boot 项目,包含 Thymeleaf、Validation 和 Actuator"
工具将生成并下载项目作为 ZIP 文件到您指定的位置,并可选地自动解压。
该服务器支持所有 Spring Initializr 依赖项,包括:
依赖项列表通过从 Spring Initializr 获取最新元数据自动更新。
# 使用 dev 配置文件进行更多日志记录
./gradlew bootRun --args='--spring.profiles.active=dev'
# 从 Spring Initializr 生成更新的常量
./gradlew generateToolDescriptions
# 运行测试
./gradlew test
# 运行原生测试
./gradlew nativeTest
该项目使用 Gradle 任务来获取最新的 Spring Initializr 元数据并生成支持的依赖项和 Java 版本的常量:
./gradlew generateToolDescriptions
这确保了工具始终支持最新的 Spring Boot 版本和依赖项:
https://start.spring.io/metadata/client 获取元数据SpringInitializrConstants.java 包含当前依赖项该项目包括全面的测试:
# 运行所有测试
./gradlew test nativeTest nativeIntegrationTest
# 仅运行单元测试
./gradlew test
# 仅运行原生集成测试
./gradlew nativeIntegrationTest
集成测试包括启动时间验证,以确保原生编译提供了预期的性能优势:
该项目使用 GitHub Actions 来:
服务器使用 Spring Boot 配置,以下为主要属性:
spring:
application:
name: springinitializr-mcp
ai:
mcp:
server:
name: springinitializr
version: 1.0.0
生成并下载具有指定配置的 Spring Boot 项目。
参数:
downloadFolderPath(可选):目标下载目录shouldExtract(可选):是否解压 ZIP 文件projectType(可选):项目构建系统类型language(可选):编程语言groupId(可选):Maven/Gradle 组标识符artifactId(可选):项目构件标识符springBootVersion(可选):要使用的 Spring Boot 版本name(可选):项目显示名称description(可选):项目描述packageName(可选):基础 Java 包名packaging(可选):打包类型(JAR/WAR)javaVersion(可选):目标 Java 版本dependencies(可选):逗号分隔的依赖项列表返回值: 下载文件或解压目录的绝对路径
git checkout -b feature/amazing-feature)./gradlew test nativeTest)./gradlew generateToolDescriptions)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)原生可执行文件无法启动:
项目生成失败:
MCP 连接问题:
使用 dev 配置文件进行增强的日志记录:
./gradlew bootRun --args='--spring.profiles.active=dev'
此项目根据 MIT 许可证发布 - 查看 LICENSE 文件了解详细信息。