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§impl<'de> Deserialize<'de> for McpClientConfig
impl<'de> Deserialize<'de> for McpClientConfig
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>,
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> 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