Expand description
Plugin System for Dynamic Tool Loading
This module provides a complete plugin system for dynamically loading and managing MCP tools at runtime. It supports:
- Dynamic library loading (.so, .dll, .dylib)
- Hot reloading without server restart
- Configuration-based plugin management
- Automatic tool discovery and registration
- Plugin isolation and lifecycle management
Re-exports§
pub use api::PluginBuilder;pub use api::PluginCapabilities;pub use api::PluginDependency;pub use api::PluginFactory;pub use api::PluginMetadata;pub use api::StandardPluginBuilder;pub use api::ToolPlugin;pub use crate::protocol::types::CallToolResult as ToolResult;pub use config::PluginConfig;pub use config::PluginManifest;pub use loader::PluginLoader;pub use manager::PluginManager;pub use registry::ToolRegistry;pub use watcher::PluginWatcher;pub use types::*;
Modules§
- api
- Plugin API definitions
- config
- Plugin configuration management
- loader
- Dynamic plugin loader
- manager
- registry
- Tool registry for managing plugin tools
- types
- Plugin system types and traits
- watcher
- File system watcher for plugin hot reload
Macros§
- export_
plugin - FIXED Macro to simplify plugin exports with correct ABI
Enums§
- Plugin
Error - Plugin system errors
- Plugin
Event - Plugin lifecycle events
Type Aliases§
- Plugin
Result - Result type for plugin operations