use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Serialize, Deserialize)]
pub struct McpToolInfo {
pub name: String,
pub description: String,
pub input_schema: serde_json::Value,
}
#[derive(Clone, Debug, Serialize, Deserialize)]
pub enum McpTransport {
Http { url: String },
Stdio { command: String, args: Vec<String> },
}
#[derive(Clone, Debug, Serialize, Deserialize)]
pub struct McpServerConfig {
pub name: String,
pub transport: McpTransport,
#[serde(default)]
pub auto_reconnect: bool,
}