Hallo, Java-Enthusiasten! Möchten Sie Ihre KI-Projekte mit einem benutzerdefinierten Java MCP Server auf Hochtouren bringen? Das Model Context Protocol (MCP) ermöglicht es KI-Modellen wie Claude oder Cursor, mühelos auf Ihre Daten zuzugreifen, und mit dem Java SDK können Sie einen leichtgewichtigen Server erstellen, um dies zu ermöglichen. In diesem Tutorial erstellen wir einen Java MCP Server, um Präsentationsdaten mit KI-Assistenten zu teilen. Wir halten es unterhaltsam, gesprächig und anfängerfreundlich und führen Sie durch die Einrichtung, das Testen und die Erweiterung Ihres Servers. Lassen Sie uns eintauchen!
Möchten Sie eine integrierte All-in-One-Plattform, damit Ihr Entwicklerteam mit maximaler Produktivität zusammenarbeiten kann?
Apidog erfüllt all Ihre Anforderungen und ersetzt Postman zu einem viel günstigeren Preis!
Was ist ein Java MCP Server?
Ein **Java MCP Server** ist eine schlanke Java-Anwendung, die das Model Context Protocol (MCP) verwendet, um Daten für KI-Modelle bereitzustellen. Es ist, als würden Sie Ihrer KI einen VIP-Pass zu den Informationen Ihrer App geben – unsere wird Spieldaten teilen, aber Sie können sie für alles anpassen. Der Server verwendet das MCP Java SDK, um Tools zu erstellen, die KI-Assistenten aufrufen können, wie das Abrufen einer Liste von Spielen oder das Suchen nach einem Spiel anhand des Titels. Es ist perfekt, um Ihre Daten in KI-Clients zu integrieren, und es ist super einfach mit Spring Boot und Maven einzurichten.

Schritt-für-Schritt-Anleitung zur Erstellung eines Java MCP Servers
Voraussetzungen
Bevor wir beginnen, stellen Sie sicher, dass Sie Folgendes haben:
- Java 24: Herunterladen von oracle.com.
- Maven 3.8+: Installieren von maven.apache.org.
- IntelliJ IDEA: Erhalten Sie es von jetbrains.com (oder Ihrer bevorzugten IDE).
- Node.js: Zum Testen mit MCP Inspector (nodejs.org).
- Claude Desktop oder Cursor: Optional, zur KI-Integration (anthropic.com oder cursor.sh).
Schritt 1: Projekt erstellen oder klonen
Sie können entweder ein bestehendes Repository klonen oder ein Projekt von Grund auf neu erstellen.
Option 1: Repository klonen (Empfohlen)
1. Öffnen Sie ein neues Terminal und führen Sie aus:
git clone https://github.com/danvega/javaone-mcp.git
cd javaone-mcp
2. Projekt erstellen:
- Verwenden Sie Maven, um eine ausführbare JAR-Datei zu erstellen:
mvn clean package
- Finden Sie die JAR-Datei in
target/javaone-mcp-0.0.2.jar
.

Option 2: Von Grund auf neu erstellen
1. Öffnen Sie IntelliJ IDEA:
- Wählen Sie Neues Projekt.
- Wählen Sie Maven als Build-System.
- Legen Sie den Projektnamen fest (z. B.
java-mcp-server
) und klicken Sie auf Erstellen.

2. Abhängigkeiten hinzufügen:
- Öffnen Sie
pom.xml
und fügen Sie hinzu:
<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>
Schritt 2: Die Projektstruktur verstehen
Der soeben geklonte Java MCP Server beinhaltet:
- Application.java: Der Haupteinstiegspunkt, der den MCP-Server startet.
- Presentation.java: Ein Datenmodell für Spieldaten (wir werden es für Spiele anpassen).
- PresentationTools.java: Definiert MCP-Tools für den Zugriff auf Spieldaten.
- Konfiguration: Verwendet STDIO-Transport für die KI-Kommunikation.

Schritt 3: Das Datenmodell definieren
Erstellen Sie Presentation.java
, um Spieldaten darzustellen:
public record Presentation(String title, String url) { }
Dieser Datensatz enthält Spieldetails wie Titel (z. B. „GTA 6“) und URL.
Schritt 4: MCP-Tools implementieren
Definieren Sie in PresentationTools.java
Tools mithilfe des 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);
}
}
Diese Tools ermöglichen es KI-Modellen, alle Spiele oder ein bestimmtes Spiel nach Titel abzurufen.
Schritt 5: Den MCP-Server konfigurieren und starten
Richten Sie in Application.java
den Java MCP Server ein:
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();
}
}
Dies konfiguriert den Server zur Verwendung des STDIO-Transports und registriert das get_presentations
-Tool.
Schritt 6: Den Java MCP Server ausführen
1. Projekt erstellen:
- Ausführen:
mvn clean package

2. Server starten:
- Führen Sie die JAR-Datei aus:
java -jar target/javaone-mcp-0.0.2.jar
- Der Server läuft mit STDIO-Transport, bereit für die KI-Integration.
Schritt 7: Mit MCP Inspector testen
Verwenden Sie den MCP Inspector, um Ihren Java MCP Server zu debuggen:
Node.js installieren: Bei Bedarf von nodejs.org herunterladen.
JAR-Pfad abrufen:
- 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 ausführen:
- Verwenden Sie:
npx @modelcontextprotocol/inspector java -jar $FULL_PATH
- Im Inspector:
- Überprüfen Sie die Verbindung im Bereich **Verbindung**.
- Gehen Sie zum Tab **Tools**, wählen Sie
get_presentations
und sehen Sie sich die Antwort an (z. B. „GTA 6, FC 26, Call of Duty: Black Ops 7“). - Überwachen Sie Protokolle im Bereich **Benachrichtigungen**.
Schritt 8: Integration mit Claude Desktop oder Cursor
Verbinden Sie Ihren Java MCP Server mit einem KI-Client:
JAR-Pfad abrufen: Verwenden Sie den gleichen Befehl wie oben.
a. Claude Desktop konfigurieren:
- Öffnen Sie
claude_desktop_config.json
(macOS:~/Library/Application Support/Claude
, Windows:%APPDATA%\Claude
). - Hinzufügen:
{
"mcpServers": {
"javaone-mcp": {
"command": "java",
"args": ["-jar", "FULL_PATH"]
}
}
}
- Ersetzen Sie
FULL_PATH
durch Ihren JAR-Pfad.
b. Cursor konfigurieren:
- Gehen Sie zu **Einstellungen > Cursor-Einstellungen > Tools und Integrationen > Neuer MCP Server**.
- Fügen Sie die gleiche Konfiguration hinzu und speichern Sie.
Client neu starten: Schließen Sie Claude oder Cursor und öffnen Sie sie erneut.
Schritt 9: Den Java MCP Server testen
Testen Sie mit Claude Desktop oder Cursor:
Server starten:
- Ausführen:
java -jar target/javaone-mcp-0.0.2.jar
Einen Befehl ausgeben:
- Geben Sie in Claude oder Cursor ein:
Using the MCP server, get all available games.
- Erwartete Antwort:
The available games are GTA 6, FC 26, and Call of Duty: Black Ops 7.

Schritt 10: Den Java MCP Server erweitern
Machen Sie Ihren Server noch cooler:
1. Weitere Präsentationen hinzufügen:
- Fügen Sie in
PresentationTools.java
dem Konstruktor hinzu:
presentations.add(new Presentation("Spring Boot 3.5 Deep Dive", "https://example.com/spring-boot", 2025));
2. Ein Such-Tool erstellen:
- Fügen Sie zu
PresentationTools.java
hinzu:
@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());
}
- Registrieren Sie in
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();
Ich habe meinen MCP-Server angepasst, um mit Spieldaten zu arbeiten. Und hier sind meine Ergebnisse:

Eine Suche versuchen:
- Ich habe ein
search_games
-Tool hinzugefügt (siehe unten) und die folgende Eingabeaufforderung ausprobiert:
Search for a game titled "FC".
- Erwartete Antwort:
You have a game titled FC 26.

3. Erweiterte Funktionen:
- Fügen Sie Ressourcenabonnements für Echtzeit-Updates hinzu.
- Implementieren Sie asynchrone Tools für komplexe Aufgaben.
- Fügen Sie Authentifizierung für sicheren Zugriff hinzu.
Tipps zur Fehlerbehebung
- Server startet nicht? Überprüfen Sie, ob Java 24 und Maven installiert sind, und prüfen Sie
pom.xml
auf korrekte Abhängigkeiten. - Probleme mit MCP Inspector? Stellen Sie sicher, dass Node.js installiert und der JAR-Pfad korrekt ist.
- Client verbindet sich nicht? Bestätigen Sie den JAR-Pfad in der Client-Konfiguration und starten Sie den Client neu.
- Keine Daten zurückgegeben? Überprüfen Sie
PresentationTools
auf korrekte Tool-Annotationen und Dateninitialisierung.
Warum den Java MCP Server verwenden?
Der Java MCP Server ist eine fantastische Möglichkeit, Ihre Java-App mit KI-Modellen zu verbinden, sodass diese in Echtzeit auf Ihre Daten zugreifen können. Unser auf Spiele ausgerichteter Server zeigte, wie einfach es ist, Daten wie „GTA 6“ oder „FC 26“ mit Claude oder Cursor zu teilen. Das MCP Java SDK macht es einfach, Tools zu definieren, und der STDIO-Transport hält die Dinge leichtgewichtig. Egal, ob Sie für Spiele, Kurse oder etwas anderes entwickeln, dieser Server ist Ihr Ticket zur KI-Integration.
Fazit
Sie sind jetzt ein Java MCP Server Profi! Sie haben einen Server von Grund auf neu erstellt, ihn mit Spieldaten getestet und gelernt, wie Sie ihn mit neuen Tools erweitern können. Das MCP Java SDK macht es zum Kinderspiel, Ihre App mit KI-Assistenten zu verbinden, und unser Test hat gezeigt, dass es funktioniert. Versuchen Sie, weitere Daten oder Tools hinzuzufügen, um Ihren Server noch leistungsfähiger zu machen.
Möchten Sie eine integrierte All-in-One-Plattform, damit Ihr Entwicklerteam mit maximaler Produktivität zusammenarbeiten kann?
Apidog erfüllt all Ihre Anforderungen und ersetzt Postman zu einem viel günstigeren Preis!