Skip to main content

prism_mcp_rs/utils/
mod.rs

1//! Utility functions and helpers for the MCP Rust SDK
2//!
3//! This module provides various utility functions for URI handling, validation,
4//! string manipulation, async helpers, and other common operations used throughout the SDK.
5
6pub mod async_helpers;
7pub mod string_utils;
8pub mod time;
9pub mod uri;
10pub mod validation;
11
12// Re-export commonly used utilities
13pub use async_helpers::*;
14pub use string_utils::*;
15pub use time::*;
16pub use uri::*;
17pub use validation::*;
18
19/// Common result type for utility functions
20pub type UtilResult<T> = Result<T, UtilError>;
21
22/// Utility function errors
23#[derive(Debug, thiserror::Error)]
24pub enum UtilError {
25    #[error("Invalid input: {0}")]
26    InvalidInput(String),
27
28    #[error("Validation failed: {0}")]
29    ValidationFailed(String),
30
31    #[error("Timeout occurred after {duration_ms}ms")]
32    Timeout { duration_ms: u64 },
33
34    #[error("IO error: {0}")]
35    Io(#[from] std::io::Error),
36
37    #[error("Serialization error: {0}")]
38    Serialization(#[from] serde_json::Error),
39}