使用说明
项目简介
本项目是一个使用 Spring AI 框架构建的 MCP (Model Context Protocol) 服务器示例。它演示了如何利用 Spring AI 快速搭建一个能够向 LLM 客户端提供工具的 MCP 后端应用。该示例服务器提供了两个简单的工具:获取当前日期时间以及获取当前天气。
主要功能点
- 工具注册与提供: 通过 Spring AI 的 '@Tool' 注解,轻松注册可供 LLM 调用的工具函数。
- 内置示例工具: 提供了 "获取当前日期时间" 和 "获取当前天气" 两个示例工具,展示工具的基本功能。
- Spring Boot 基础: 基于 Spring Boot 构建,易于启动、部署和扩展。
- MCP 服务端框架: 实现了 MCP 服务器的基本框架,可以作为构建更复杂 MCP 应用的起点。
安装步骤
- 下载代码: 访问仓库 https://github.com/smartzhengyijun/spring-ai-mcpserver,将代码克隆到本地或下载为 ZIP 文件。
- 构建项目: 确保已安装 Maven。在项目根目录下打开终端,执行命令 'mvn clean install'。Maven 将下载依赖并编译项目。
- 运行服务器: 构建成功后,在终端中导航到 'target' 目录,找到生成的 JAR 文件(例如 'spring-ai-mcpserver-0.0.1-SNAPSHOT.jar')。执行命令 'java -jar spring-ai-mcpserver-0.0.1-SNAPSHOT.jar' 启动服务器。
服务器配置
MCP 客户端需要配置以下信息才能连接到此 MCP 服务器。这些配置通常在客户端应用的设置中进行配置。
{ "serverName": "spring-ai-mcpserver-demo", "command": "java", "args": ["-jar", "target/spring-ai-mcpserver-0.0.1-SNAPSHOT.jar"] }
- 'serverName': 为该服务器自定义一个名称,例如 'spring-ai-mcpserver-demo',用于在客户端标识和管理不同的 MCP 服务器连接。
- 'command': 启动服务器的命令,这里是 'java',表示使用 Java 运行时环境来执行程序。
- 'args': 启动命令的参数,'["-jar", "target/spring-ai-mcpserver-0.0.1-SNAPSHOT.jar"]' 指定了要运行的 JAR 文件路径。请确保 'target/spring-ai-mcpserver-0.0.1-SNAPSHOT.jar' 文件存在,如果文件名不同,请根据实际情况修改。
基本使用方法
服务器启动后,等待 MCP 客户端连接。客户端连接成功后,即可发现并调用服务器提供的工具。
例如,客户端可以请求调用 'getCurrentDateTime' 工具来获取当前日期时间,或调用 'getCurrentWeather' 工具获取天气信息。具体的调用方式和工具参数需要参考 MCP 客户端的文档和工具的定义(本项目中的工具定义在 'DateTimeToolsService.java' 和 'WeatherToolsService.java' 文件中)。
请注意,这只是一个基础的 MCP 服务器示例,更复杂的功能(如资源管理、Prompt 模板等)可能需要根据 MCP 协议和 Spring AI 的能力进行扩展开发。
信息
分类
网页与API