mcpField
S
Spring Ai Mcp

Spring Ai Mcp

本地服务
github.com/rifatcakirAI 与智能体273 周前更新

关于 Spring Ai Mcp

Spring Ai Mcp 是一个以 Spring AI 和 MCP 构建的微服务聊天示例,供用户通过自然语言操作个人信息、账户和交易服务。它由聊天客户端及多个 MCP 微服务组成,并支持跨轮次保留上下文。

主要功能

  1. 01自然语言调用服务
  2. 02统一聊天界面
  3. 03实时连接多个服务
  4. 04支持接入新微服务
  5. 05多轮交互上下文管理

适用场景

  1. 01查询个人资料
  2. 02查看个人账户及余额
  3. 03查询账户交易记录

MCP 相关

个人信息、账户和交易微服务均实现 MCP;聊天客户端使用 Spring AI 将自然语言请求转换为对相关服务的调用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Spring AI MCP(Model Context Protocol)

本项目演示如何使用 Spring AI 和 MCP(Model Context Protocol)实现基于聊天的界面,以便与微服务通信。系统允许用户通过自然语言聊天与各种微服务交互,并借助上下文理解和模型驱动的交互,更轻松地跨不同服务执行操作。

项目结构

项目由以下组件构成:

  • chat-client:Spring Boot 应用,为用户提供与微服务交互的聊天界面
  • person-mcp-service:用于管理人员相关操作的微服务
  • account-mcp-service:用于处理账户相关操作的微服务
  • transaction-mcp-service:用于处理交易相关操作的微服务

前提条件

  • Java 21
  • Maven 3.8+
  • Spring Boot 3.5.0
  • Spring AI 1.0.0

快速开始

  1. 克隆仓库:
git clone https://github.com/yourusername/spring-ai-mcp.git
cd spring-ai-mcp
  1. 构建项目:
mvn clean install
  1. 启动服务:
# Start each service in separate terminals
mvn spring-boot:run -pl person-mcp-service
mvn spring-boot:run -pl account-mcp-service
mvn spring-boot:run -pl transaction-mcp-service
mvn spring-boot:run -pl chat-client

架构

项目采用微服务架构,其中:

  1. 每个微服务(person、account、transaction)都实现了 Model Context Protocol(MCP)
  2. 聊天客户端使用 Spring AI 来:
    • 处理自然语言输入
    • 将用户请求转换为合适的模型上下文调用
    • 处理来自微服务的响应
    • 以用户友好的格式呈现结果
    • 在多次交互间保留上下文

功能

  • 用于服务交互的自然语言处理
  • 适用于所有微服务的统一聊天界面
  • 与多个服务实时通信
  • 无缝集成新的微服务

使用方法

  1. 通过 chat-client 应用访问聊天界面
  2. 使用自然语言输入请求
  3. 系统将:
    • 解析请求
    • 识别相关微服务
    • 执行必要的操作
    • 以对话形式返回结果

聊天交互示例

以下是与 AI 助手的一些对话示例,展示了 Model Context Protocol 如何通过聊天实现无缝且结合上下文的银行业务操作:

1. 查看个人信息
示例:显示 John Smith 的个人信息

用户请求查看 John Smith 的个人信息。助手提供了 ID、名和姓。

2. 查询某人的账户
示例:显示 John Smith 的账户

用户请求查看 John Smith 名下的账户。助手列出了所有账户及其余额。

3. 查看账户交易记录
示例:显示账户交易记录

用户请求查看先前列出的账户的交易记录。助手返回账户和交易详情,并保留了之前消息中的上下文。

开发

添加新微服务
  1. 在项目中创建新模块
  2. 实现 MCP 协议
  3. 将模块添加到父级 pom.xml
  4. 更新聊天客户端,以处理新服务的操作
配置

每个服务都可以通过各自的 application.properties 或 application.yml 文件进行配置。常见配置包括:

  • 服务端口
  • 数据库连接
  • AI 模型设置
  • Model Context Protocol 设置
  • 上下文管理参数

贡献

  1. Fork 仓库
  2. 创建功能分支
  3. 提交更改
  4. 将更改推送到分支
  5. 创建 Pull Request

许可证

本项目采用 MIT License 许可,详情请参阅 LICENSE 文件。

支持

如需支持,请在 GitHub 仓库中提交 issue,或联系开发团队。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。