mcpField
S
Springboot Bootstrap Mcp

Springboot Bootstrap Mcp

ローカル
github.com/akshay-harale開発ツール240 週間前に更新

Springboot Bootstrap Mcp について

Springboot Bootstrap Mcpは、Spring Initializrの選択肢を調べ、Spring Bootプロジェクトを生成するMCPツールを提供します。開発者はプロジェクトをZIPで保存するか、ディレクトリに直接展開できます。

主な機能

  1. 01Spring Initializrの設定項目を取得
  2. 02ビルドツール、言語、依存関係をカスタマイズ
  3. 03プロジェクトをZIP形式で保存
  4. 04プロジェクトをディレクトリに直接展開
  5. 05ネイティブバイナリとJARを提供

活用シーン

  1. 01Spring Boot REST APIプロジェクトの生成
  2. 02データベース依存関係を含むマイクロサービスの作成
  3. 03IDEで開くためのディレクトリへの展開

MCP 対応

Spring Initializrの設定項目の取得と、設定済みSpring Bootプロジェクトのダウンロードを行うツールをMCPクライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Spring Boot Bootstrap MCP サーバー

Spring Initializr を使用して Spring Boot プロジェクトをブートストラップするための Model Context Protocol(MCP)サーバーです。このサーバーは、AI アシスタントが利用可能な Spring Boot の構成を確認し、カスタマイズされたプロジェクトテンプレートを生成するためのツールを提供します。

機能

利用可能なツール
  1. getSpringBootInitDetails

    • Spring Initializr から利用可能なすべての構成オプションを取得します
    • 利用可能な Spring Boot のバージョン、依存関係、Java のバージョンなどを返します
    • 有効なパラメーター値を確認するには、まずこれを使用してください
  2. downloadSpringBootProject

    • 構成済みの Spring Boot プロジェクトを ZIP ファイルとしてダウンロードするか、ディレクトリに直接展開します
    • スマートパス検出:パスが .zip で終わる場合は ZIP ファイルとして保存し、それ以外の場合はすべてのファイルをディレクトリに展開します
    • ビルドツール、言語、依存関係などをカスタマイズできます
    • 必要に応じて親ディレクトリを自動的に作成します
    • 展開したプロジェクトは、すぐに IDE で開ける状態です

クイックスタート

1. サーバーをダウンロードする

リリースページに移動し、ご利用のプラットフォームに適したバージョンをダウンロードしてください。

オプション A:ネイティブバイナリ(推奨 — 起動が非常に高速)

起動時間が最速(約87ミリ秒)で、Java のインストールは不要です!

  • Windows:app-bootstrap.exe をダウンロード
  • macOS:app-bootstrap をダウンロード(macOS バイナリ)
  • Linux:app-bootstrap をダウンロード(Linux バイナリ)

保存先:C:/mcp-servers/(Windows)または ~/mcp-servers/(Mac/Linux)

macOS/Linux:バイナリを実行可能にします。

chmod +x ~/mcp-servers/app-bootstrap
オプション B:JAR ファイル(Java 21 以降が必要)

app-bootstrap-0.0.1-SNAPSHOT.jar をダウンロードします

保存先:C:/mcp-servers/app-bootstrap.jar(Windows)または ~/mcp-servers/app-bootstrap.jar(Mac/Linux)

2. MCP クライアントを設定する

以下からクライアントを選択し、構成を追加してください。

GitHub Copilot(VS Code)

編集するファイル:%APPDATA%\Code\User\mcp.json(Windows)または ~/Library/Application Support/Code/User/mcp.json(Mac/Linux)

ネイティブバイナリ(推奨 — 最速):

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "C:/mcp-servers/app-bootstrap.exe",
      "args": []
    }
  }
}

JAR ファイル:

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "java",
      "args": ["-jar", "C:/mcp-servers/app-bootstrap.jar"]
    }
  }
}
Claude Desktop

編集するファイル:%APPDATA%\Claude\claude_desktop_config.json(Windows)または ~/Library/Application Support/Claude/claude_desktop_config.json(Mac)

ネイティブバイナリ(推奨 — 最速):

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "C:/mcp-servers/app-bootstrap.exe",
      "args": []
    }
  }
}

macOS/Linux のネイティブバイナリ:

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "/Users/username/mcp-servers/app-bootstrap",
      "args": []
    }
  }
}

JAR ファイル:

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "java",
      "args": ["-jar", "C:/mcp-servers/app-bootstrap.jar"]
    }
  }
}
その他の MCP クライアント(Cline、Zed、Cody、Continue.dev)

ネイティブバイナリ(推奨 — 最速):

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "/path/to/app-bootstrap",
      "args": []
    }
  }
}

JAR ファイル:

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "java",
      "args": ["-jar", "/path/to/app-bootstrap.jar"]
    }
  }
}

パスの例:

  • Windows のネイティブバイナリ:C:/mcp-servers/app-bootstrap.exe
  • Mac/Linux のネイティブバイナリ:/Users/username/mcp-servers/app-bootstrap
  • JAR:/Users/username/mcp-servers/app-bootstrap.jar
3. クライアントを再起動する

サーバーを読み込むには、VS Code、Claude Desktop、または MCP クライアントを再起動してください。

4. 使用を開始する

次のようなプロンプトを試してください。

# Download as ZIP file
Create a Spring Boot REST API with PostgreSQL and JPA, save to C:/projects/myapi.zip

# Extract directly to directory (ready to open in IDE)
Create a Spring Boot REST API with PostgreSQL and JPA, extract to C:/projects/myapi

詳細ドキュメント

代替のインストール方法
オプション 1:ビルド済みリリースをダウンロードする(推奨 — 上記のクイックスタートで説明済み)

手早く開始する方法については、上記のクイックスタートセクションを参照してください。

利用可能な形式:

  • ネイティブバイナリ:起動が非常に高速(約87ミリ秒)で、Java のインストールは不要
  • JAR ファイル:従来の Java アーカイブ。Java 21 以降が必要
オプション 2:ソースからビルドする

ソースからビルドする場合、またはプロジェクトに貢献する場合:

ビルドの前提条件
  • Java 21 以降
  • Gradle(ラッパー経由で同梱)
  • GraalVM(任意。ネイティブイメージのビルドに使用)
ビルド手順

標準 JAR:

# Windows
.\gradlew.bat clean bootJar

# Linux/Mac
./gradlew clean bootJar

ビルドされた JAR ファイルは、次の場所にあります:build/libs/app-bootstrap-0.0.1-SNAPSHOT.jar

ネイティブイメージ(GraalVM が必要):

# Windows
.\gradlew.bat nativeCompile

# Linux/Mac
./gradlew nativeCompile

ネイティブバイナリは、次の場所にあります:

  • Windows:build/native/nativeCompile/app-bootstrap.exe
  • Linux/Mac:build/native/nativeCompile/app-bootstrap

ネイティブイメージのメリット:

  • 超高速な起動:JVM の 2~5 秒に対して約 87 ミリ秒
  • 少ないメモリ使用量:JVM の約 1/4
  • Java 不要:スタンドアロンの実行ファイル
  • 最適な用途:サーバーレス、コンテナ、CLI ツール

設定

サーバー設定(任意)

サーバーは事前設定済みで、すぐに使用できます。デフォルト設定は src/main/resources/application.properties にあります:

spring.main.web-application-type=none
spring.main.banner-mode=off
spring.application.name=app-bootstrap

spring.ai.mcp.server.name=spring-bootstrap-mcp
spring.ai.mcp.server.version=0.0.1
spring.ai.mcp.server.stdio=true
spring.ai.mcp.server.type=SYNC
spring.ai.mcp.server.annotation-scanner.enabled=true

logging.file.name=./mcp-springboot-bootstrap-stdio-server.log

注記:リアクティブアプリケーション向けに、代替の WebFlux 設定が src/main/resources/application.json に用意されています(ソースからビルドする必要があります)。


クライアント固有の設定の詳細

上記のクイックスタートセクションで、ほとんどのユースケースを説明しています。このセクションでは、追加情報とトラブルシューティングについて説明します。

GitHub Copilot(VS Code)- 詳細

設定ファイルの場所:

  • Windows:%APPDATA%\Code\User\mcp.json
  • macOS:~/Library/Application Support/Code/User/mcp.json
  • Linux:~/.config/Code/User/mcp.json

設定の完全な例:

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "java",
      "args": ["-jar", "C:/mcp-servers/app-bootstrap.jar"],
      "env": {}
    }
  }
}

Mac/Linux の例:

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "java",
      "args": ["-jar", "/Users/username/mcp-servers/app-bootstrap.jar"]
    }
  }
}

#### Step 3: Restart VS Code

#### Step 4: Use with Copilot Chat

Open Copilot Chat and use prompts like:

PostgreSQL と JPA を使用する Spring Boot REST API を作成し、C:/projects/myapi.zip に保存してください


### 2. Claude Desktop

#### Step 1: Get the JAR file

**Option A: Download pre-built release (Recommended)**
- Download from [Releases page](../../releases/latest)
- Save to a location like `C:/mcp-servers/app-bootstrap-0.0.1-SNAPSHOT.jar` (Windows)
- Or `~/mcp-servers/app-bootstrap-0.0.1-SNAPSHOT.jar` (macOS/Linux)

**Option B: Build from source**
```bash
.\gradlew.bat clean bootJar  # Windows
./gradlew clean bootJar      # Linux/Mac
ステップ 2:Claude Desktop を設定する

Claude Desktop の設定ファイルを編集します:

  • Windows:%APPDATA%\Claude\claude_desktop_config.json
  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json

次の設定を追加します:

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "java",
      "args": [
        "-jar",
        "C:/mcp-servers/app-bootstrap-0.0.1-SNAPSHOT.jar"
      ]
    }
  }
}

macOS/Linux の例:

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "java",
      "args": [
        "-jar",
        "/Users/username/mcp-servers/app-bootstrap-0.0.1-SNAPSHOT.jar"
      ]
    }
  }
}

Claude Desktop を再起動すると、ツールを使用できるようになります。

その他の MCP クライアント - 詳細

Cline、Zed Editor、Sourcegraph Cody、Continue.dev、その他の MCP 対応クライアント向けの設定:

{
  "mcpServers": {
    "springboot-bootstrap": {
      "command": "java",
      "args": ["-jar", "/path/to/app-bootstrap.jar"]
    }
  }
}

/path/to/app-bootstrap.jar を実際のファイルパスに置き換えてください。


使用例

例 1:基本的な Web アプリケーション(展開)
Create a basic Spring Boot web application with Java 21 and extract it to C:/projects/demo

AI は次の処理を行います:

  1. getSpringBootInitDetails() を呼び出し、利用可能なオプションを取得します
  2. 適切なデフォルト値(Spring Web、最新の Spring Boot バージョンなど)を選択します
  3. 設定を指定して downloadSpringBootProject() を呼び出します
  4. すべてのファイルを C:/projects/demo に直接展開します(IDE で開ける状態になります)
例 2:データベースを使用するマイクロサービス(ZIP ダウンロード)
I need a Spring Boot microservice with:
- Spring Boot 3.5.9
- Java 21, Gradle
- Dependencies: Web, Data JPA, PostgreSQL, Lombok, Actuator
- Group: com.mycompany
- Artifact: user-service
- Save to: C:/microservices/user-service.zip

結果:配布またはアーカイブできる ZIP ファイルがダウンロードされます。

例 3:リアクティブアプリケーション(展開)
Create a Spring Boot WebFlux application with MongoDB and extract to C:/projects/reactive-api

結果:プロジェクトのすべてのファイルが展開され、IDE にインポートできる状態になります。

例 4:開発のクイックスタート
I need a REST API with Spring Boot, PostgreSQL, and Lombok. Extract it to C:/workspace/api-project so I can start coding immediately.

結果:プロジェクトは展開済みですぐに使えます。VS Code または IntelliJ でディレクトリを開くだけです!

ツールのパラメーター

getSpringBootInitDetails

パラメーターは不要です。利用可能な設定オプションをすべて含む JSON を返します。

downloadSpringBootProject
パラメーター必須説明例
typeはいビルドツールの種類gradle-project, maven-project
languageはいプログラミング言語java, kotlin, groovy
bootVersionはいSpring Boot のバージョン(メタデータと完全に一致する形式)3.5.9, 2.7.18.RELEASE
groupIdはいMaven のグループ IDcom.example
artifactIdはいプロジェクト/アーティファクト IDdemo
nameはいプロジェクトの表示名Demo Application
descriptionいいえプロジェクトの説明Demo project for Spring Boot
packageNameはいベースパッケージ名com.example.demo
packagingはいパッケージの種類jar, war
javaVersionはいJava のバージョン17, 21, 23
dependenciesはいカンマ区切りの依存関係 IDweb,data-jpa,postgresql
configurationFileFormatいいえ設定ファイルの形式properties, yaml
downloadPathはい出力先のパス以下を参照 ⬇️
重要:Spring Boot のバージョン形式

⚠️ 重要:Spring Boot ではバージョン形式が異なります。

  • Spring Boot 3.x:セマンティックバージョニング(例:3.5.9、3.4.2、3.3.7)
  • Spring Boot 2.x:.RELEASE サフィックスが付きます(例:2.7.18.RELEASE、2.6.15.RELEASE)

必ず最初に getSpringBootInitDetails() を呼び出して、正確なバージョン形式を取得してください。形式を推測したり、決めつけたりしないでください! | downloadPath | はい | 出力先のパス | 以下を参照 ⬇️ |

downloadPath の動作

downloadPath パラメーターによって、プロジェクトの出力方法が決まります。

  • .zip で終わる → ZIP ファイルとして保存します
    • 例:C:/projects/myapp.zip
    • 用途:アーカイブ、共有、または後で手動で展開する場合
API 呼び出しの例

参考までに、実際の Spring Initializr API 呼び出しは次のようになります。

https://start.spring.io/starter.zip?type=gradle-project&language=java&bootVersion=3.5.9&groupId=com.example&artifactId=demo&name=demo&description=Demo%20project%20for%20Spring%20Boot&packageName=com.example.demo&packaging=jar&javaVersion=17&configurationFileFormat=properties&dependencies=web,postgresql

この URL の構造は、すべてのパラメーターが Spring Initializr に渡される方法を示しています。MCP ツールは入力内容に基づいて、この URL を自動的に組み立てます。

  • .zip で終わらない → すべてのファイルをディレクトリに展開します
    • 例:C:/projects/myapp
    • 用途:すぐに IDE で開いて、ただちにコーディングを始められます
    • すべてのプロジェクトファイルは、適切な構成を保ったまま展開されます

よく使われる依存関係

よく使用される依存関係 ID は次のとおりです。

  • web - Spring Web(REST API)
  • webflux - Spring WebFlux(リアクティブ)
  • data-jpa - Spring Data JPA
  • data-mongodb - Spring Data MongoDB
  • postgresql - PostgreSQL ドライバー
  • mysql - MySQL ドライバー
  • h2 - H2 データベース
  • lombok - Lombok
  • actuator - Spring Boot Actuator
  • security - Spring Security
  • validation - バリデーション
  • cloud-config-client - Spring Cloud Config クライアント
  • cloud-eureka-client - Eureka Discovery クライアント

説明付きの完全な一覧を取得するには、getSpringBootInitDetails() を使用してください。

トラブルシューティング

JAR ファイルが見つからない
# Rebuild the project
.\gradlew.bat clean bootJar
接続エラー
  • start.spring.io にアクセスできるインターネット接続を確認してください
  • ファイアウォールの設定を確認してください
MCP クライアントにツールが表示されない
  • MCP の設定で JAR のパスが正しいことを確認してください
  • MCP クライアントを完全に再起動してください
  • ./mcp-springboot-bootstrap-stdio-server.log のログを確認してください
ダウンロード時の権限エラー
  • ダウンロード先ディレクトリが存在し、書き込み権限があることを確認してください
  • 絶対パスを使用してください(例:./app.zip ではなく C:/projects/app.zip)

開発

自動リリース

main ブランチへのプッシュ、またはバージョンタグの作成を行うと、GitHub Actions のワークフローが自動的に実行され、以下を行います。

  1. GraalVM を使用して、Windows、macOS、Linux 向けのネイティブ実行ファイルをビルドします
  2. 従来の JAR ファイルをビルドします
  3. すべての成果物を含む GitHub リリースを作成します
  4. ネイティブバイナリと JAR をリリースにアップロードします

バージョンタグを付けたリリースの場合(例:v1.0.0):

git tag v1.0.0
git push origin v1.0.0

ワークフローは、以下を含むリリースを自動的に作成します。

  • app-bootstrap.exe(Windows ネイティブ)
  • app-bootstrap(Linux ネイティブ)
  • app-bootstrap(macOS ネイティブ)
  • app-bootstrap-0.0.1-SNAPSHOT.jar(従来の JAR)

エンドユーザーによる手動ビルドは不要です! リリースページからダウンロードするだけです。

プロジェクト構成
src/main/java/org/springboot/bootstrap/
├── AppBootstrapApplication.java          # Main application
├── config/
│   └── RestClientConfig.java            # RestClient configuration
└── tools/
    └── SpringInItTools.java             # MCP tools implementation
新しいツールの追加
  1. SpringInItTools.java に新しいメソッドを追加します
  2. 名前と説明を指定して @McpTool アノテーションを付けます
  3. main ブランチにプッシュします(ビルドとリリースは自動的に行われます)
  4. アノテーションスキャンによってツールが自動的に検出されます
テスト
# Run tests
.\gradlew.bat test

# Run application locally (for testing)
.\gradlew.bat bootRun

技術スタック

  • Spring Boot:3.5.9
  • Spring AI MCP Server:1.1.2
  • Java:21
  • ビルドツール:Gradle
  • HTTP クライアント:Apache HttpClient 5
  • ネイティブイメージ:起動を超高速化する GraalVM Native Image のサポート
  • CI/CD:マルチプラットフォームのネイティブビルドに GitHub Actions を使用

コントリビューション

  1. リポジトリをフォークします
  2. 機能ブランチを作成します
  3. 変更を加えます
  4. 十分にテストします
  5. プルリクエストを送信します

ライセンス

このプロジェクトは、デモ目的で現状のまま提供されます。

サポート

問題や質問がある場合:

  • 上記のトラブルシューティングのセクションを確認してください
  • ./mcp-springboot-bootstrap-stdio-server.log のログを確認してください
  • Java 21 以降を使用していることを確認してください

関連リンク


Spring Boot と Spring AI MCP Server を使用して ❤️ を込めて開発

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。