
浅试MCP:spring ai使用mcp调用deepseek的API接口
通过 Spring AI + MCP + DeepSeek 的整合,开发者能快速构建支持工具调用的智能 Agent 系统。
·
以下是基于 Spring AI 和 MCP(Model Context Protocol)调用 DeepSeek 大模型接口的完整实现方案,结合企业级开发实践总结的步骤与优化建议:
一、环境准备与依赖配置
1. 核心依赖引入
在 pom.xml
中添加 Spring AI MCP 模块及 DeepSeek 支持:
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-mcp-server-webmvc-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-model-openai</artifactId>
</dependency>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-bom</artifactId>
<version>1.0.0-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>io.modelcontextprotocol.sdk</groupId>
<artifactId>mcp-bom</artifactId>
<version>0.9.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<repositories>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
<repository>
<name>Central Portal Snapshots</name>
<id>central-portal-snapshots</id>
<url>https://central.sonatype.com/repository/maven-snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
需确保 Spring Boot 版本 3.4.4,Spring AI 1.0.0-SNAPSHOT,JDK17,mcp0.8.1。
2. 云端调用则直接配置 API 密钥。
二、模型端配置与调用
1. DeepSeek 连接配置
在 application.yml
中设置模型地址和 MCP 启用:
spring:
ai:
deepseek:
api-key: sk-your-api-key
base-url: https://api.deepseek.com
mcp:
enabled: true
tool-autoload: true
支持 SSL 加密和连接池优化。
2. 接口调用示例
通过 ChatController
发起请求:
@RestController
public class ChatController {
private final OpenAiChatModel chatModel;
@Autowired
public ChatController(OpenAiChatModel chatModel) {
this.chatModel = chatModel;
}
@GetMapping("/ai/generate")
public Map generate(@RequestParam(value = "message", defaultValue = "给我讲个笑话。") String message) {
return Map.of("generation", this.chatModel.call(message));
}
@GetMapping("/ai/generateStream")
public Flux<ChatResponse> generateStream(@RequestParam(value = "message", defaultValue = "给我讲个笑话。") String message) {
Prompt prompt = new Prompt(new UserMessage(message));
return this.chatModel.stream(prompt);
}
}
三、测试与验证
1. 请求示例
GET http://localhost:8080/ai/generate
响应结果:
总结
通过 Spring AI + MCP + DeepSeek 的整合,开发者能快速构建支持工具调用的智能 Agent 系统。关键路径包括:工具定义→协议注册→模型适配→安全管控。建议参考官方文档进行灰度发布和混沌测试,确保企业级稳定性。
更多推荐
所有评论(0)