use std::{collections::HashMap, sync::Arc}; use rand::{distributions::Alphanumeric, Rng}; use rmcp::{service::RunningService, RoleClient}; use tokio::sync::Mutex; #[derive(Default)] pub struct AppState { pub app_token: Option, pub mcp_servers: Arc>>> } pub fn generate_app_token() -> String { rand::thread_rng() .sample_iter(&Alphanumeric) .take(32) .map(char::from) .collect() }