The model context package manager
1use clap::{Parser, Subcommand};
2
3use crate::mcp;
4
5#[derive(Parser)]
6#[command(version, about, long_about = None, arg_required_else_help = true)]
7struct Cli {
8 #[command(subcommand)]
9 command: Option<Commands>,
10}
11
12#[derive(Subcommand)]
13enum Commands {
14 Init,
15 Mcp,
16}
17
18pub(crate) async fn run() {
19 let cli = Cli::parse();
20
21 if let Some(command) = cli.command {
22 match command {
23 Commands::Init => println!("Initializing new mcpkg package..."),
24 Commands::Mcp => mcp::run().await,
25 }
26 }
27}