Expand description
Configuration module for MCP Runner.
This module handles parsing, validation, and access to configuration settings for MCP servers. It supports loading configurations from files or strings in JSON format.
§Examples
Loading a configuration from a file:
use mcp_runner::config::Config;
let config = Config::from_file("config.json").unwrap();
println!("Loaded configuration with {} servers", config.mcp_servers.len());Creating a configuration programmatically:
use mcp_runner::{McpRunner, config::{Config, ServerConfig}};
use std::collections::HashMap;
let mut servers = HashMap::new();
let server_config = ServerConfig {
command: "uvx".to_string(),
args: vec!["mcp-server-fetch".to_string()],
env: HashMap::new(),
};
servers.insert("fetch".to_string(), server_config);
// sse_proxy is optional, so we can use None
let config = Config {
mcp_servers: servers,
sse_proxy: None,
};
let runner = McpRunner::new(config);Re-exports§
pub use validator::validate_config;
Modules§
- validator
- Configuration validation module.
Structs§
- Auth
Config - Authentication configuration for SSE Proxy
- Bearer
Auth Config - Bearer token authentication configuration
- Config
- Main configuration for the MCP Runner.
- SSEProxy
Config - Server-Sent Events (SSE) Proxy configuration
- Server
Config - Configuration for a single MCP server instance.
Constants§
- DEFAULT_
ADDRESS - Constants for default configuration values Default address for the SSE proxy server (localhost)
- DEFAULT_
PORT - Default port for the SSE proxy server
- DEFAULT_
WORKERS - Default number of worker threads for the Actix Web server