pub struct ClientHello {
pub mpl_version: String,
pub protocols: Vec<String>,
pub stypes: Vec<String>,
pub tools: Vec<ToolRequest>,
pub profile: Option<String>,
pub policies: Vec<String>,
pub features: Vec<String>,
pub model: Option<String>,
pub client_id: Option<String>,
}Expand description
Client’s initial handshake message proposing capabilities
Fields§
§mpl_version: StringMPL protocol version
protocols: Vec<String>Supported MCP/A2A protocol versions
stypes: Vec<String>Supported/required STypes
tools: Vec<ToolRequest>Requested tools
profile: Option<String>Requested QoM profile
policies: Vec<String>Policy references
features: Vec<String>Optional feature flags
model: Option<String>Model preferences (optional)
client_id: Option<String>Client identifier
Implementations§
Source§impl ClientHello
impl ClientHello
Sourcepub fn with_protocols(self, protocols: Vec<String>) -> Self
pub fn with_protocols(self, protocols: Vec<String>) -> Self
Add supported protocols
Sourcepub fn with_stypes(self, stypes: Vec<String>) -> Self
pub fn with_stypes(self, stypes: Vec<String>) -> Self
Add required STypes
Sourcepub fn with_tools(self, tools: Vec<ToolRequest>) -> Self
pub fn with_tools(self, tools: Vec<ToolRequest>) -> Self
Add tool requests
Sourcepub fn with_profile(self, profile: impl Into<String>) -> Self
pub fn with_profile(self, profile: impl Into<String>) -> Self
Set QoM profile
Sourcepub fn with_policies(self, policies: Vec<String>) -> Self
pub fn with_policies(self, policies: Vec<String>) -> Self
Add policy references
Sourcepub fn with_features(self, features: Vec<String>) -> Self
pub fn with_features(self, features: Vec<String>) -> Self
Add feature flags
Trait Implementations§
Source§impl Clone for ClientHello
impl Clone for ClientHello
Source§fn clone(&self) -> ClientHello
fn clone(&self) -> ClientHello
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ClientHello
impl Debug for ClientHello
Source§impl Default for ClientHello
impl Default for ClientHello
Source§impl<'de> Deserialize<'de> for ClientHello
impl<'de> Deserialize<'de> for ClientHello
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ClientHello
impl RefUnwindSafe for ClientHello
impl Send for ClientHello
impl Sync for ClientHello
impl Unpin for ClientHello
impl UnwindSafe for ClientHello
Blanket Implementations§
Source§impl<T> AnyExt for T
impl<T> AnyExt for T
Source§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
Attempts to downcast this to
T behind referenceSource§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
Attempts to downcast this to
T behind mutable referenceSource§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
Attempts to downcast this to
T behind Rc pointerSource§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
Attempts to downcast this to
T behind Arc pointerSource§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more