模型上下文协议 (MCP)
模型上下文协议 (MCP) 是一种标准化协议,使 AI 模型能够以结构化的方式与外部工具和资源进行交互。它支持多种传输机制,可在不同环境中提供灵活性。
MCP Java SDK 提供了模型上下文协议的 Java 实现,通过同步和异步通信模式实现与 AI 模型和工具的标准化交互。
Spring AI MCP
将 MCP Java SDK 与 Spring Boot 集成,提供客户端和服务器端 Starter。使用 Spring Initializer 构建支持 MCP 的 AI 应用程序。
MCP Java SDK 0.8.0 中的重大变更 ⚠️ MCP Java SDK 0.8.0 版本引入了一些重大变更,包括新的基于会话的架构。如果您从 Java SDK 0.7.0 升级,请参阅迁移指南以获取详细说明。 |
MCP Java SDK 架构
本节概述了 MCP Java SDK 架构。有关 Spring AI MCP 集成,请参阅Spring AI MCP Boot Starters 文档。 |
Java MCP 实现遵循三层架构
|
MCP 客户端 | |
---|---|
MCP 客户端是模型上下文协议 (MCP) 架构中的一个关键组件,负责建立和管理与 MCP 服务器的连接。它实现了协议的客户端部分,处理
|
![]() |
MCP 服务器 | |
---|---|
MCP 服务器是模型上下文协议 (MCP) 架构中的基础组件,为客户端提供工具、资源和能力。它实现了协议的服务器端部分,负责
|
![]() |
有关使用底层 MCP 客户端/服务器 API 的详细实现指南,请参阅 MCP Java SDK 文档。有关使用 Spring Boot 的简化设置,请使用下面描述的 MCP Boot Starter。
Spring AI MCP 集成
Spring AI 通过以下 Spring Boot Starter 提供 MCP 集成
客户端 Starter
-
spring-ai-starter-mcp-client
- 提供 STDIO 和基于 HTTP 的 SSE 支持的核心 Starter -
spring-ai-starter-mcp-client-webflux
- 基于 WebFlux 的 SSE 传输实现
服务器端 Starter
-
spring-ai-starter-mcp-server
- 支持 STDIO 传输的核心服务器 -
spring-ai-starter-mcp-server-webmvc
- 基于 Spring MVC 的 SSE 传输实现 -
spring-ai-starter-mcp-server-webflux
- 基于 WebFlux 的 SSE 传输实现