pub struct McpToolProvider { /* private fields */ }Expand description
The ToolProvider actually registered with each session’s tool surface.
Delegates definitions and execution to the shared pool.
Implementations§
Source§impl McpToolProvider
impl McpToolProvider
pub fn new(pool: Arc<McpConnectionPool>) -> Self
Trait Implementations§
Source§impl ToolProvider for McpToolProvider
impl ToolProvider for McpToolProvider
fn tool_manifests(&self) -> Vec<ToolManifest>
fn resolve_contract(&self, name: &str) -> Option<Arc<ToolContract>>
fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
call: ToolCall<'life1>,
) -> Pin<Box<dyn Future<Output = ToolResult> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn resolve_manifest(&self, name: &str) -> Option<ToolManifest>
fn prepare_tool_call<'life0, 'life1, 'async_trait>(
&'life0 self,
call: ToolPrepareCall<'life1>,
) -> Pin<Box<dyn Future<Output = Result<PreparedToolCall, ToolResult>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Auto Trait Implementations§
impl Freeze for McpToolProvider
impl RefUnwindSafe for McpToolProvider
impl Send for McpToolProvider
impl Sync for McpToolProvider
impl Unpin for McpToolProvider
impl UnsafeUnpin for McpToolProvider
impl UnwindSafe for McpToolProvider
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