Token导航 LogoToken导航TokenDH.com
Kuldeepsingh99 MCP logo
搜索检索未说明官方级别未说明来源级核验

Kuldeepsingh99 MCP

MCP Server

Build your own mcp server with spring ai

工具数

2

提示词数

0

GitHub Stars

5

资源数

0
Spring BootJavaAI代理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

kuldeepsingh99

提供方

kuldeepsingh99

最后核验

2026/5/18 04:55

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Spring AI与MCP(模型上下文协议)的集成

模型上下文协议(MCP) 是一种标准化的协议,使人工智能模型能够以结构化的方式与外部工具和资源进行交互。它支持多种传输机制,以提供跨不同环境的灵活性。

MCP Java SDK提供了模型上下文协议的Java实现,通过同步和异步通信模式实现了与AI模型和工具的标准化交互。

Spring AI MCP通过Spring Boot集成扩展了MCP Java SDK,提供了客户端和服务器端启动器。使用Spring Initializer启动支持MCP的AI应用程序。

MCP Java SDK架构

Java MCP实现遵循三层架构

  • 客户端/服务器层:McpClient处理客户端操作,而McpServer管理服务器端协议操作。两者都使用McpSession进行通信管理。
  • 会话层(McpSession):通过DefaultMcpSessions实现管理通信模式和状态。
  • 传输层(McpTransport):处理JSON-RPC消息序列化和反序列化,支持多种传输实现。

MCP客户端

MCP客户端是模型上下文协议(MCP)架构中的关键组件,负责建立和管理与MCP服务器的连接。

MCP客户端

MCP服务器是模型上下文协议(MCP)架构中的基础组件,为客户端提供工具、资源和功能。

什么是MCP?

MCP遵循围绕几个关键组件的客户端-服务器架构:

MCP主机: 是我们的主要应用程序,它与LLM集成,并要求它与外部数据源连接

MCP客户端: 是与MCP服务器建立和维护1:1连接的组件

MCP服务器: 是与外部数据源集成并公开与之交互的功能的组件

工具:请参阅MCP服务器为客户端调用而公开的可执行函数/方法 此外,为了处理客户端和服务器之间的通信,MCP提供了两个传输通道。

为了通过标准输入和输出流与本地进程和命令行工具进行通信,它提供了标准输入/输出(stdio)传输类型。或者,对于客户端和服务器之间基于HTTP的通信,它提供服务器发送事件(SSE)传输类型。

示例中做了什么?

在本文中,我们还公开了MCP Server中的两个工具,它们连接到Postgresql DB并获取数据。MCP客户端连接到MCP服务器,并根据提示LLM决定连接哪个工具。

步骤1创建Postgresql数据库

运行docker-compose.yml文件并运行table.sql以创建表。

2.在本地运行ollama

下载 成为 并运行任何 模型 根据您的机器容量

步骤3创建MCP服务器

下载mcp服务器项目并运行它。

需要注意的重要类-SellerAccountTools

@Service
public class SellerAccountTools {
    private final SellerAccountRepository sellerAccountRepository;

    public SellerAccountTools(SellerAccountRepository sellerAccountRepository) {
        this.sellerAccountRepository = sellerAccountRepository;
    }

    @Tool(name = "Search Seller account by name", description = "Find all Seller Accounts by name")
    public String getAccountByName(
            @ToolParam(description = "Seller Account Name") String name) {
        List accountList = sellerAccountRepository.findByName(name);
        StringBuilder result = new StringBuilder();
        for (SellerAccount account : accountList) {
            result.append(account.toString()).append("\n");
        }
        return result.toString();
    }

    @Tool(description = "Find all Seller Accounts by owner")
    public String getAccountByOwner(
            @ToolParam(description = "Seller Account owner") String owner) {
        List accountList = sellerAccountRepository.findByOwner(owner);
        StringBuilder result = new StringBuilder();
        for (SellerAccount account : accountList) {
            result.append(account.toString()).append("\n");
        }
        return result.toString();
    }
}

解释

  • 工具允许服务器公开LLM可以调用的工具,例如,我创建了两个工具,它们将按名称和所有者从帐户表中搜索。
  • 根据提示,AI LLM将自动选择正确的方法,但我们需要正确地写出名称和描述

步骤4创建MCP客户端

下载mcp客户端项目并运行。

5.测试

DB表数据

image

使用Promts进行测试

image

在这里,您可以观察到,LLM会根据提示自动选择正确的工具并返回结果,同时还会对其进行格式化。

目录标签

目录标签

Spring BootJavaAI代理research-and-dataaispring-bootmcpspring-data-jpallmspringaimcp-serverAI模型交互本地部署协议集成SpringBootJavaSDK工具调用

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP