pub trait ToolProvider: Send + Sync {
// Required method
fn tools(&self) -> Vec<DynTool> ⓘ;
}Expand description
Trait for types that can provide multiple tools.
Implement this trait to group related tools together.
§Example
ⓘ
use mcp::{ToolProvider, McpTool};
struct MathTools;
impl ToolProvider for MathTools {
fn tools(&self) -> Vec<Arc<dyn McpTool>> {
vec![
Arc::new(AddTool),
Arc::new(SubtractTool),
Arc::new(MultiplyTool),
]
}
}Required Methods§
Implementors§
impl<T: MacroServer + 'static> ToolProvider for MacroServerAdapter<T>
Available on crate feature
macros only.