pub(super) fn require_scope(
parts: &Parts,
tool: &str,
scope: TokenScope,
) -> Result<McpPrincipal, ErrorData>Expand description
从 request.extensions 读取 McpPrincipal 并校验作用域。
作用域不足返回 insufficient_scope;principal 缺失返回 invalid_request。
成功返回 principal 克隆(调用方常需 principal.user_id 作 author_id)。