news 2026/4/16 13:58:29

75_Spring AI 干货笔记之 MCP 客户端注解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
75_Spring AI 干货笔记之 MCP 客户端注解

一、MCP 客户端注解

MCP 客户端注解提供了一种使用 Java 注解来实现 MCP 客户端处理器的声明式方法。这些注解简化了服务器通知和客户端操作的处理。

所有 MCP 客户端注解必须包含一个 clients 参数,用于将处理器与特定的 MCP 客户端连接关联。该参数必须与应用程序配置文件中配置的连接名称相匹配。

二、客户端注解

2.1 @McpLogging

@McpLogging 注解用于处理来自 MCP 服务器的日志消息通知。

2.1.1 基本用法

@ComponentpublicclassLoggingHandler{@McpLogging(clients="my-mcp-server")publicvoidhandleLoggingMessage(LoggingMessageNotificationnotification){System.out.println("收到日志: "+notification.level()+" - "+notification.data());}}

2.1.2 使用独立参数

@McpLogging(clients="my-mcp-server")publicvoidhandleLoggingWithParams(LoggingLevellevel,Stringlogger,Stringdata){System.out.println(String.format("[%s] %s: %s",level,logger,data));}

2.2 @McpSampling

@McpSampling 注解用于处理来自 MCP 服务器的大语言模型补全采样请求。

2.2.1 同步实现

@ComponentpublicclassSamplingHandler{@McpSampling(clients="llm-server")publicCreateMessageResulthandleSamplingRequest(CreateMessageRequestrequest){// 处理请求并生成响应Stringresponse=generateLLMResponse(request);returnCreateMessageResult.builder().role(Role.ASSISTANT).content(newTextContent(response)).model("gpt-4").build();}}

2.2.2 异步实现

@ComponentpublicclassAsyncSamplingHandler{@McpSampling(clients="llm-server")publicMono<CreateMessageResult>handleAsyncSampling(CreateMessageRequestrequest){returnMono.fromCallable(()->{Stringresponse=generateLLMResponse(request);returnCreateMessageResult.builder().role(Role.ASSISTANT).content(newTextContent(response)).model("gpt-4").build();}).subscribeOn(Schedulers.boundedElastic());}}

2.3 @McpElicitation

@McpElicitation 注解用于处理向用户收集额外信息的征询请求。

2.3.1 基本用法

@ComponentpublicclassElicitationHandler{@McpElicitation(clients="interactive-server")publicElicitResulthandleElicitationRequest(ElicitRequestrequest){// 向用户展示请求并收集输入Map<String,Object>userData=
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 14:33:35

驱动程序中的内存映射原理:通俗解释物理地址绑定

以下是对您提供的技术博文《驱动程序中的内存映射原理:物理地址绑定的深度技术解析》进行 全面润色与重构后的终稿 。本次优化严格遵循您的五项核心要求: ✅ 彻底消除AI生成痕迹,语言自然、专业、有“人味”,像一位资深嵌入式内核工程师在技术分享会上娓娓道来; ✅ 打…

作者头像 李华
网站建设 2026/4/16 12:27:05

零基础解决Multisim14.0主数据库缺失在教学中的应用

以下是对您提供的博文内容进行 深度润色与结构重构后的专业级技术文章 。全文已彻底去除AI生成痕迹、模板化表达和刻板学术腔,转而采用一位 深耕电子教学信息化一线十年的高校实验中心主任+嵌入式系统老工程师 的真实口吻,融合教学痛点、工程直觉与代码实战细节,语言自然…

作者头像 李华
网站建设 2026/4/16 10:42:44

hbuilderx实现电商小程序数据缓存机制操作指南

以下是对您提供的博文《HBuilderX实现电商小程序数据缓存机制技术分析》的 深度润色与专业重构版本 。本次优化严格遵循您的全部要求: ✅ 彻底去除AI痕迹 :摒弃模板化表达、空洞总结与机械过渡,代之以真实开发者口吻、一线工程语境和可感知的技术节奏; ✅ 结构自然重…

作者头像 李华
网站建设 2026/4/16 12:44:17

PCI DSS扫描报告自动生成工具链:软件测试从业者的高效合规指南

PCI DSS&#xff08;支付卡行业数据安全标准&#xff09;4.0的更新对测试工作提出了更高要求&#xff0c;如多重身份验证&#xff08;MFA&#xff09;全覆盖、实时日志监控和漏洞管理&#xff0c;这促使测试从业者从手动检查转向自动化工具链集成。工具链通过端到端自动化&…

作者头像 李华
网站建设 2026/4/16 12:17:03

LLM生成攻击载荷的自动化验证框架

背景与问题陈述‌ 随着大型语言模型&#xff08;LLM&#xff09;在网络安全领域的广泛应用&#xff0c;其生成攻击载荷&#xff08;如恶意脚本、SQL注入代码或漏洞利用程序&#xff09;的能力日益增强。然而&#xff0c;这些自动化生成的载荷往往存在可靠性低、误报率高的问题…

作者头像 李华
网站建设 2026/4/16 12:20:51

继电器驱动电路设计中的续流二极管详解

以下是对您提供的博文《继电器驱动电路设计中的续流二极管详解》的 深度润色与专业优化版本 。本次改写严格遵循您的全部要求: ✅ 彻底去除AI痕迹,语言自然、老练、有“人味”,像一位十年硬件老兵在技术分享会上娓娓道来; ✅ 所有模块(原理、选型、失效、实战)有机融…

作者头像 李华