pub struct ToolResult<T = Value> {
pub data: T,
pub new_messages: Option<Vec<ToolResultMessage>>,
pub context_modifier: Option<Arc<dyn Fn(&ToolUseContext) -> ToolUseContext + Send + Sync>>,
pub mcp_meta: Option<McpMeta>,
}Expand description
Result returned by a tool call.
Mirrors the TypeScript ToolResult<T> type.
Fields§
§data: T§new_messages: Option<Vec<ToolResultMessage>>§context_modifier: Option<Arc<dyn Fn(&ToolUseContext) -> ToolUseContext + Send + Sync>>context_modifier is only honored for tools that aren’t concurrency safe.
mcp_meta: Option<McpMeta>MCP protocol metadata (structuredContent, _meta) to pass through to SDK consumers
Auto Trait Implementations§
impl<T> Freeze for ToolResult<T>where
T: Freeze,
impl<T = Value> !RefUnwindSafe for ToolResult<T>
impl<T> Send for ToolResult<T>where
T: Send,
impl<T> Sync for ToolResult<T>where
T: Sync,
impl<T> Unpin for ToolResult<T>where
T: Unpin,
impl<T> UnsafeUnpin for ToolResult<T>where
T: UnsafeUnpin,
impl<T = Value> !UnwindSafe for ToolResult<T>
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