pub struct McpConnector { /* private fields */ }Expand description
Exposes a remote MCP connection as a Code Mode connector.
Implementations§
Source§impl McpConnector
impl McpConnector
Sourcepub fn new(name: impl Into<String>, client: Arc<dyn McpClient>) -> Self
pub fn new(name: impl Into<String>, client: Arc<dyn McpClient>) -> Self
Creates an MCP-backed connector.
Sourcepub fn with_instructions(self, instructions: impl Into<String>) -> Self
pub fn with_instructions(self, instructions: impl Into<String>) -> Self
Adds server-level model instructions.
Sourcepub fn with_policy_resolver(self, resolver: Arc<dyn ToolPolicyResolver>) -> Self
pub fn with_policy_resolver(self, resolver: Arc<dyn ToolPolicyResolver>) -> Self
Overrides policy resolution for remote MCP tools.
Trait Implementations§
Source§impl Connector for McpConnector
impl Connector for McpConnector
Source§fn describe<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<ConnectorDescription, String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn describe<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<ConnectorDescription, String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Returns connector metadata and schemas.
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
method: &'life1 str,
arguments: Value,
_context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<Value, String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
method: &'life1 str,
arguments: Value,
_context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<Value, String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Executes one connector method.
Source§fn revert<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_method: &'life1 str,
_arguments: Value,
_result: Value,
_context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<bool, String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn revert<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_method: &'life1 str,
_arguments: Value,
_result: Value,
_context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<bool, String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Compensates a previously applied connector action.
Source§fn pass_ended<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_execution_id: &'life1 str,
_status: &'life2 str,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn pass_ended<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_execution_id: &'life1 str,
_status: &'life2 str,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Releases resources scoped to one sandbox pass.
Source§fn execution_ended<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_execution_id: &'life1 str,
_status: &'life2 str,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn execution_ended<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_execution_id: &'life1 str,
_status: &'life2 str,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Releases resources scoped to a complete execution.
Auto Trait Implementations§
impl !Freeze for McpConnector
impl !RefUnwindSafe for McpConnector
impl !UnwindSafe for McpConnector
impl Send for McpConnector
impl Sync for McpConnector
impl Unpin for McpConnector
impl UnsafeUnpin for McpConnector
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