Cara Menggunakan Server SpringBoot MCP

Ashley Goolam

Ashley Goolam

31 July 2025

Cara Menggunakan Server SpringBoot MCP

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 alat Pengujian API hebat yang menghasilkan Dokumentasi API yang indah?

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!
tombol

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:

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!

spring boot

Bagaimana Cara Menggunakan SpringBoot MCP Server

Prasyarat

Sebelum kita mulai, pastikan Anda memiliki:

Langkah 1: Buat Proyek Spring Boot Baru

Kunjungi Spring Initializr:

spring initializr

Buka di IntelliJ IDEA:

Langkah 2: Pahami Struktur Proyek

SpringBoot MCP Server Anda mencakup komponen-komponen kunci:

struktur proyek

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:

mvn spring-boot:run

Verifikasi Alat:

Langkah 7: Hubungkan ke Cursor atau Claude Desktop

Untuk menggunakan SpringBoot MCP Server dengan Claude Desktop:

Kompilasi Proyek:

mvn clean package
folder target dengan file jar

A. Konfigurasi Claude Desktop:

{
  "mcpServers": {
    "game-demo-mcp": {
      "command": "java",
      "args": [
        "-jar",
        "path/to/test-mcp-server-0.0.1-SNAPSHOT.jar"
      ]
    }
  }
}
edit konfigurasi claude

Mulai Ulang Claude Desktop:

B. Konfigurasi Cursor:

  1. Navigasikan ke Pengaturan, lalu Pengaturan Cursor
  2. Pilih Alat dan Integrasi
  3. Klik server MCP Baru
edit konfigurasi mcp kursor

Langkah 8: Uji SpringBoot MCP Server

Mari kita uji server dengan Claude Desktop:

Buka Claude Desktop atau Cursor dan Berikan Perintah:

Menggunakan server MCP, dapatkan semua game yang tersedia.
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
menguji server mcp

Coba Game Spesifik:

Menggunakan server MCP, dapatkan game dengan judul "FC 26".
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:

@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());
}

Tips Pemecahan Masalah

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 alat Pengujian API hebat yang menghasilkan Dokumentasi API yang indah?

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!
tombol

Mengembangkan API dengan Apidog

Apidog adalah alat pengembangan API yang membantu Anda mengembangkan API dengan lebih mudah dan efisien.