//! Tool trait, registry-facing types, and per-call context. pub mod kinds; pub mod events; pub mod context; pub mod erase; pub mod macros; pub use kinds::{ClientKind, ProtocolKind, ToolKind}; pub use events::{ PermissionRequestId, ToolEvent, ToolEventSink, ToolLocation, ToolResultContent, }; pub use context::ToolContext; pub use erase::{AnyTool, AnyToolInput, Erased, Tool, ToolInput};