สวัสดีครับ ผู้ที่ชื่นชอบ Java ทุกท่าน! คุณต้องการยกระดับโปรเจกต์ AI ของคุณด้วย Java MCP Server แบบกำหนดเองหรือไม่? Model Context Protocol (MCP) ช่วยให้โมเดล AI เช่น Claude หรือ Cursor สามารถเข้าถึงข้อมูลของคุณได้อย่างง่ายดาย และด้วย Java SDK คุณสามารถสร้างเซิร์ฟเวอร์ขนาดเล็กเพื่อทำให้สิ่งนี้เกิดขึ้นได้ ในบทช่วยสอนนี้ เราจะสร้าง Java MCP Server เพื่อแชร์ข้อมูลการนำเสนอให้กับผู้ช่วย AI เราจะทำให้มันสนุก เป็นกันเอง และเหมาะสำหรับผู้เริ่มต้น โดยจะพาคุณไปดูการตั้งค่า การทดสอบ และการขยายเซิร์ฟเวอร์ของคุณ มาเริ่มกันเลย!
ต้องการแพลตฟอร์มแบบ All-in-One ที่รวมทุกอย่างเข้าด้วยกัน เพื่อให้ทีมพัฒนาของคุณทำงานร่วมกันได้อย่างมี ประสิทธิภาพสูงสุด หรือไม่?
Apidog ตอบสนองทุกความต้องการของคุณ และ มาแทนที่ Postman ในราคาที่ย่อมเยากว่ามาก!
Java MCP Server คืออะไร?
Java MCP Server คือแอปพลิเคชัน Java ที่ทันสมัย ซึ่งใช้ Model Context Protocol (MCP) ในการเปิดเผยข้อมูลให้กับโมเดล AI มันเหมือนกับการมอบบัตร VIP ให้ AI ของคุณเข้าถึงข้อมูลแอปฯ ของคุณได้—ของเราจะแชร์ข้อมูลเกม แต่คุณสามารถปรับแต่งให้เป็นอะไรก็ได้ เซิร์ฟเวอร์นี้ใช้ MCP Java SDK เพื่อสร้างเครื่องมือที่ผู้ช่วย AI สามารถเรียกใช้ได้ เช่น การดึงรายการเกม หรือการค้นหาเกมตามชื่อ มันสมบูรณ์แบบสำหรับการรวมข้อมูลของคุณเข้ากับไคลเอนต์ AI และง่ายมากในการตั้งค่าด้วย Spring Boot และ Maven

คู่มือการสร้าง Java MCP Server ทีละขั้นตอน
ข้อกำหนดเบื้องต้น
ก่อนที่เราจะเริ่ม ตรวจสอบให้แน่ใจว่าคุณมีสิ่งเหล่านี้:
- Java 24: ดาวน์โหลดจาก oracle.com.
- Maven 3.8+: ติดตั้งจาก maven.apache.org.
- IntelliJ IDEA: รับได้จาก jetbrains.com (หรือ IDE ที่คุณต้องการ).
- Node.js: สำหรับการทดสอบด้วย MCP Inspector (nodejs.org).
- Claude Desktop หรือ Cursor: ทางเลือกเสริม สำหรับการรวม AI (anthropic.com หรือ cursor.sh).
ขั้นตอนที่ 1: สร้างหรือโคลนโปรเจกต์
คุณสามารถโคลน repo ที่มีอยู่ หรือสร้างโปรเจกต์ใหม่ตั้งแต่ต้นก็ได้
ตัวเลือกที่ 1: โคลน Repository (แนะนำ)
1. ในเทอร์มินัลใหม่ รันคำสั่ง:
git clone https://github.com/danvega/javaone-mcp.git
cd javaone-mcp
2. สร้างโปรเจกต์:
- ใช้ Maven เพื่อสร้างไฟล์ JAR ที่สามารถรันได้:
mvn clean package
- ค้นหาไฟล์ JAR ได้ที่
target/javaone-mcp-0.0.2.jar.

ตัวเลือกที่ 2: สร้างตั้งแต่ต้น
1. เปิด IntelliJ IDEA:
- เลือก New Project.
- เลือก Maven เป็นระบบ build.
- ตั้งชื่อโปรเจกต์ (เช่น
java-mcp-server) แล้วคลิก Create.

2. เพิ่ม Dependencies:
- เปิด
pom.xmlแล้วเพิ่ม:
<dependencies>
<!-- MCP SDK -->
<dependency>
<groupId>io.modelcontextprotocol.sdk</groupId>
<artifactId>mcp</artifactId>
<version>0.9.0</version>
</dependency>
<!-- Logging -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>2.0.16</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.16</version>
</dependency>
</dependencies>
ขั้นตอนที่ 2: ทำความเข้าใจโครงสร้างโปรเจกต์
Java MCP Server ที่เราโคลนมานั้นประกอบด้วย:
- Application.java: จุดเริ่มต้นหลักที่ใช้ในการรันเซิร์ฟเวอร์ MCP.
- Presentation.java: โมเดลข้อมูลสำหรับข้อมูลเกม (เราจะปรับแต่งสำหรับเกม).
- PresentationTools.java: กำหนดเครื่องมือ MCP สำหรับการเข้าถึงข้อมูลเกม.
- Configuration: ใช้ STDIO transport สำหรับการสื่อสารกับ AI.

ขั้นตอนที่ 3: กำหนด Data Model
สร้าง Presentation.java เพื่อแสดงข้อมูลเกม:
public record Presentation(String title, String url) { }
record นี้จะเก็บรายละเอียดเกม เช่น ชื่อ (ตัวอย่าง: “GTA 6”) และ URL.
ขั้นตอนที่ 4: พัฒนา MCP Tools
ใน PresentationTools.java กำหนดเครื่องมือโดยใช้ MCP SDK:
import io.modelcontextprotocol.sdk.McpSchema;
import java.util.ArrayList;
import java.util.List;
public class PresentationTools {
private final List<Presentation> presentations = new ArrayList<>();
public PresentationTools() {
presentations.add(new Presentation("GTA 6", "https://example.com/gta6"));
presentations.add(new Presentation("FC 26", "https://example.com/fc26"));
presentations.add(new Presentation("Call of Duty: Black Ops 7", "https://example.com/codbo7"));
}
@McpSchema.Tool(name = "get_presentations", description = "Returns a list of all available games")
public List<Presentation> getPresentations() {
return presentations;
}
@McpSchema.Tool(name = "get_game", description = "Returns a specific game by title")
public Presentation getGame(String title) {
return presentations.stream()
.filter(p -> p.title().equalsIgnoreCase(title))
.findFirst()
.orElse(null);
}
}
เครื่องมือเหล่านี้ช่วยให้โมเดล AI สามารถดึงข้อมูลเกมทั้งหมด หรือเกมเฉพาะเจาะจงตามชื่อได้
ขั้นตอนที่ 5: กำหนดค่าและเริ่มต้น MCP Server
ใน Application.java ตั้งค่า Java MCP Server:
import io.modelcontextprotocol.sdk.McpServer;
import io.modelcontextprotocol.sdk.McpSchema;
import io.modelcontextprotocol.sdk.McpSyncServer;
public class Application {
public static void main(String[] args) {
PresentationTools tools = new PresentationTools();
var syncToolSpecification = new McpServerFeatures.SyncToolSpecification(
new McpSchema.Tool("get_presentations", "Returns a list of all available games", null),
(exchange, arguments) -> tools.getPresentations()
);
McpSyncServer syncServer = McpServer.sync(new StdioTransportProvider())
.serverInfo("javaone-mcp-server", "0.0.1")
.capabilities(McpSchema.ServerCapabilities.builder()
.tools(true)
.logging()
.build())
.tools(syncToolSpecification)
.build();
syncServer.start();
}
}
นี่เป็นการตั้งค่าเซิร์ฟเวอร์ให้ใช้ STDIO transport และลงทะเบียนเครื่องมือ get_presentations
ขั้นตอนที่ 6: รัน Java MCP Server
1. สร้างโปรเจกต์:
- รันคำสั่ง:
mvn clean package

2. เริ่มเซิร์ฟเวอร์:
- รันไฟล์ JAR:
java -jar target/javaone-mcp-0.0.2.jar
- เซิร์ฟเวอร์จะรันด้วย STDIO transport พร้อมสำหรับการรวมกับ AI.
ขั้นตอนที่ 7: ทดสอบด้วย MCP Inspector
ใช้ MCP Inspector เพื่อดีบัก Java MCP Server ของคุณ:
ติดตั้ง Node.js: ดาวน์โหลดจาก nodejs.org หากจำเป็น.
รับพาธของ JAR:
- Linux/macOS:
FULL_PATH=$(pwd)/target/javaone-mcp-0.0.2.jar
echo $FULL_PATH
- Windows PowerShell:
$FULL_PATH="$(Get-Location)\target\javaone-mcp-0.0.2.jar"
echo $FULL_PATH
รัน MCP Inspector:
- ใช้คำสั่ง:
npx @modelcontextprotocol/inspector java -jar $FULL_PATH
- ใน Inspector:
- ตรวจสอบการเชื่อมต่อในส่วน Connection.
- ไปที่แท็บ Tools เลือก
get_presentationsและดูผลลัพธ์ (ตัวอย่าง: “GTA 6, FC 26, Call of Duty: Black Ops 7”). - ตรวจสอบบันทึกในส่วน Notifications.
ขั้นตอนที่ 8: ผสานรวมกับ Claude Desktop หรือ Cursor
เชื่อมต่อ Java MCP Server ของคุณเข้ากับไคลเอนต์ AI:
รับพาธของ JAR: ใช้คำสั่งเดียวกับด้านบน.
ก. กำหนดค่า Claude Desktop:
- เปิด
claude_desktop_config.json(macOS:~/Library/Application Support/Claude, Windows:%APPDATA%\Claude). - เพิ่ม:
{
"mcpServers": {
"javaone-mcp": {
"command": "java",
"args": ["-jar", "FULL_PATH"]
}
}
}
- แทนที่
FULL_PATHด้วยพาธ JAR ของคุณ.
ข. กำหนดค่า Cursor:
- ไปที่ Settings > Cursor Settings > Tools and Integrations > New MCP Server.
- เพิ่มการตั้งค่าเดียวกันแล้วบันทึก.
รีสตาร์ทไคลเอนต์: ปิดแล้วเปิด Claude หรือ Cursor ใหม่.
ขั้นตอนที่ 9: ทดสอบ Java MCP Server
ทดสอบด้วย Claude Desktop หรือ Cursor:
เริ่มเซิร์ฟเวอร์:
- รันคำสั่ง:
java -jar target/javaone-mcp-0.0.2.jar
ออกคำสั่ง:
- ใน Claude หรือ Cursor พิมพ์:
Using the MCP server, get all available games.
- ผลลัพธ์ที่คาดหวัง:
The available games are GTA 6, FC 26, and Call of Duty: Black Ops 7.

ขั้นตอนที่ 10: ขยาย Java MCP Server
ทำให้เซิร์ฟเวอร์ของคุณเจ๋งยิ่งขึ้นไปอีก:
1. เพิ่มการนำเสนอเพิ่มเติม:
- ใน
PresentationTools.javaเพิ่มโค้ดลงใน constructor:
presentations.add(new Presentation("Spring Boot 3.5 Deep Dive", "https://example.com/spring-boot", 2025));
2. สร้างเครื่องมือค้นหา:
- เพิ่มโค้ดลงใน
PresentationTools.java:
@McpSchema.Tool(name = "search_presentations", description = "Search presentations by title")
public List<Presentation> searchPresentations(String query) {
return presentations.stream()
.filter(p -> p.title().toLowerCase().contains(query.toLowerCase()))
.collect(Collectors.toList());
}
- ลงทะเบียนใน
Application.java:
var searchToolSpec = new McpServerFeatures.SyncToolSpecification(
new McpSchema.Tool("search_presentations", "Search presentations by title", null),
(exchange, arguments) -> {
String query = arguments.get("query").asText();
return tools.searchPresentations(query);
}
);
McpSyncServer syncServer = McpServer.sync(new StdioTransportProvider())
.serverInfo("javaone-mcp-server", "0.0.1")
.capabilities(McpSchema.ServerCapabilities.builder().tools(true).logging().build())
.tools(syncToolSpecification, searchToolSpec)
.build();
ฉันได้ปรับแต่ง MCP Server ของฉันให้ทำงานกับข้อมูลเกม และนี่คือผลลัพธ์ที่ได้:

ลองค้นหา:
- ฉันได้เพิ่มเครื่องมือ
search_games(ดูด้านล่าง) และลองใช้คำสั่งต่อไปนี้:
Search for a game titled "FC".
- ผลลัพธ์ที่คาดหวัง:
You have a game titled FC 26.

3. คุณสมบัติขั้นสูง:
- เพิ่มการสมัครสมาชิกทรัพยากรสำหรับการอัปเดตแบบเรียลไทม์.
- ใช้เครื่องมือแบบอะซิงโครนัสสำหรับงานที่ซับซ้อน.
- เพิ่มการยืนยันตัวตนเพื่อการเข้าถึงที่ปลอดภัย.
เคล็ดลับการแก้ไขปัญหา
- เซิร์ฟเวอร์ไม่เริ่มทำงาน? ตรวจสอบว่าได้ติดตั้ง Java 24 และ Maven แล้ว และตรวจสอบ
pom.xmlสำหรับ dependencies ที่ถูกต้อง. - ปัญหา MCP Inspector? ตรวจสอบให้แน่ใจว่าติดตั้ง Node.js แล้วและพาธ JAR ถูกต้อง.
- ไคลเอนต์ไม่เชื่อมต่อ? ยืนยันพาธ JAR ในการตั้งค่าไคลเอนต์และรีสตาร์ทไคลเอนต์.
- ไม่ได้รับข้อมูลคืน? ตรวจสอบ
PresentationToolsสำหรับ tool annotations และการเริ่มต้นข้อมูลที่ถูกต้อง.
ทำไมต้องใช้ Java MCP Server?
Java MCP Server เป็นวิธีที่ยอดเยี่ยมในการเชื่อมต่อแอป Java ของคุณเข้ากับโมเดล AI ทำให้พวกมันสามารถเข้าถึงข้อมูลของคุณได้แบบเรียลไทม์ เซิร์ฟเวอร์ธีมเกมของเราแสดงให้เห็นว่าการแชร์ข้อมูลอย่าง “GTA 6” หรือ “FC 26” กับ Claude หรือ Cursor นั้นง่ายดายเพียงใด MCP Java SDK ทำให้การกำหนดเครื่องมือง่ายขึ้น และ STDIO transport ก็ช่วยให้ทุกอย่างเบาบาง ไม่ว่าคุณจะสร้างสำหรับเกม คอร์สเรียน หรือสิ่งอื่นใด เซิร์ฟเวอร์นี้คือตั๋วของคุณสู่การผสานรวม AI
บทสรุป
ตอนนี้คุณเป็นมืออาชีพด้าน Java MCP Server แล้ว! คุณได้สร้างเซิร์ฟเวอร์ตั้งแต่ต้น ทดสอบด้วยข้อมูลเกม และเรียนรู้วิธีการขยายมันด้วยเครื่องมือใหม่ๆ MCP Java SDK ทำให้การเชื่อมต่อแอปของคุณกับผู้ช่วย AI เป็นเรื่องง่าย และการทดสอบของเราก็แสดงให้เห็นถึงประสิทธิภาพของมัน ลองเพิ่มข้อมูลหรือเครื่องมือเพิ่มเติมเพื่อให้เซิร์ฟเวอร์ของคุณทรงพลังยิ่งขึ้น
ต้องการแพลตฟอร์มแบบ All-in-One ที่รวมทุกอย่างเข้าด้วยกัน เพื่อให้ทีมพัฒนาของคุณทำงานร่วมกันได้อย่างมี ประสิทธิภาพสูงสุด หรือไม่?
Apidog ตอบสนองทุกความต้องการของคุณ และ มาแทนที่ Postman ในราคาที่ย่อมเยากว่ามาก!
