This will provide learning experience of running your own MCP Server
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"book-service": {
"env": {},
"args": [
"-jar",
"target/book-service-1.0.0.jar",
"--mcp"
],
"command": "java"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
A Spring Boot application that demonstrates Model Context Protocol (MCP) server implementation with book and author management functionality. This application can run in two modes: 1. Web Application Mode: Traditional REST API server 2. MCP Server Mode: Model Context Protocol server for AI tool integration
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y '@modelcontextprotocol/inspector' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
MCP Inspector is Vulnerable to Potential Command Execution via XSS When Connecting to an Untrusted MCP Server
An XSS flaw exists in the MCP Inspector local development tool when it renders a redirect URL returned by a remote MCP server. If the Inspector connects to an untrusted server, a crafted redirect can inject script into the Inspector context and, via the built-in proxy, be leveraged to trigger arbitrary command execution on the developer machine. Version 0.16.6 hardens URL handling/validation and prevents script execution. > Thank you to the following researchers for their reports and contributi
MCP Inspector proxy server lacks authentication between the Inspector client and proxy
Versions of MCP Inspector below 0.14.1 are vulnerable to remote code execution due to lack of authentication between the Inspector client and proxy, allowing unauthenticated requests to launch MCP commands over stdio. Users should immediately upgrade to version 0.14.1 or later to address these vulnerabilities. Credit: Rémy Marot <bughunters@tenable.com>
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in education / developer-tools
A Model Context Protocol (MCP) server and CLI that provides tools for agent use when working on iOS and macOS projects.
Workspace template + MCP server for Claude Code, Codex CLI, Cursor & Windsurf. Multi-agent knowledge engine (ag-refresh / ag-ask) that turns any codebase into a queryable AI assistant.
MCP server for accessing Figma plugin console logs and screenshots via Cloudflare Workers or local mode
MCP server for using the GitLab API
MCP Security Weekly
Get CVE alerts and security updates for Bookservice Mcp Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
A Spring Boot application that demonstrates Model Context Protocol (MCP) server implementation with book and author management functionality. This application can run in two modes:
book-service/
├── src/main/java/com/example/bookservice/
│ ├── BookServiceApplication.java # Main application class
│ ├── controller/
│ │ ├── BookController.java # REST endpoints for books
│ │ └── AuthorController.java # REST endpoints for authors
│ ├── mcp/
│ │ ├── McpServer.java # MCP server implementation
│ │ └── McpTool.java # MCP tool definitions
│ └── model/
│ ├── Book.java # Book entity
│ └── Author.java # Author entity
├── pom.xml # Maven configuration
├── test_mcp.sh # MCP server test script
└── test_mcp_simple.json # Sample MCP request
mvn clean compile
mvn clean package
This will create an executable JAR file at target/book-service-1.0.0.jar.
mvn clean package -DskipTests
Start as a traditional Spring Boot web application with REST endpoints:
java -jar target/book-service-1.0.0.jar
The web application will be available at:
Start as an MCP server for AI tool integration:
java -jar target/book-service-1.0.0.jar --mcp
The MCP server will:
Run the provided test script to validate basic MCP functionality:
chmod +x test_mcp.sh
./test_mcp.sh
This script tests:
echo '{"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {}}' | java -jar target/book-service-1.0.0.jar --mcp
echo '{"jsonrpc": "2.0", "id": 2, "method": "tools/list", "params": {}}' | java -jar target/book-service-1.0.0.jar --mcp
echo '{"jsonrpc": "2.0", "id": 3, "method": "tools/call", "params": {"name": "get_all_books", "arguments": {}}}' | java -jar target/book-service-1.0.0.jar --mcp
echo '{"jsonrpc": "2.0", "id": 4, "method": "tools/call", "params": {"name": "get_book_by_id", "arguments": {"id": "1"}}}' | java -jar target/book-service-1.0.0.jar --mcp
If you have the MCP Inspector installed, you can use it to validate and interact with the MCP server:
npm install -g @modelcontextprotocol/inspector
Create a configuration file mcp-config.json:
{
"mcpServers": {
"book-service": {
"command": "java",
"args": ["-jar", "target/book-service-1.0.0.jar", "--mcp"],
"env": {}
}
}
}
mcp-inspector --config mcp-config.json
Open your browser and navigate