#![deny(missing_docs)]
pub mod adapter_peer;
pub mod builder;
pub mod capability;
pub mod context;
pub mod dispatch;
pub mod handler;
pub mod health;
pub mod metrics;
pub mod router;
pub mod server;
pub mod state;
#[cfg(feature = "tokio")]
pub mod streams;
#[cfg(feature = "schema-validation")]
pub mod validation;
pub use builder::{FullServer, MinimalServer, NotRegistered, Registered, Server, ServerBuilder};
pub use context::{CancellationToken, CancelledFuture, Context, ContextData, NoOpPeer, Peer};
pub use handler::{
CompletionHandler, LogLevel, PromptHandler, ResourceHandler, ServerHandler, TaskHandler,
ToolHandler,
};
pub use health::{
ComponentHealth, HealthChecker, HealthReport, HealthStatus, LivenessResponse, ReadinessResponse,
};
pub use metrics::{MethodStats, MetricsSnapshot, ServerMetrics};
pub use router::{
AugmentedTaskOutcome, begin_augmented_task, call_tool_json, dispatch_notification_hooks,
route_completion, route_logging, route_prompts, route_resources, route_tools,
run_augmented_tool, tool_task_support,
};
pub use server::{
RequestRouter, RuntimeConfig, ServerNotifier, ServerRuntime, ServerState, TransportPeer,
};
#[cfg(feature = "schema-validation")]
pub use validation::{ValidatingToolHandler, ValidationMode, validate_json};
pub mod prelude {
pub use crate::builder::{
FullServer, MinimalServer, NotRegistered, Registered, Server, ServerBuilder,
};
pub use crate::context::{
CancellationToken, CancelledFuture, Context, ContextData, NoOpPeer, Peer,
};
pub use crate::handler::{
CompletionHandler, LogLevel, PromptHandler, ResourceHandler, ServerHandler, TaskHandler,
ToolHandler,
};
pub use crate::metrics::{MethodStats, MetricsSnapshot, ServerMetrics};
}