Hướng Dẫn Sử Dụng SpringBoot MCP Server

Ashley Goolam

Ashley Goolam

31 tháng 7 2025

Hướng Dẫn Sử Dụng SpringBoot MCP Server

Sẵn sàng làm cho các ứng dụng hỗ trợ AI của bạn thông minh hơn nữa? Hôm nay, chúng ta sẽ tìm hiểu về SpringBoot MCP Server, một công cụ tuyệt vời cho phép các mô hình AI như Claude hoặc Cursor tương tác với dữ liệu của bạn thông qua Giao thức Ngữ cảnh Mô hình (Model Context Protocol - MCP). Hãy tưởng tượng AI của bạn có thể lấy thông tin khóa học hoặc tìm kiếm dữ liệu cụ thể chỉ với vài lệnh—tất cả đều được hỗ trợ bởi một ứng dụng Spring Boot nhẹ nhàng. Trong hướng dẫn đàm thoại này, chúng tôi sẽ hướng dẫn bạn cách thiết lập và sử dụng SpringBoot MCP Server, kèm theo một bài kiểm tra để xem nó hoạt động như thế nào. Hãy bắt đầu lập trình nào!

💡
Bạn muốn một công cụ kiểm thử API tuyệt vời có thể tạo ra Tài liệu API đẹp mắt?

Bạn muốn một nền tảng tích hợp, tất cả trong một để Đội ngũ Phát triển của bạn làm việc cùng nhau với năng suất tối đa?

Apidog đáp ứng mọi yêu cầu của bạn và thay thế Postman với mức giá phải chăng hơn nhiều!
nút

SpringBoot MCP Server là gì?

SpringBoot MCP Server là một ứng dụng Spring Boot sử dụng framework Spring AI MCP để hiển thị dữ liệu của bạn dưới dạng các công cụ cho các mô hình AI. Nó giống như việc cung cấp cho AI của bạn một đường dây trực tiếp đến dữ liệu ứng dụng của bạn, chẳng hạn như chi tiết khóa học, thông qua các công cụ MCP được tiêu chuẩn hóa. Trong hướng dẫn này, chúng tôi sẽ tập trung vào một máy chủ cung cấp hai công cụ chính:

Thiết lập này hoàn hảo để tích hợp dữ liệu bên ngoài với các mô hình AI hoặc xây dựng các máy chủ MCP của riêng bạn. Ngoài ra, nó được xây dựng bằng Spring Boot, nên rất thân thiện với nhà phát triển và dễ mở rộng. Hào hứng chưa? Hãy cùng thiết lập nó nào!

spring boot

Cách sử dụng SpringBoot MCP Server

Điều kiện tiên quyết

Trước khi bắt đầu, hãy đảm bảo bạn có:

Bước 1: Tạo một dự án Spring Boot mới

Truy cập Spring Initializr:

spring initializr

Mở trong IntelliJ IDEA:

Bước 2: Hiểu cấu trúc dự án

SpringBoot MCP Server của bạn bao gồm các thành phần chính:

project structure

Dưới đây là một ví dụ về thiết lập 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=

Cấu hình này thiết lập ứng dụng như một máy chủ không web sử dụng giao thức truyền tải STDIO, hoàn hảo cho giao tiếp MCP.

Bước 3: Định nghĩa mô hình dữ liệu

Tạo một bản ghi Game.java đơn giản để đại diện cho dữ liệu khóa học:

package com.example.testmcpserver;

public record Game(String title, String url){
}

Bản ghi bất biến này chứa các chi tiết khóa học như tiêu đề và URL, giúp các mô hình AI dễ dàng xử lý.

Bước 4: Triển khai các công cụ MCP

Trong GameService.java, định nghĩa các công cụ bằng cách sử dụng chú thích @Tool. Dưới đây là một ví dụ:

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")
        ));
    }

}

Các công cụ này cho phép các mô hình AI truy xuất tất cả các khóa học hoặc tìm một khóa học cụ thể theo tiêu đề.

Bước 5: Đăng ký công cụ với Framework MCP

Trong TestMcpServerApplication.java, đăng ký các công cụ:

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

}

Phương thức ToolCallbacks.from() quét GameService để tìm các chú thích @Tool và đăng ký chúng với SpringBoot MCP Server.

Bước 6: Chạy SpringBoot MCP Server

Xây dựng và chạy:

mvn spring-boot:run

Xác minh công cụ:

Bước 7: Kết nối với Cursor hoặc Claude Desktop

Để sử dụng SpringBoot MCP Server với Claude Desktop:

Biên dịch dự án:

mvn clean package
target folder with jar file

A. Cấu hình Claude Desktop:

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

Khởi động lại Claude Desktop:

B. Cấu hình Cursor:

  1. Điều hướng đến Cài đặt, sau đó Cài đặt Cursor
  2. Chọn Công cụ và Tích hợp
  3. Nhấp vào Máy chủ MCP mới
edit cursor mcp configuration

Bước 8: Kiểm thử SpringBoot MCP Server

Hãy kiểm thử máy chủ với Claude Desktop:

Mở Claude Desktop hoặc Cursor và đưa ra một lệnh:

Sử dụng máy chủ MCP, lấy tất cả các trò chơi có sẵn.
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
testing the mcp server

Thử một trò chơi cụ thể:

Sử dụng máy chủ MCP, lấy trò chơi có tiêu đề "FC 26".
Game: FC 26, URL: https://www.ea.com/en/games/ea-sports-fc/fc-26

Điều này xác nhận SpringBoot MCP Server của bạn đang hoạt động!

Bước 9: Mở rộng SpringBoot MCP Server

Muốn làm cho nó tuyệt vời hơn nữa? Dưới đây là một số ý tưởng:

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

Mẹo khắc phục sự cố

Tại sao nên sử dụng SpringBoot MCP Server?

SpringBoot MCP Server là một giấc mơ đối với các nhà phát triển yêu thích sự đơn giản của Spring Boot và muốn tích hợp AI với dữ liệu của họ. Nó nhẹ, sử dụng STDIO để giao tiếp an toàn và cho phép các mô hình AI như Claude truy cập dữ liệu ứng dụng của bạn trong thời gian thực. Cho dù bạn đang xây dựng một nền tảng khóa học hay một ứng dụng dựa trên dữ liệu khác, máy chủ này giúp việc tích hợp AI trở nên dễ dàng.

Bài kiểm thử của chúng tôi với Claude Desktop và Cursor đã cho thấy việc lấy dữ liệu trò chơi dễ dàng như thế nào. Hãy tưởng tượng việc mở rộng nó để xử lý các truy vấn phức tạp hoặc kết nối với một cơ sở dữ liệu thực—khả năng là vô tận!

Kết luận

Và đó là tất cả! Bạn đã học cách thiết lập và sử dụng SpringBoot MCP Server để mang khả năng truy cập dữ liệu được hỗ trợ bởi AI vào các ứng dụng của mình. Từ việc tạo một dự án Spring Boot đến kết nối nó với Claude Desktop và kiểm thử các truy vấn khóa học, giờ đây bạn đã sẵn sàng xây dựng các tích hợp AI thông minh hơn. Hãy thử thêm các công cụ mới hoặc kết nối với cơ sở dữ liệu để phát triển nó hơn nữa.

💡
Bạn muốn một công cụ kiểm thử API tuyệt vời có thể tạo ra Tài liệu API đẹp mắt?

Bạn muốn một nền tảng tích hợp, tất cả trong một để Đội ngũ Phát triển của bạn làm việc cùng nhau với năng suất tối đa?

Apidog đáp ứng mọi yêu cầu của bạn và thay thế Postman với mức giá phải chăng hơn nhiều!
nút

Thực hành thiết kế API trong Apidog

Khám phá cách dễ dàng hơn để xây dựng và sử dụng API