[AIAgent-MCP]MCP Client 全景:Elicitation、Roots 与 Sampling 一次讲透

本文预览:

  • MCP Client 到底是什么
  • Elicitation/ Roots/ Sampling 三大核心分别做什么

是什么

AI应用程序 Host中创建管理,与 MCP Server 连接的协议级组件,一个 HostAI应用程序可以包含多个 MCP Client

核心能力与作用

MCPCliet除了可以从MCPServer获取上下文信息外,还可以向服务器提供多种功能。

MCPCliet的这些功能使MCPServer开发者能够构建更丰富的交互体验。

Elicitation

简单说就是按需向用户补充信息

该能力的作用为:让 MCPServer在流程中向用户**寻求信息补充, **从而创建更动态、响应更迅速的工作流程。

MCPServer 执行 Client 请求的工作流程时, 如果发现 Client 提供的信息不足以MCPServer完成当前工作流程,MCPServer会发起一个 结构化 的请求,让用户手动去填写必要的信息以来完成任务流程,防止 MCPServer在信息不充足的情况下导致任务失败。

这样ClientServer有了更灵活的交互方式,Server能够适应用户需求,而不是遵循僵化的模式。

交互路径如下**: **

最佳实践

**原则: **设计清晰符合语境尊重用户自主权

  • 请求呈现 : 向用户展示本次请求的**具体目的 数据结构**; Client以清晰的上下文信息展示请求,包括请求的Server端信息、本次信息用途信息使用方式
  • 用户响应选择 : 用户可以选择同意或者拒绝补充提供信息 ; 用户可以通过清晰可以的界面控件(文本框、下拉菜单、复选框)同意提供所需信息,并且Client 会根据请求的具体结构进行信息验证保障数据信息的准确性;也可以选择不提供信息并附上解释、或者取消整个操作。
  • 隐私保护 : 请求过程中不建议包含**密码 密钥**等隐私数据请求,同时Client会对此类请求给出警告,让用户谨慎选择。

Roots

定义服务器操作的文件系统边界, 告诉用户(Client)可以关注的资源文件范围,但是在服务器端具体的文件权限还是需要服务器本身的操作系统通过文件权限或沙箱机制来实施。

Roots客户端服务器 传达文件系统访问边界 的一种机制。由文件 URI 组成,指示服务器可以操作的目录 ,帮助服务器了解可用文件和文件夹的范围 。虽然Roots指定了操作范围,但它们并不强制执行安全限制。实际的安全措施必须在操作系统层面通过文件权限或沙箱机制来实施

Roots** 结构:**

复制代码
{
  "uri": "file:///Users/agent/travel-planning",
  "name": "Travel Planning Workspace"
}

使用方式

默认情况下Roots应用程序根据用户操作自动管理,但也提供手动管理选项

  • 自动检测: 用户打开对应的资源文件时,客户端会向服务器自动发送相关资源Roots请求,帮助服务端了解哪些资源属于当前用户使用的场景
  • **手动配置: **通过配置指定根目录, 告诉服务器可以的资源范围。如 /travel-templates

Sampling

Server ** 借助 Client 完成 LLM 调用**

本质是:Server 自己不直接接大模型,而是请求 Client 代为完成模型推理

这样,模型访问权、权限策略、速率限制、敏感信息 处理等,仍由 **Client **一侧掌控。

Sampling 请求可以包含消息内容模型偏好system prompttoken 上限等。

复制代码
{
  messages: [
    {
      role: "user",
      content: "分析这些航班选项,并推荐最佳选择:\n" +
"[47 条航班信息,包括价格、时间、航空公司和中途停留情况]\n" +
"用户偏好:早上出发,最多 1 次中途停留"
    }
  ],
  modelPreferences: {
    hints: [{
      name: "claude-sonnet-4-20250514"  // Suggested model
    }],
    costPriority: 0.3,      // Less concerned about API cost
    speedPriority: 0.2,     // Can wait for thorough analysis
    intelligencePriority: 0.9  // Need complex trade-off evaluation
  },
  systemPrompt: "您是一位旅行专家,致力于根据用户的偏好为他们推荐最优质的航班。",
  maxTokens: 1500
}

它通常带有 人机交互 (human-in-the-loop)的设计:用户可以审批、拒绝、修改请求,也可以在响应返回 Server 前先查看结果。

大致交互流程

以上即为对MCP Client 的核心原理的初步了解,下一步进行更深入实战~~~

我是小C,每天学一点 Agent 也拆一点 Agent;尽量把原理弄懂,框架每天都在迭代,不只看用法,更看实现思路。框架会变,原理不变。后续继续分享Agent相关知识笔记~

#MCP #AIAgent #大模型应用 #AI工程化 #技术学习笔记

相关推荐
Georgeviewer4 小时前
商业落地评测|实体门店GEO优化性价比与服务体系深度复盘
大数据·人工智能
GuWenyue4 小时前
分不清AI Workflow与Agent?3个实战案例彻底讲透,做AI应用不再踩选型坑
人工智能
彩讯股份3006345 小时前
彩讯股份与心洲科技签署战略合作协议,共建企业级模型后训练能力
人工智能·科技
迅易科技5 小时前
从场景验证到Agent上线:迅易 × WorkBuddy如何帮助企业建设AI能力?
人工智能·ai·腾讯云
PNP Robotics6 小时前
多伦多大学机器人峰会|物理AI与具身智能落地新趋势
人工智能·深度学习·机器学习·机器人
GIR1236 小时前
官方出品 | 多通道土壤呼吸测量系统市场现状与十五五规划深度报告:行业分析+趋势预测全收录
大数据·人工智能·机器学习
绿算技术6 小时前
绿算技术亮相第十八届HPC AI中国年会,擘画AI基础设施全栈协同新图景
人工智能
Litluecat6 小时前
2026年7月22日科技热点新闻
人工智能·科技·新闻·每日·速览
To_OC6 小时前
别再傻傻分不清:Workflow 和 Agent 到底不是一回事
人工智能·agent·workflow
触底反弹7 小时前
🔥 2026 大模型选择指南:别再只看 Benchmark 了,这些维度才是关键!
人工智能·面试