Siap membuat aplikasi bertenaga AI Anda lebih cerdas? Hari ini, kita akan membahas SpringBoot MCP Server, alat fantastis yang memungkinkan model AI seperti Claude atau Cursor berinteraksi dengan data Anda melalui Model Context Protocol (MCP). Bayangkan AI Anda menarik informasi game atau mencari data spesifik hanya dengan beberapa perintah—semuanya didukung oleh aplikasi Spring Boot yang ringan. Dalam panduan percakapan ini, kami akan memandu Anda dalam menyiapkan dan menggunakan SpringBoot MCP Server, lengkap dengan tes untuk melihatnya beraksi. Mari mulai coding!
Ingin platform terintegrasi, All-in-One untuk Tim Pengembang Anda bekerja sama dengan produktivitas maksimum?
Apidog memenuhi semua permintaan Anda, dan menggantikan Postman dengan harga yang jauh lebih terjangkau!
Apa Itu SpringBoot MCP Server?
SpringBoot MCP Server adalah aplikasi Spring Boot yang menggunakan kerangka kerja Spring AI MCP untuk mengekspos data Anda sebagai alat bagi model AI. Ini seperti memberikan AI Anda jalur langsung ke data aplikasi Anda, seperti detail game, melalui alat MCP standar. Dalam tutorial ini, kami akan berfokus pada server yang menawarkan dua alat utama:
- Dapatkan semua game: Mengambil daftar semua game yang tersedia.
- Cari game berdasarkan judul: Menemukan game spesifik berdasarkan judulnya.
Pengaturan ini sempurna untuk mengintegrasikan data eksternal dengan model AI atau membangun server MCP Anda sendiri. Selain itu, ini dibangun dengan Spring Boot, sehingga ramah pengembang dan mudah diperluas. Bersemangat? Mari kita siapkan!

Bagaimana Cara Menggunakan SpringBoot MCP Server
Prasyarat
Sebelum kita mulai, pastikan Anda memiliki:
- Java 24: Unduh dari oracle.com.
- Maven 3.8+: Instal dari maven.apache.org.
- IntelliJ IDEA: Dapatkan dari jetbrains.com (atau gunakan IDE pilihan Anda).
- Claude Desktop atau Cursor: untuk pengujian dengan klien AI (anthropic.com & cursor.com).
- Pengetahuan Dasar Spring Boot: Keakraban dengan dasar-dasar Spring Boot akan membantu.
Langkah 1: Buat Proyek Spring Boot Baru
Kunjungi Spring Initializr:
- Buka start.spring.io.
- Siapkan proyek Anda:
- Proyek: Maven
- Bahasa: Java
- Spring Boot: 3.5.4 (stabil terbaru per Juli 2025)
- Pengemasan: Jar
- Versi Java: 24 (atau versi yang terinstal)
- Tambahkan dependensi Spring AI MCP Server:

- Klik Hasilkan dan unduh proyek.
Buka di IntelliJ IDEA:
- Ekstrak proyek yang diunduh dan buka di IntelliJ IDEA sebagai proyek baru.
Langkah 2: Pahami Struktur Proyek
SpringBoot MCP Server Anda mencakup komponen-komponen kunci:
- Game.java: Sebuah record untuk data game (misalnya, judul dan URL).
- GameService.java: Berisi alat MCP dengan anotasi
@Tool
. - TestMcpServerApplication.java: Kelas aplikasi utama yang mendaftarkan alat.
- application.properties: Mengkonfigurasi server MCP untuk transportasi STDIO.

Berikut adalah contoh pengaturan application.properties
:
spring.application.name=test-mcp-server
spring.main.web-application-type=none
spring.ai.mcp.server.name=game-demo-mcp
spring.ai.mcp.server.version=0.0.1
spring.main.banner-mode=off
logging.pattern.console=
Ini mengkonfigurasi aplikasi sebagai server non-web menggunakan transportasi STDIO, sempurna untuk komunikasi MCP.
Langkah 3: Definisikan Model Data
Buat record Game.java
sederhana untuk merepresentasikan data game:
package com.example.testmcpserver;
public record Game(String title, String url){
}
Record yang tidak dapat diubah ini menyimpan detail game seperti judul dan URL, membuatnya mudah diproses oleh model AI.
Langkah 4: Implementasikan Alat MCP
Di GameService.java
, definisikan alat menggunakan anotasi @Tool
. Berikut adalah contoh:
package com.example.testmcpserver;
import jakarta.annotation.PostConstruct;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.ai.tool.annotation.Tool;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
public class GameService {
private static final Logger log = LoggerFactory.getLogger(GameService.class);
private List<Game> games = new ArrayList<>();
@Tool(name = "get_games", description = "Get a list of games from the collection")
public List<Game> getGames() {
return games;
}
@Tool(name = "get_game", description = "Get a single game from from the collection by title")
public Game getGame(String title) {
return games.stream().filter(course -> course.title().equals(title)).findFirst().orElse(null);
}
@PostConstruct
public void init() {
games.addAll(List.of(
new Game("GTA 6", "https://www.rockstargames.com/VI"),
new Game("FC 26","https://www.ea.com/en/games/ea-sports-fc/fc-26"),
new Game("Call of Duty: Black Ops 7","https://www.callofduty.com/blackops7")
));
}
}
Alat-alat ini memungkinkan model AI mengambil semua game atau menemukan game spesifik berdasarkan judul.
Langkah 5: Daftarkan Alat dengan Kerangka Kerja MCP
Di TestMcpServerApplication.java
, daftarkan alat:
package com.example.testmcpserver;
import org.springframework.ai.support.ToolCallbacks;
import org.springframework.ai.tool.ToolCallback;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import java.util.List;
@SpringBootApplication
public class TestMcpServerApplication {
public static void main(String[] args) {
SpringApplication.run(TestMcpServerApplication.class, args);
}
@Bean
public List<ToolCallback> danTools(GameService gameService) {
return List.of(ToolCallbacks.from(gameService));
}
}
Metode ToolCallbacks.from()
memindai GameService
untuk anotasi @Tool
dan mendaftarkannya dengan SpringBoot MCP Server.
Langkah 6: Jalankan SpringBoot MCP Server
Bangun dan Jalankan:
- Di IntelliJ, buka terminal dan jalankan:
mvn spring-boot:run
- Server dimulai sebagai server MCP menggunakan transportasi STDIO, tanpa antarmuka web.
Verifikasi Alat:
- Server mendaftarkan dua alat:
get_games
(daftar semua game) danget_game
(temukan game berdasarkan judul).
Langkah 7: Hubungkan ke Cursor atau Claude Desktop
Untuk menggunakan SpringBoot MCP Server dengan Claude Desktop:
Kompilasi Proyek:
- Bangun file JAR:
mvn clean package
- Temukan JAR di
target/test-mcp-server-0.0.1-SNAPSHOT.jar
.

A. Konfigurasi Claude Desktop:
- Buka
claude_desktop_config.json
(macOS:~/Library/Application Support/Claude
, Windows:%APPDATA%\Claude
). - Tambahkan:
{
"mcpServers": {
"game-demo-mcp": {
"command": "java",
"args": [
"-jar",
"path/to/test-mcp-server-0.0.1-SNAPSHOT.jar"
]
}
}
}
- Ganti
path/to/
dengan jalur sebenarnya ke file JAR Anda (misalnya,D:/Apidog_Projects/spring-boot-mcp-server/test-mcp-server/target/test-mcp-server-0.0.1-SNAPSHOT.jar
).

Mulai Ulang Claude Desktop:
- Tutup dan buka kembali Claude untuk menerapkan konfigurasi.
B. Konfigurasi Cursor:
- Navigasikan ke Pengaturan, lalu Pengaturan Cursor
- Pilih Alat dan Integrasi
- Klik server MCP Baru

Langkah 8: Uji SpringBoot MCP Server
Mari kita uji server dengan Claude Desktop:
Buka Claude Desktop atau Cursor dan Berikan Perintah:
- Di klien mcp Anda, masukkan:
Menggunakan server MCP, dapatkan semua game yang tersedia.
- Claude (atau Cursor) harus merespons dengan:
Available games:
- Title: GTA 6, URL: https://www.rockstargames.com/VI
- Title: FC 26, URL: https://www.ea.com/en/games/ea-sports-fc/fc-26

Coba Game Spesifik:
- Masukkan:
Menggunakan server MCP, dapatkan game dengan judul "FC 26".
- Respons yang diharapkan:
Game: FC 26, URL: https://www.ea.com/en/games/ea-sports-fc/fc-26
Ini mengonfirmasi SpringBoot MCP Server Anda berfungsi!
Langkah 9: Perluas SpringBoot MCP Server
Ingin membuatnya lebih keren? Berikut beberapa ide:
- Tambahkan Lebih Banyak Game: Perbarui metode
init()
GameService
untuk menyertakan lebih banyak objekGame
. - Alat Baru: Tambahkan metode dengan anotasi
@Tool
, seperti fungsi pencarian:
@Tool(name = "search_games", description = "Search games containing a keyword")
public List<Game> searchGames(String keyword) {
return games.stream()
.filter(game -> game.title().toLowerCase().contains(keyword.toLowerCase()))
.collect(Collectors.toList());
}
- Gunakan Database: Ganti daftar game dalam memori dengan koneksi database.
- Tingkatkan Pencarian: Tambahkan pencocokan fuzzy atau filter kategori.
Tips Pemecahan Masalah
- Server Tidak Mau Menyala? Pastikan Java 24 dan Maven terinstal, dan periksa
application.properties
untuk pengaturan yang benar. - Claude Tidak Terhubung? Verifikasi jalur JAR di
claude_desktop_config.json
dan mulai ulang Claude. - Alat Tidak Ditemukan? Konfirmasikan anotasi
@Tool
sudah benar danToolCallbacks
terdaftar. - Tidak Ada Output? Periksa terminal yang menjalankan
mvn spring-boot:run
untuk kesalahan.
Mengapa Menggunakan SpringBoot MCP Server?
SpringBoot MCP Server adalah impian bagi pengembang yang menyukai kesederhanaan Spring Boot dan ingin mengintegrasikan AI dengan data mereka. Ini ringan, menggunakan STDIO untuk komunikasi yang aman, dan memungkinkan model AI seperti Claude mengakses data aplikasi Anda secara real-time. Baik Anda membangun platform game atau aplikasi berbasis data lainnya, server ini membuat integrasi AI menjadi mudah.
Pengujian kami dengan Claude Desktop dan Cursor, menunjukkan betapa mudahnya mengambil data game. Bayangkan menskalakan ini untuk menangani kueri kompleks atau menghubungkan ke database nyata—kemungkinan tak terbatas!
Kesimpulan
Dan itu saja! Anda telah belajar cara menyiapkan dan menggunakan SpringBoot MCP Server untuk menghadirkan akses data bertenaga AI ke aplikasi Anda. Mulai dari membuat proyek Spring Boot hingga menghubungkannya dengan Claude Desktop dan menguji kueri game, Anda sekarang siap membangun integrasi AI yang lebih cerdas. Coba tambahkan alat baru atau hubungkan database untuk mengembangkannya lebih lanjut.
Ingin platform terintegrasi, All-in-One untuk Tim Pengembang Anda bekerja sama dengan produktivitas maksimum?
Apidog memenuhi semua permintaan Anda, dan menggantikan Postman dengan harga yang jauh lebih terjangkau!