pub struct McpClientConfig {
pub servers: Vec<McpServerConfig>,
pub auto_register_tools: bool,
pub tool_timeout_secs: Option<u64>,
pub max_concurrent_calls: Option<usize>,
}
Expand description
Configuration for MCP client integration
This structure defines how the MCP client should connect to and manage multiple MCP servers, including authentication, tool registration, and execution policies.
Fields§
§servers: Vec<McpServerConfig>
List of MCP servers to connect to
auto_register_tools: bool
Whether to automatically register discovered tools with the model
When enabled, tools from MCP servers are automatically converted to the internal Tool format and registered for automatic tool calling.
tool_timeout_secs: Option<u64>
Timeout for individual tool execution in seconds
Controls how long to wait for a tool call to complete before timing out. Defaults to no timeout if not specified.
max_concurrent_calls: Option<usize>
Maximum number of concurrent tool calls across all MCP servers
Limits resource usage and prevents overwhelming servers with too many simultaneous requests. Defaults to 1 if not specified.
Trait Implementations§
Source§impl Clone for McpClientConfig
impl Clone for McpClientConfig
Source§fn clone(&self) -> McpClientConfig
fn clone(&self) -> McpClientConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for McpClientConfig
impl Debug for McpClientConfig
Source§impl Default for McpClientConfig
impl Default for McpClientConfig
Source§fn default() -> McpClientConfig
fn default() -> McpClientConfig
Source§impl<'de> Deserialize<'de> for McpClientConfig
impl<'de> Deserialize<'de> for McpClientConfig
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<McpClientConfig, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<McpClientConfig, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for McpClientConfig
impl Serialize for McpClientConfig
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for McpClientConfig
impl RefUnwindSafe for McpClientConfig
impl Send for McpClientConfig
impl Sync for McpClientConfig
impl Unpin for McpClientConfig
impl UnwindSafe for McpClientConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere
T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
Any
.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
Any
.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian()
.