pub struct ExecuteTool;Expand description
Marker type for the execute tool. Implements SqliteServerTool to wire up
the tool’s schema, handler, and routing. Stateless — all context comes from
McpServerSqlite.
Trait Implementations§
Source§impl Clone for ExecuteTool
impl Clone for ExecuteTool
Source§fn clone(&self) -> ExecuteTool
fn clone(&self) -> ExecuteTool
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 Debug for ExecuteTool
impl Debug for ExecuteTool
Source§impl Default for ExecuteTool
impl Default for ExecuteTool
Source§fn default() -> ExecuteTool
fn default() -> ExecuteTool
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ExecuteTool
impl<'de> Deserialize<'de> for ExecuteTool
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Hash for ExecuteTool
impl Hash for ExecuteTool
Source§impl JsonSchema for ExecuteTool
impl JsonSchema for ExecuteTool
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl Ord for ExecuteTool
impl Ord for ExecuteTool
Source§fn cmp(&self, other: &ExecuteTool) -> Ordering
fn cmp(&self, other: &ExecuteTool) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for ExecuteTool
impl PartialEq for ExecuteTool
Source§impl PartialOrd for ExecuteTool
impl PartialOrd for ExecuteTool
Source§impl Serialize for ExecuteTool
impl Serialize for ExecuteTool
Source§impl SqliteServerTool for ExecuteTool
impl SqliteServerTool for ExecuteTool
Source§type Context = McpServerSqlite
type Context = McpServerSqlite
The server type passed to the handler on each invocation, typically
McpServerSqlite.Source§type Error = ToolError<ExecuteError>
type Error = ToolError<ExecuteError>
The error type returned by the handler. Must implement
IntoContents so
rmcp can render it as error content.Source§type Input = ExecuteInput
type Input = ExecuteInput
The deserialized input parameters received from the MCP client.
Source§type Output = ExecuteOutput
type Output = ExecuteOutput
The structured output returned to the MCP client on success.
Source§fn handle(
ctx: &Self::Context,
input: Self::Input,
) -> Result<Self::Output, Self::Error>
fn handle( ctx: &Self::Context, input: Self::Input, ) -> Result<Self::Output, Self::Error>
Executes the tool’s logic against the given context and input. Called
synchronously on the tokio blocking thread pool.
Source§fn tool() -> Tool
fn tool() -> Tool
Builds the rmcp
Tool definition for this tool, including its name,
description (extracted from the JsonSchema derive), input schema, and
output schema.Source§fn handler_func() -> fn(&<Self as SqliteServerTool>::Context, Parameters<<Self as SqliteServerTool>::Input>) -> Result<Json<<Self as SqliteServerTool>::Output>, <Self as SqliteServerTool>::Error>
fn handler_func() -> fn(&<Self as SqliteServerTool>::Context, Parameters<<Self as SqliteServerTool>::Input>) -> Result<Json<<Self as SqliteServerTool>::Output>, <Self as SqliteServerTool>::Error>
Returns a closure that deserializes the input parameters, calls
handle, and wraps the output in Json for structured MCP responses.
Every invocation is automatically traced with the tool name, duration,
and outcome. The closure is compatible with ToolRouter::with_route.impl Copy for ExecuteTool
impl Eq for ExecuteTool
impl StructuralPartialEq for ExecuteTool
Auto Trait Implementations§
impl Freeze for ExecuteTool
impl RefUnwindSafe for ExecuteTool
impl Send for ExecuteTool
impl Sync for ExecuteTool
impl Unpin for ExecuteTool
impl UnsafeUnpin for ExecuteTool
impl UnwindSafe for ExecuteTool
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