Spring AI MCP是模型上下文协议 (MCP)的强大 Java SDK 实现。Spring AI 生态系统的这一新成员为 Java 平台带来了标准化的 AI 模型集成功能。
什么是MCP?
MCP 是一种开放协议,它标准化了应用程序向 LLM 提供上下文的方式。可以将 MCP 视为 AI 应用程序的 USB-C 端口。正如 USB-C 提供了一种将设备连接到各种外围设备和配件的标准化方式一样,MCP 提供了一种将 AI 模型连接到不同数据源和工具的标准化方式。
为什么选择 MCP?
MCP 可帮助您在 LLM 之上构建代理和复杂的工作流。LLM 通常需要与数据和工具集成,而 MCP 可提供:
- 您的 LLM 可以直接插入不断增加的预构建集成列表
- 在 LLM 提供商和供应商之间切换的灵活性
- 保护基础架构内数据的最佳实践
体架构
MCP 的核心是客户端-服务器架构,其中主机应用程序可以连接到多个服务器:
- MCP 主机:希望通过 MCP 访问数据的程序,例如 Claude Desktop、IDE 或 AI 工具
- MCP 客户端:与服务器保持 1:1 连接的协议客户端
- MCP 服务器:轻量级程序,每个程序都通过标准化模型上下文协议公开特定功能
- 本地数据源:MCP 服务器可以安全访问的您的计算机文件、数据库和服务
- 远程服务:MCP 服务器可通过互联网(例如通过 API)连接到的外部系统
Spring AI MCP实现模块化架构,包含以下组件:
- Spring AI 应用程序:使用 Spring AI 框架构建想要通过 MCP 访问数据的生成式 AI 应用程序
- Spring MCP 客户端:Spring AI 实现的 MCP 协议,与服务器保持 1:1 连接
- MCP 服务器:轻量级程序,每个程序都通过标准化模型上下文协议公开特定功能
- 本地数据源:MCP 服务器可以安全访问的计算机文件、数据库和服务
- 远程服务:MCP 服务器可通过互联网(例如通过 API)连接到的外部系统

入门
Spring AI MCP GitHub:https ://github.com/spring-projects-experimental/spring-ai-mcp
Maven 依赖项
将以下依赖项之一添加到您的 Maven 项目:
<dependency> |
或者
<dependency> |
后者spring-ai-mcp-core通过附加的 Spring AI 抽象来扩展,例如McpFunctionCallback。
Maven 存储库配置
添加 Spring Milestones 存储库:
<repositories> |
示例演示
在spring-ai-examples/model-context-protocol存储库中探索这些 MCP 示例:
- SQLite Simple - 演示 LLM 与数据库的集成
- SQLite Chatbot - 与 SQLite 数据库交互的交互式聊天机器人
- 文件系统- 允许 LLM 与本地文件系统文件夹和文件交互