Skip to content

springboot - mcp

🚀 使用 Spring Boot 搭建自己的 MCP Server

https://github.com/modelcontextprotocol/java-sdk

CAUTION

注意 springboot 版本一定要大于 3.4x,不然不支持 Spring AI

一、什么是 MCP?

MCP(Model Context Protocol) 是由 Anthropic 提出的一种标准化协议 ,用于让语言模型(LLM)以结构化方式访问外部工具和数据源。

核心功能:

  • List Tools:列出可用的工具
  • Call Tool:调用指定工具并返回结果
  • Streaming Support(可选):支持流式响应

类似于 OpenAI 的 Function Calling 或 Google 的 Vertex AI Gateway,但更开放、轻量。

二、项目结构设计

src/
├── main/
│   ├── java/
│   │   └── com.example.mcpserver/
│   │       ├── McpApplication.java            # 主启动类
│   │       │
│   │       ├── controller/
│   │       │   └── McpController.java         # 处理 /mcp 路由
│   │       │
│   │       ├── model/
│   │       │   ├── Tool.java                  # 工具元信息
│   │       │   ├── ToolCallRequest.java       # 调用请求
│   │       │   └── ToolResult.java              # 返回结果
│   │       │
│   │       └── service/
│   │           ├── ToolRegistry.java          # 工具注册中心
│   │           └── impl/
│   │               ├── TimeTool.java          # 示例工具:获取当前时间
│   │               └── WeatherTool.java       # 示例工具:查天气
│   │
│   └── resources/
│       ├── application.yml
│       └── openapi/mcp-api.yaml               # OpenAPI 描述文件(可选)

三、添加依赖(pom.xml)

<!-- https://github.com/openai/openai-java -->
<dependency>
    <groupId>com.openai</groupId>
    <artifactId>openai-java</artifactId>
    <version>4.6.1</version>
</dependency>
<!-- https://github.com/modelcontextprotocol/java-sdk -->
<dependency>
    <groupId>io.modelcontextprotocol.sdk</groupId>
    <artifactId>mcp</artifactId>
    <version>1.1.1</version>
</dependency>

上次更新时间:

最近更新