pub struct ServerConfig {
pub server_info: ServerInfo,
pub capabilities: ServerCapabilities,
pub protocol_version: ProtocolVersion,
pub instructions: Option<String>,
}Expand description
Core MCP server configuration required by all transports
This contains only the universal MCP requirements that every transport needs, regardless of transport type (STDIO, HTTP, WebSocket, etc.). This configuration defines the fundamental server identity, capabilities, and protocol compliance that must be consistent across all transport implementations.
§Architecture
This struct represents the protocol-level server configuration that sits at the foundation of the MCP transport abstraction. All transport-specific configurations should embed this as their core configuration to ensure protocol compliance.
§Examples
use airsprotocols_mcp::protocol::types::{ServerConfig, ServerInfo, ServerCapabilities, ProtocolVersion};
// Default configuration
let config = ServerConfig::default();
// Custom configuration
let config = ServerConfig {
server_info: ServerInfo {
name: "my-mcp-server".to_string(),
version: "1.0.0".to_string(),
},
capabilities: ServerCapabilities::default(),
protocol_version: ProtocolVersion::current(),
instructions: Some("Custom server instructions".to_string()),
};Fields§
§server_info: ServerInfoServer information to send during initialization
capabilities: ServerCapabilitiesServer capabilities to advertise
protocol_version: ProtocolVersionProtocol version to support
instructions: Option<String>Optional instructions to provide to clients during initialization
Trait Implementations§
Source§impl Clone for ServerConfig
impl Clone for ServerConfig
Source§fn clone(&self) -> ServerConfig
fn clone(&self) -> ServerConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more