Skip to content
Spring AI 文档版本 2.1.0-SNAPSHOT 源快照 f4ff9270 更新于 2026-10-16

Model Context Protocol (MCP) 入门

Model Context Protocol(MCP)标准化了 AI 应用与外部工具及资源交互的方式。

Spring 很早便作为关键贡献者加入了 MCP 生态,参与开发和维持 官方 MCP Java SDK,该 SDK 是基于 Java 的 MCP 实现的基础。 在此基础上,Spring AI 通过 Boot Starters 和注解提供对 MCP 的支持,让构建 MCP 服务端与客户端都变得轻松。

介绍视频

Model Context Protocol (MCP) 入门 - YouTube

从这里开始,了解 Model Context Protocol 的概览,理解其核心概念与架构。

完整教程与源代码

📖 博客教程: 将你的 AI 连接到一切

💻 完整源代码: MCP 天气示例仓库

本教程涵盖使用 Spring AI 进行 MCP 开发的要点,包括高级特性与部署模式。 以下所有代码示例均取自本教程。

快速开始

最快捷的上手方式是使用 Spring AI 基于注解的方法。以下示例取自该博客教程:

简单 MCP 服务端

java
@Service
public class WeatherService {

    @McpTool(description = "Get current temperature for a location")
    public String getTemperature(
            @McpToolParam(description = "City name", required = true) String city) {
        return String.format("Current temperature in %s: 22°C", city);
    }
}

添加依赖并进行配置:

xml
<dependency>
    <groupId>org.springframework.ai</groupId>
    <artifactId>spring-ai-starter-mcp-server-webmvc</artifactId>
</dependency>
properties
spring.ai.mcp.server.protocol=STREAMABLE

简单 MCP 客户端

java
@Bean
public CommandLineRunner demo(ChatClient chatClient, ToolCallbackProvider mcpTools) {
    return args -> {
        String response = chatClient
            .prompt("What's the weather like in Paris?")
            .tools(mcpTools)
            .call()
            .content();
        System.out.println(response);
    };
}

添加依赖并进行配置:

xml
<dependency>
  <groupId>org.springframework.ai</groupId>
  <artifactId>spring-ai-starter-mcp-client</artifactId>
</dependency>
yaml
spring:
  ai:
    mcp:
      client:
        streamable-http:
          connections:
            weather-server:
              url: http://localhost:8080

学习资源

实现视频

Spring AI Model Context Protocol (MCP) 集成 - YouTube

一段关于 Spring AI 的 MCP 集成的视频讲解,同时涵盖服务端与客户端实现。

更多示例仓库

除教程示例之外,Spring AI Examples 仓库还包含大量 MCP 实现。

推荐起点

基于注解的示例

按用例分类

天气服务:

数据集成:

Web 集成:

客户端示例:

社区资源

参考文档

BytesRouter 是社区翻译站点,所有译文仅供参考,一切以官方英文原文为准。