About Spring Java
Spring Java is an MCP server published by mtwn105 in the Developer Tools category: mCP Server using Spring Boot Java.
The repository has 6 stars and 6 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/mtwn105/mcp-server-spring-javaThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (7)
addUserAdd a new user
Parameters not published.
deleteUserDelete a user
Parameters not published.
getAllUsersGet all users with pagination
Parameters not published.
getAllUsersDefaultGet all users with default pagination
Parameters not published.
getUserByIdGet a single user by ID
Parameters not published.
searchUsersSearch for users by query
Parameters not published.
updateUserUpdate a user
Parameters not published.
Ask AI
Ask AI about Spring Java
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
MCP Server using Spring Boot Java
A Model Context Protocol (MCP) server implementation built with Spring Boot and Java 21. This project demonstrates how to create an MCP server that provides user management tools for AI assistants.
Features
- Implements MCP server functionality using Spring AI
- Exposes user management tools via MCP
- Synchronous communication mode
- Support for Standard I/O and Server-Sent Events transports
- Integrates with DummyJSON external API for user data
Technologies
- Java 21
- Spring Boot 3.4.3
- Spring AI (Model Context Protocol)
- Project Lombok
- Maven
Getting Started
Prerequisites
- Java 21 or higher
- Maven
Installation
- Clone the repository
git clone https://github.com/yourusername/mcp-spring-java.git
cd mcp-spring-java
- Build the project
mvn clean package
- Run the application
java -jar target/mcp-spring-java-0.0.1-SNAPSHOT.jar
Configuration
The MCP server is configured in application.yml:
- Server runs on port 8090
- Server name: my-dummy-users-server
- Synchronous communication mode
- Supports STDIO transport for terminal-based communication
- Exposes
/mcp/messageendpoint for SSE communication
Available Tools
The server exposes the following user management tools:
getAllUsers- Get all users with paginationgetAllUsersDefault- Get all users with default paginationgetUserById- Get a single user by IDsearchUsers- Search for users by queryaddUser- Add a new userupdateUser- Update a userdeleteUser- Delete a user
Testing with Postman
You can use Postman to test the MCP server endpoints:
-
Start the MCP server
-
Open Postman and create a new request:
- Method: POST
- URL: http://localhost:8090/mcp/message
- Headers:
- Content-Type: application/json
- Accept: application/json
-
For the request body, use the following JSON format to invoke any of the available tools:
{
"message": {
"toolCalls": [
{
"id": "call-123",
"name": "[TOOL_NAME]",
"parameters": {
"[PARAMETER_NAME]": "[PARAMETER_VALUE]"
}
}
]
}
}
Example Requests
Get All Users (Default Pagination)
{
"message": {
"toolCalls": [
{
"id": "call-123",
"name": "getAllUsersDefault",
"parameters": {}
}
]
}
}
Get User by ID
{
"message": {
"toolCalls": [
{
"id": "call-123",
"name": "getUserById",
"parameters": {
"id": 1
}
}
]
}
}
Search Users
{
"message": {
"toolCalls": [
{
"id": "call-123",
"name": "searchUsers",
"parameters": {
"query": "John"
}
}
]
}
}
The response will contain a JSON object with the results from the tool execution.
Usage with MCP Clients
You can configure this server in MCP client applications using the following configuration:
{
"mcpServers": {
"dummy-user-server": {
"command": "java",
"args": [
"-Dspring.ai.mcp.server.stdio=true",
"-Dspring.main.web-application-type=none",
"-Dlogging.pattern.console=",
"-jar",
"path/to/mcp-spring-java-0.0.1-SNAPSHOT.jar"
]
}
}
}
License
This project is licensed under the terms provided in the LICENSE file.
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.