pub struct ListPullRequestsTool;Expand description
Tool for listing and filtering GitHub pull requests
Trait Implementations§
Source§impl Clone for ListPullRequestsTool
impl Clone for ListPullRequestsTool
Source§fn clone(&self) -> ListPullRequestsTool
fn clone(&self) -> ListPullRequestsTool
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 ListPullRequestsTool
impl Tool for ListPullRequestsTool
Source§type Args = ListPullRequestsArgs
type Args = ListPullRequestsArgs
Tool execution arguments - ALSO determines output type via ToolArgs::Output. Read more
Source§type Prompts = ListPullRequestsPrompts
type Prompts = ListPullRequestsPrompts
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§fn open_world() -> bool
fn open_world() -> bool
Does this tool interact with external systems (network, filesystem outside repo)? 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 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 ListPullRequestsTool
impl RefUnwindSafe for ListPullRequestsTool
impl Send for ListPullRequestsTool
impl Sync for ListPullRequestsTool
impl Unpin for ListPullRequestsTool
impl UnsafeUnpin for ListPullRequestsTool
impl UnwindSafe for ListPullRequestsTool
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§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