#[non_exhaustive]pub enum MessageMcpResponse {
Result {
result: Value,
meta: Option<Map<String, Value>>,
},
Error {
error: McpError,
meta: Option<Map<String, Value>>,
},
}unstable_mcp_over_acp and unstable_protocol_v2 only.Expand description
UNSTABLE
The successful outer ACP mcp/message response carries exactly one
inner MCP outcome: an opaque result (including JSON null), or an MCP error.
Outer ACP errors are reserved for binding and runtime failures.
Both branches require their carrier key. An error must be a non-null object.
Unknown outer fields are ignored; inner result and error fields are preserved.
Carrier _meta is optional; null or invalid values are treated as absent.
Senders must include exactly one outcome; receivers prefer result if both are present.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Result
An opaque inner MCP result.
Fields
meta: Option<Map<String, Value>>The _meta property is reserved by ACP to allow clients and agents to attach additional
metadata to their interactions. Omitted and null are equivalent and mean no metadata.
Implementations MUST NOT make assumptions about values at these keys.
This is ACP metadata, not the inner MCP message’s _meta.
See protocol docs: Extensibility
Error
A structured inner MCP error.
Fields
meta: Option<Map<String, Value>>The _meta property is reserved by ACP to allow clients and agents to attach additional
metadata to their interactions. Omitted and null are equivalent and mean no metadata.
Implementations MUST NOT make assumptions about values at these keys.
This is ACP metadata, not the inner MCP message’s _meta.
See protocol docs: Extensibility
Implementations§
Source§impl MessageMcpResponse
impl MessageMcpResponse
Sourcepub fn success(result: Value) -> MessageMcpResponse
pub fn success(result: Value) -> MessageMcpResponse
Wrap any JSON result without interpreting its MCP result type.
Sourcepub fn error(error: McpError) -> MessageMcpResponse
pub fn error(error: McpError) -> MessageMcpResponse
Wrap an inner MCP error in a successful outer ACP response.
Sourcepub fn meta(
self,
meta: impl IntoOption<Map<String, Value>>,
) -> MessageMcpResponse
pub fn meta( self, meta: impl IntoOption<Map<String, Value>>, ) -> MessageMcpResponse
Attach optional carrier-level ACP metadata.
Trait Implementations§
Source§impl Clone for MessageMcpResponse
impl Clone for MessageMcpResponse
Source§fn clone(&self) -> MessageMcpResponse
fn clone(&self) -> MessageMcpResponse
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MessageMcpResponse
impl Debug for MessageMcpResponse
Source§impl<'de> Deserialize<'de> for MessageMcpResponse
impl<'de> Deserialize<'de> for MessageMcpResponse
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<MessageMcpResponse, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<MessageMcpResponse, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
impl Eq for MessageMcpResponse
Source§impl JsonRpcResponse for MessageMcpResponse
impl JsonRpcResponse for MessageMcpResponse
Source§impl JsonSchema for MessageMcpResponse
impl JsonSchema for MessageMcpResponse
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for MessageMcpResponse
impl PartialEq for MessageMcpResponse
Source§impl Serialize for MessageMcpResponse
impl Serialize for MessageMcpResponse
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for MessageMcpResponse
Auto Trait Implementations§
impl Freeze for MessageMcpResponse
impl RefUnwindSafe for MessageMcpResponse
impl Send for MessageMcpResponse
impl Sync for MessageMcpResponse
impl Unpin for MessageMcpResponse
impl UnsafeUnpin for MessageMcpResponse
impl UnwindSafe for MessageMcpResponse
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.