pub enum ClientError {
Transport(String),
Protocol(String),
ServerError {
code: i32,
message: String,
data: Option<Value>,
},
Timeout(Duration),
NotInitialized,
IdMismatch {
expected: String,
actual: String,
},
ChannelClosed(String),
Serialization(Error),
}Expand description
Errors that can occur during MCP client operations
Variants§
Transport(String)
Transport-level errors (I/O, connection)
Protocol(String)
Protocol errors (invalid JSON-RPC, parse errors)
ServerError
Server returned an error response
Fields
Timeout(Duration)
Request timed out
NotInitialized
Client not initialized (must call initialize first)
IdMismatch
Response ID mismatch
ChannelClosed(String)
Channel closed unexpectedly
Serialization(Error)
Serialization/deserialization error
Implementations§
Source§impl ClientError
impl ClientError
Sourcepub fn from_protocol_error(err: ProtocolError) -> Self
pub fn from_protocol_error(err: ProtocolError) -> Self
Create from a protocol error response
Sourcepub fn is_retryable(&self) -> bool
pub fn is_retryable(&self) -> bool
Check if this is a retryable error
Trait Implementations§
Source§impl Debug for ClientError
impl Debug for ClientError
Source§impl Display for ClientError
impl Display for ClientError
Source§impl Error for ClientError
impl Error for ClientError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<Error> for ClientError
impl From<Error> for ClientError
Auto Trait Implementations§
impl Freeze for ClientError
impl !RefUnwindSafe for ClientError
impl Send for ClientError
impl Sync for ClientError
impl Unpin for ClientError
impl !UnwindSafe for ClientError
Blanket Implementations§
Source§impl<E> BackendErrorExt for Ewhere
E: Error,
impl<E> BackendErrorExt for Ewhere
E: Error,
Source§fn backend_error(self, context: &str) -> CommonError
fn backend_error(self, context: &str) -> CommonError
Convert any error to a backend-friendly error
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.
Source§impl<T> ValidateIp for Twhere
T: ToString,
impl<T> ValidateIp for Twhere
T: ToString,
Source§fn validate_ipv4(&self) -> bool
fn validate_ipv4(&self) -> bool
Validates whether the given string is an IP V4
Source§fn validate_ipv6(&self) -> bool
fn validate_ipv6(&self) -> bool
Validates whether the given string is an IP V6
Source§fn validate_ip(&self) -> bool
fn validate_ip(&self) -> bool
Validates whether the given string is an IP