pub struct GitAddTool;Expand description
Tool for staging files in Git
Trait Implementations§
Source§impl Clone for GitAddTool
impl Clone for GitAddTool
Source§fn clone(&self) -> GitAddTool
fn clone(&self) -> GitAddTool
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Tool for GitAddTool
impl Tool for GitAddTool
Source§type Args = GitAddArgs
type Args = GitAddArgs
Tool execution arguments - ALSO determines output type via ToolArgs::Output. Read more
Source§type Prompts = AddPrompts
type Prompts = AddPrompts
Prompt provider (MUST be from schema - tools cannot implement PromptProvider). Read more
Source§fn description() -> &'static str
fn description() -> &'static str
Human-readable description of what this tool does
Source§fn destructive() -> bool
fn destructive() -> bool
Can this tool delete or overwrite existing data? Read more
Source§fn idempotent() -> bool
fn idempotent() -> bool
Is calling this tool repeatedly with same args safe/idempotent? Read more
Source§async fn execute(
&self,
args: Self::Args,
_ctx: ToolExecutionContext,
) -> Result<ToolResponse<<Self::Args as ToolArgs>::Output>, McpError>
async fn execute( &self, args: Self::Args, _ctx: ToolExecutionContext, ) -> Result<ToolResponse<<Self::Args as ToolArgs>::Output>, McpError>
Execute the tool with given arguments. Read more
Source§fn validate_schema() -> Result<(), String>
fn validate_schema() -> Result<(), String>
Validate that schema generation works for this tool’s Args type. Read more
Source§fn input_schema() -> Arc<Map<String, Value>>
fn input_schema() -> Arc<Map<String, Value>>
Input schema - AUTO-GENERATED from Args type via
JsonSchema derive
Cached for performance - schema is computed once and reusedSource§fn output_schema() -> Arc<Map<String, Value>>
fn output_schema() -> Arc<Map<String, Value>>
Output schema - AUTO-GENERATED from
<Args as ToolArgs>::Output. Read moreSource§fn open_world() -> bool
fn open_world() -> bool
Does this tool interact with external systems (network, filesystem outside repo)? Read more
Source§fn prompt_name() -> Cow<'static, str>
fn prompt_name() -> Cow<'static, str>
Prompt name (defaults to “{
tool_name}_help”)Source§fn prompt_description() -> &'static str
fn prompt_description() -> &'static str
Prompt description (defaults to tool description)
Source§fn into_tool_route<S>(self) -> ToolRoute<S>
fn into_tool_route<S>(self) -> ToolRoute<S>
Convert this tool into an RMCP
ToolRoute Read moreSource§fn into_prompt_route<S>(self) -> PromptRoute<S>
fn into_prompt_route<S>(self) -> PromptRoute<S>
Convert this tool into an RMCP
PromptRoute Read moreSource§fn arc_into_tool_route<S>(self: Arc<Self>) -> ToolRoute<S>
fn arc_into_tool_route<S>(self: Arc<Self>) -> ToolRoute<S>
Convert Arc-wrapped tool into an RMCP
ToolRoute (optimized - no extra Arc allocation) Read moreSource§fn arc_into_prompt_route<S>(self: Arc<Self>) -> PromptRoute<S>
fn arc_into_prompt_route<S>(self: Arc<Self>) -> PromptRoute<S>
Convert Arc-wrapped tool into an RMCP
PromptRoute (optimized - no extra Arc allocation) Read moreAuto Trait Implementations§
impl Freeze for GitAddTool
impl RefUnwindSafe for GitAddTool
impl Send for GitAddTool
impl Sync for GitAddTool
impl Unpin for GitAddTool
impl UnwindSafe for GitAddTool
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToolPrompts for Twhere
T: Tool,
impl<T> ToolPrompts for Twhere
T: Tool,
Source§fn prompt_arguments() -> Vec<PromptArgument>
fn prompt_arguments() -> Vec<PromptArgument>
Get prompt arguments (calls schema’s PromptProvider)
Source§fn prompt(
args: <Self::Prompts as PromptProvider>::PromptArgs,
) -> Result<Vec<PromptMessage>, McpError>
fn prompt( args: <Self::Prompts as PromptProvider>::PromptArgs, ) -> Result<Vec<PromptMessage>, McpError>
Generate prompts (calls schema’s PromptProvider) Read more