use anyhow::{Context, Result};
use pforge_config::parse_config;
use pforge_runtime::McpServer;
use std::path::Path;
pub async fn execute(config_path: &str) -> Result<()> {
eprintln!("Starting pforge server...");
eprintln!(" Config: {}", config_path);
let config = parse_config(Path::new(config_path)).context("Failed to parse configuration")?;
eprintln!(" Server: {} v{}", config.forge.name, config.forge.version);
eprintln!(" Transport: {:?}", config.forge.transport);
eprintln!(" Tools: {}", config.tools.len());
eprintln!();
let server = McpServer::new(config);
server.run().await.context("Server error")?;
Ok(())
}