use clap::Args;
use std::path::PathBuf;
#[derive(Args)]
pub struct McpOptions {
#[arg(long, default_value = ".")]
pub root: PathBuf,
#[arg(long, default_value_t = 1_048_576, value_parser = parse_response_limit)]
pub max_response_bytes: usize,
}
fn parse_response_limit(raw: &str) -> Result<usize, String> {
let value = raw
.parse::<usize>()
.map_err(|_| "response limit must be a positive integer".to_string())?;
if value < 1024 {
return Err("response limit must be at least 1024 bytes".to_string());
}
Ok(value)
}