#![forbid(unsafe_code)]
#![deny(missing_docs)]
mod canonical;
mod envelope;
mod error;
mod expr;
#[cfg(test)]
mod tests;
pub use canonical::{McpCodec, McpCodecLib};
pub use envelope::{
McpEnvelope, McpError, McpErrorEnvelope, McpNotification, McpRequest, McpResponse,
mcp_error_class_symbol, mcp_error_envelope_class_symbol, mcp_notification_class_symbol,
mcp_request_class_symbol, mcp_response_class_symbol,
};
pub use error::{
CANCELLED, CAPABILITY_DENIED, EXECUTION_ERROR, INTERNAL_ERROR, INVALID_PARAMS, INVALID_REQUEST,
METHOD_NOT_FOUND, NOT_FOUND, PARSE_ERROR, RATE_LIMITED,
};
pub use expr::{envelope_to_expr, expr_to_envelope};