无需 Spring
可在纯 Java 应用、命令行工具、嵌入式进程和小型服务中运行 MCP 服务器。
无需 Spring
可在纯 Java 应用、命令行工具、嵌入式进程和小型服务中运行 MCP 服务器。
注解驱动
使用简洁且类型感知的 Java 注解定义工具、资源、提示词和自动补全。
编译期生成
在编译阶段生成确定性的组件绑定和 JSON Schema。
多种传输方式
通过 STDIO 服务本地客户端,或通过 Streamable HTTP 暴露生产集成。
模型上下文协议(Model Context Protocol,MCP)是一种标准化协议,用于构建向大语言模型应用暴露数据和功能的服务器。它类似于 Web API,但专门面向大语言模型交互。
MCP 可以帮助你在大语言模型之上构建智能体和复杂工作流。官方 MCP Java SDK 是基础层,Spring AI MCP 是 Spring 应用的标准入口。本 SDK 面向纯 Java 场景:命令行工具、嵌入式服务器、本地自动化,以及需要注解能力但不需要 Spring 运行时的小型服务进程。
| 项目 | 最适合的场景 | 定位 |
|---|---|---|
| 官方 MCP Java SDK | 库作者和底层协议集成 | 基础层 |
| Spring AI MCP | Spring Boot / Spring Framework 应用 | Spring 生态标准方案 |
| mcp-annotated-java-sdk | 纯 Java、CLI、嵌入式和轻量级 MCP 服务器 | 无 Spring 的注解封装层 |
经验法则: Spring 应用选择 Spring AI;无需 Spring 的轻量级 Java MCP 服务器选择 mcp-annotated-java-sdk。
| 特性 | 官方 MCP Java SDK | Spring AI MCP | 本 SDK |
|---|---|---|---|
| 主要用户 | 底层 Java 集成 | Spring 应用 | 纯 Java MCP 服务器 |
| 是否依赖 Spring | 否 | 是,用于 Spring 集成 | 否 |
| 组件模型 | 编程式注册 | Spring Bean 和注解 | 普通 Java 类和注解 |
| JSON Schema | 手动提供或由应用提供 | 由 Spring AI 生成 | 由注解处理器生成 |
| 启动方式 | 自行组装服务器 | Spring Boot 自动配置 | McpApplication.run(...) |
| 最佳使用场景 | 最大程度的控制 | 企业级 Spring 应用 | CLI、嵌入式、本地工具和小型服务 |
本 SDK 特别适合以下场景:
| 模式 | 说明 | 使用场景 |
|---|---|---|
| STDIO | 标准输入/输出通信 | CLI 工具、本地开发 |
| STREAMABLE | HTTP 流式传输 | Web 应用,推荐用于生产环境 |
type: ASYNC 会选择异步 MCP 服务器 API;带注解的方法仍是普通阻塞 Java 方法,由 Mono.fromCallable(...) 包装。详见快速开始 — 运行时模型。mcp-server.yml 中必须显式提供核心字段和适用的嵌套设置;instructions 不能为空,仅在启用资源能力时要求 capabilities.subscribe-resource,仅在 mode 为 STREAMABLE 时要求完整的 streamable 配置。默认值只适用于通过 ServerConfiguration.builder() 以编程方式构建配置。想立即开始?请阅读快速开始指南,在 5 分钟内构建第一个 MCP 服务器。