pub struct McpTool { /* private fields */ }Expand description
An MCP server’s tool.
Implementations§
Trait Implementations§
Source§impl Tool for McpTool
impl Tool for McpTool
Source§fn declaration(&self) -> &ToolDeclaration
fn declaration(&self) -> &ToolDeclaration
Name, description and argument schema as sent to the model.
Source§fn output_schema(&self) -> Option<&Value>
fn output_schema(&self) -> Option<&Value>
JSON Schema of the value the tool returns as
structuredContent, for
tools whose results scripts consume (pi’s outputSchema).Source§fn execute(
&self,
_call_id: String,
args: Value,
cancel: CancellationToken,
updates: UpdateSink,
) -> BoxFuture<'_, Result<ToolResult, String>>
fn execute( &self, _call_id: String, args: Value, cancel: CancellationToken, updates: UpdateSink, ) -> BoxFuture<'_, Result<ToolResult, String>>
Runs the tool with validated arguments.
Source§fn execution_mode(&self) -> ExecutionMode
fn execution_mode(&self) -> ExecutionMode
See
ExecutionMode.Auto Trait Implementations§
impl !RefUnwindSafe for McpTool
impl !UnwindSafe for McpTool
impl Forget for McpTool
impl Freeze for McpTool
impl Send for McpTool
impl Sync for McpTool
impl Unpin for McpTool
impl UnsafeUnpin for McpTool
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