pub mod error;
pub use schemars::JsonSchema;
pub use schemars::{self};
#[cfg(feature = "cli")]
pub mod cli;
#[cfg(feature = "rest")]
pub mod rest;
#[cfg(feature = "mcp")]
pub mod mcp;
pub use universal_tool_macros::universal_tool;
pub use universal_tool_macros::universal_tool_router;
pub mod prelude {
pub use universal_tool_macros::universal_tool;
pub use universal_tool_macros::universal_tool_router;
pub use crate::error::ErrorCode;
pub use crate::error::ToolError;
pub use schemars::JsonSchema;
#[cfg(feature = "cli")]
pub use crate::cli::CliFormatter;
#[cfg(feature = "cli")]
pub use crate::cli::OutputFormat;
#[cfg(feature = "cli")]
pub use crate::cli::ProgressReporter;
#[cfg(feature = "rest")]
pub use crate::rest::{
IntoResponse,
Json,
Path,
Query,
Response,
State,
StatusCode,
axum,
tower,
tower_http,
};
#[cfg(feature = "openapi")]
pub use crate::rest::utoipa;
#[cfg(feature = "openapi")]
pub use crate::rest::utoipa_swagger_ui;
#[cfg(feature = "mcp")]
pub use crate::mcp::{
CancellationToken,
IntoCallToolResult,
JsonValue,
McpError,
McpErrorData,
McpProgressReporter,
NumberOrString,
ProgressNotification,
ProgressToken,
ServerHandler,
ToolAnnotations,
ToolMetadata,
convert_tool_definitions,
error_codes,
extract_parameter_schema,
generate_schema,
json,
rmcp,
stdio,
};
#[cfg(feature = "mcp")]
pub use crate::implement_mcp_server;
}