Expand description
§TurboMCP Core
Foundation crate for the Model Context Protocol (MCP) SDK providing core types, error handling, and optimized abstractions for building MCP applications.
§Features
- SIMD-Accelerated JSON - Fast processing with
simd-json
andsonic-rs
- Rich Error Handling - Comprehensive error types with context information
- Session Management - Configurable LRU eviction and lifecycle management
- Zero-Copy Processing - Memory-efficient message handling with
Bytes
- Request Context - Full request/response context tracking for observability
- Performance Optimized - Memory-bounded state management with cleanup tasks
- Observability Ready - Built-in support for tracing and metrics collection
§Architecture
turbomcp-core/
├── error/ # Error types and handling
├── message/ # Message types and serialization
├── types/ # Core protocol types
├── context/ # Request/response context
├── session/ # Session management
├── registry/ # Component registry
├── state/ # State management
└── utils/ # Utility functions
§Usage
This crate provides the foundation types and utilities used by other TurboMCP
crates.
It is typically not used directly but imported by the main turbomcp
SDK.
Re-exports§
pub use context::ClientId;
pub use context::ClientIdExtractor;
pub use context::ClientSession;
pub use context::RequestContext;
pub use context::RequestContextExt;
pub use context::RequestInfo;
pub use context::ResponseContext;
pub use error::Error;
pub use error::ErrorKind;
pub use error::Result;
pub use message::Message;
pub use message::MessageId;
pub use message::MessageMetadata;
pub use session::SessionAnalytics;
pub use session::SessionConfig;
pub use session::SessionManager;
pub use state::StateManager;
pub use types::ContentType;
pub use types::ProtocolVersion;
pub use types::Timestamp;
Modules§
- context
- Request and response context for rich metadata handling.
- error
- Comprehensive error handling with rich context preservation.
- error_
utils - Error handling utility functions for consistent error patterns
- message
- Optimized message types and serialization.
- registry
- Component registry system for extensible architecture.
- session
- Session management for
TurboMCP
applications - state
- State management utilities for MCP servers
- types
- Core protocol types and data structures.
- utils
- Utility functions and helper macros.
Macros§
- feature_
gate - Utility macro for conditional compilation based on features
- mcp_
error - Convenience macro for creating errors with context
- measure_
time - Utility macro for measuring execution time
- register_
component - Macro for easier component registration
Constants§
- DEFAULT_
TIMEOUT_ MS - Default timeout for operations in milliseconds
- MAX_
MESSAGE_ SIZE - Maximum message size in bytes (16MB)
- PROTOCOL_
VERSION - Current MCP protocol version supported by this SDK
- SDK_
NAME - SDK name identifier
- SDK_
VERSION - SDK version information
- SUPPORTED_
VERSIONS - Supported protocol versions for compatibility