pub struct ClientCapabilities {
pub elicitation: Option<ClientElicitation>,
pub experimental: Option<HashMap<String, Map<String, Value>>>,
pub roots: Option<ClientRoots>,
pub sampling: Option<ClientSampling>,
pub tasks: Option<ClientTasks>,
}Expand description
Capabilities a client may support. Known capabilities are defined here, in this schema, but this is not a closed set: any client can define its own, additional capabilities.
JSON schema
{
"description": "Capabilities a client may support. Known capabilities are defined here, in this schema, but this is not a closed set: any client can define its own, additional capabilities.",
"type": "object",
"properties": {
"elicitation": {
"description": "Present if the client supports elicitation from the server.",
"type": "object",
"properties": {
"form": {
"type": "object",
"additionalProperties": true
},
"url": {
"type": "object",
"additionalProperties": true
}
}
},
"experimental": {
"description": "Experimental, non-standard capabilities that the client supports.",
"type": "object",
"additionalProperties": {
"type": "object",
"additionalProperties": true
}
},
"roots": {
"description": "Present if the client supports listing roots.",
"type": "object",
"properties": {
"listChanged": {
"description": "Whether the client supports notifications for changes to the roots list.",
"type": "boolean"
}
}
},
"sampling": {
"description": "Present if the client supports sampling from an LLM.",
"type": "object",
"properties": {
"context": {
"description": "Whether the client supports context inclusion via includeContext parameter.\nIf not declared, servers SHOULD only use includeContext: \"none\" (or omit it).",
"type": "object",
"additionalProperties": true
},
"tools": {
"description": "Whether the client supports tool use via tools and toolChoice parameters.",
"type": "object",
"additionalProperties": true
}
}
},
"tasks": {
"description": "Present if the client supports task-augmented requests.",
"type": "object",
"properties": {
"cancel": {
"description": "Whether this client supports tasks/cancel.",
"type": "object",
"additionalProperties": true
},
"list": {
"description": "Whether this client supports tasks/list.",
"type": "object",
"additionalProperties": true
},
"requests": {
"description": "Specifies which request types can be augmented with tasks.",
"type": "object",
"properties": {
"elicitation": {
"description": "Task support for elicitation-related requests.",
"type": "object",
"properties": {
"create": {
"description": "Whether the client supports task-augmented elicitation/create requests.",
"type": "object",
"additionalProperties": true
}
}
},
"sampling": {
"description": "Task support for sampling-related requests.",
"type": "object",
"properties": {
"createMessage": {
"description": "Whether the client supports task-augmented sampling/createMessage requests.",
"type": "object",
"additionalProperties": true
}
}
}
}
}
}
}
}
}Fields§
§elicitation: Option<ClientElicitation>§experimental: Option<HashMap<String, Map<String, Value>>>Experimental, non-standard capabilities that the client supports.
roots: Option<ClientRoots>§sampling: Option<ClientSampling>§tasks: Option<ClientTasks>Trait Implementations§
Source§impl Clone for ClientCapabilities
impl Clone for ClientCapabilities
Source§fn clone(&self) -> ClientCapabilities
fn clone(&self) -> ClientCapabilities
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 ClientCapabilities
impl Debug for ClientCapabilities
Source§impl Default for ClientCapabilities
impl Default for ClientCapabilities
Source§fn default() -> ClientCapabilities
fn default() -> ClientCapabilities
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ClientCapabilities
impl<'de> Deserialize<'de> for ClientCapabilities
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 ClientCapabilities
impl RefUnwindSafe for ClientCapabilities
impl Send for ClientCapabilities
impl Sync for ClientCapabilities
impl Unpin for ClientCapabilities
impl UnwindSafe for ClientCapabilities
Blanket Implementations§
Source§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