NOTE: This project has been graduated and moved to the
为Model Context Protocol (MCP)提供的Java SDK,使得Java和Spring应用程序能够与符合MCP标准的AI模型和工具无缝集成。
注意: 此项目已毕业并迁移至 MCP Java SDK 和 Spring AI MCP。请移步新仓库!
简介
Model Context Protocol (MCP) Java SDK 使 Java 应用程序能够通过标准化接口与 AI 模型和工具进行交互,支持同步和异步通信模式。
快速安装
Maven 依赖
<!-- 核心 MCP -->
<dependency>
<groupId>org.springframework.experimental</groupId>
<artifactId>mcp</artifactId>
</dependency>
<!-- 可选:Spring AI 集成 -->
<dependency>
<groupId>org.springframework.experimental</groupId>
<artifactId>spring-ai-mcp</artifactId>
</dependency>
添加仓库
<repositories>
<repository>
<id>spring-milestones</id>
<url>https://repo.spring.io/milestone</url>
<snapshots><enabled>false</enabled></snapshots>
</repository>
</repositories>
主要功能
- MCP Java SDK: 提供同步和异步客户端/服务器实现
- 传输选项: 支持 Stdio 和 HTTP SSE 传输
- Spring 集成: 与 Spring AI 功能调用系统无缝集成
基本用法示例
客户端示例
McpClient mcpClient = McpClient.builder()
.transport(new HttpClientSseClientTransport("http://localhost:8080/mcp"))
.build();
// 工具发现
ResourceDto[] tools = mcpClient.discover().join();
// 提示请求
PromptResponseDto response = mcpClient.prompt(
PromptRequestDto.builder()
.prompt("使用employee_db工具查询所有员工")
.build()
).join();
服务器示例
McpServer mcpServer = McpServer.builder()
.transport(new HttpServletSseServerTransport("/mcp"))
.resource(new DatabaseTool("employee_db")) // 自定义工具
.build();
mcpServer.start();
了解更多
许可证
该项目根据 Apache License 2.0 许可。