1#![forbid(unsafe_code)]
9
10pub mod apps;
11pub mod auth;
12#[cfg(feature = "auto-register")]
13mod auto;
14mod completion;
15mod context;
16mod error;
17mod extension;
18mod hints;
19pub mod jsonrpc;
20mod legacy;
21mod limits;
22mod mirror;
23mod mrtr;
24mod notify;
25mod prompt;
26mod resource;
27pub mod security;
28mod server;
29#[cfg(feature = "test-client")]
30pub mod testing;
31mod tool;
32pub mod transport;
33mod uri_template;
34
35pub use flymcprust_spec::v2026_07_28 as spec;
37
38pub use apps::{AppUi, Permission, Visibility};
39pub use auth::{Principal, TokenError, TokenVerifier};
40pub use completion::{CompleteFn, Completion, CompletionRequest, MAX_COMPLETION_VALUES};
41pub use context::{Ctx, State, TransportContext};
42pub use error::{ErrorKind, McpError};
43pub use extension::Extension;
44pub use legacy::{LEGACY_PROTOCOL_VERSIONS, LegacySession, is_legacy_version};
45pub use limits::{Limits, MAX_SUPPORTED_JSON_DEPTH};
46pub use mirror::{MirroredParam, ParamKind};
47pub use mrtr::{Elicitation, MIN_REQUEST_STATE_KEY_BYTES};
48pub use prompt::{
49 GetFn, IntoContent, IntoPromptResult, Prompt, PromptArguments, PromptDef, PromptFuture, message,
50};
51pub use resource::{
52 IntoResourceContents, ReadFn, Resource, ResourceContents, ResourceDef, ResourceFuture,
53 parse_optional_uri_var, parse_uri_var,
54};
55pub use server::{BuildError, McpRequest, Server, ServerBuilder};
56pub use tool::{
57 CallFn, IntoToolError, IntoToolResult, Json, StateRequirement, Tool, ToolDef, ToolError,
58 ToolFuture, ToolOutput, ToolResult, input_schema_for, output_schema_from, parse_arguments,
59 schema_for,
60};
61pub use uri_template::{UriTemplate, UriTemplateError, UriVars};
62
63#[cfg(feature = "auto-register")]
64pub use auto::{AutoPrompt, AutoResource, AutoTool};
65#[cfg(feature = "auto-register")]
66#[doc(hidden)]
67pub use inventory as __inventory;