systemprompt_models/mcp/call_tool_result_ext.rs
1//! `CallToolResultExt`: typed metadata extraction from MCP tool results.
2//!
3//! Copyright (c) systemprompt.io — Business Source License 1.1.
4//! See <https://systemprompt.io> for licensing details.
5
6use super::McpToolResultMetadata;
7use crate::errors::MetadataError;
8use rmcp::model::CallToolResult;
9
10pub trait CallToolResultExt {
11 fn get_mcp_metadata(&self) -> Result<McpToolResultMetadata, MetadataError>;
12}
13
14impl CallToolResultExt for CallToolResult {
15 fn get_mcp_metadata(&self) -> Result<McpToolResultMetadata, MetadataError> {
16 McpToolResultMetadata::from_call_tool_result(self)
17 }
18}