AkurAI Build
Menu

Public repository / c2f43d4988686a5b5142bb6dd4255f9b473792dc

AkurAI-Notes / crates/notes-cli/src/cmd_mcp.rs

Latest change b78e3a5270c5c5e1b0b04f1da8da4899aa5e4e22 - E06: HTTPS MCP server at /mcp — server.rs + tools.rs + cmd_mcp.rs + bearer auth by Claude Code

use notes_mcp::server::{McpConfig, McpServer};

pub struct McpRunConfig {
    pub host: String,
    pub port: u16,
    pub db: String,
    pub token: String,
    pub embed_url: String,
    pub embed_model: String,
    pub owner_sub: String,
}

pub fn run(cfg: McpRunConfig) -> Result<(), Box<dyn std::error::Error>> {
    let mcp_cfg = McpConfig {
        host: cfg.host,
        port: cfg.port,
        db: cfg.db,
        token: cfg.token,
        embed_url: if cfg.embed_url.is_empty() {
            None
        } else {
            Some(cfg.embed_url)
        },
        embed_model: if cfg.embed_model.is_empty() {
            None
        } else {
            Some(cfg.embed_model)
        },
        owner_sub: cfg.owner_sub,
    };
    let server = McpServer::new(mcp_cfg)?;
    server.serve().map_err(|e| e.into())
}