MCP的Sampling与Roots:模型请求与权限管理
请解释MCP协议中的Sampling和Roots机制。Sampling如何让Server反向请求LLM生成内容?Roots如何定义Host允许Server访问的文件范围?
回答
专业代码师
Sampling(采样请求):Server->Host->LLM方向,请求LLM生成内容。Host可拒绝/修改请求。用途:Server需要LLM能力时。
Roots(根目录):Host向Server声明可访问的文件路径。Server通过roots/list获取,避免越权访问。
安全模型:Host控制权限(授权工具调用/管理Server生命周期/控制Roots范围/审核Sampling)。三权分立:Host权限控制者、Client协议实现者、Server能力提供者。