AkurAI Build
Menu

Public repository / 0530b09e3daf6df75da3076c9559324ed6fbbc16

AkurAI-PassVault / crates/passvault-cli/src/cmd_mcp.rs

Latest change 653879bcf622c47638f5aab413ebab46937365ab - Initial: AkurAI-PassVault AES-256-GCM encrypted vault with MCP API by Claude Code

use passvault_mcp::server::{McpConfig, McpServer};
use std::env;

pub fn run() {
    let host = env::var("AKURAI_PASSVAULT_HOST").unwrap_or_else(|_| "127.0.0.1".into());
    let port: u16 = env::var("AKURAI_PASSVAULT_PORT")
        .ok()
        .and_then(|p| p.parse().ok())
        .unwrap_or(8102);
    let db_path = env::var("AKURAI_PASSVAULT_DB")
        .unwrap_or_else(|_| "data/passvault.db".into());
    let token = env::var("AKURAI_PASSVAULT_TOKEN")
        .expect("AKURAI_PASSVAULT_TOKEN must be set");
    let enc_key = env::var("AKURAI_PASSVAULT_KEY")
        .expect("AKURAI_PASSVAULT_KEY must be set (64 hex chars for AES-256)");

    let config = McpConfig { host: host.clone(), port, db_path, token, encryption_key: enc_key };
    let server = McpServer::new(config);

    eprintln!("akurai-passvault MCP server starting on {host}:{port}...");
    if let Err(e) = server.serve() {
        eprintln!("server error: {e}");
        std::process::exit(1);
    }
}