MCP服务器

一个基于Java和Spring Boot构建的轻量级MCP(Model-Context Protocol)服务器,为兼容MCP的AI工具提供可查询的内存书籍目录服务。

  • by daniellaera
  • Java
  • 本地部署
  • 更新于
在 GitHub 查看 daniellaera/spring-mcp-server

使用说明

🚢 带Spring Boot的MCP服务器· dan-laera-mcpserver

使用Java和Spring Boot构建的轻量级MCP(模型上下文协议)服务器,使用官方 spring-ai-starter-mcp-server 附属国。该应用程序为任何与MCP兼容的AI工具(如Claude、Cursor、Warp或IntelliJ)提供了一个完全可查询的内存图书目录。

无滞留层,无绒毛。只需干净的代码、工具注释和boom——数据就可以提供给你的AI代理。


🧠 What Is MCP?

MCP(模型上下文协议)是一个开放标准(由Anthropic率先提出),允许AI模型和工具使用简单的结构化协议(通常是STDIO上的JSON-RPC)与外部数据、API、工具和内存进行交互。
该项目作为一个独立的 MCP服务器,向支持MCP的任何主机提供图书数据和推荐逻辑。


⚙️ 技术栈

  • ☕ Java 21+
  • 🧰 Spring Boot
  • 📦 org.springframework.ai:spring-ai-starter-mcp-server
  • 🧠 MCP兼容的AI工具(Claude、Warp、Cursor等)

📚 特性

工具名称 描述
dl_get_books 获取所有可用书籍
dl_get_book_by_title 按标题搜索书籍
dl_get_books_by_author 列出特定作者的所有书籍
dl_get_books_by_genre 按类型筛选书籍
dl_get_books_by_rating 获取评级高于给定阈值的书籍
dl_get_best_rated_books 排名前N的书籍(默认值:5)
dl_get_available_books 只有当前标记为可用的退货书籍
dl_search_books 全文搜索标题、作者、描述、标签
dl_get_book_recommendations 基于类型、评级和标签相似性的智能推荐

所有工具均暴露在外 @Tool 注释,并通过自动注册 ToolCallbacks.


🛠️ 运作原理

  • 预加载列表 Book 记录(Java record DTO)
  • 没有JPA/数据库--完全在内存中
  • 在应用程序启动时 LibraryService 在Spring AI MCP服务器上注册所有工具方法
  • 当应用程序打印时 {"type":"mcp","status":"ready"} 向 stderr,它已经准备好发球了
  • AI客户端(例如Warp或Cursor中的Claude)可以调用任何工具

🚀 运行服务器

# Package the app
./mvnw clean package

# Run the MCP server
java -jar target/mcp-server-0.0.1-SNAPSHOT.jar```