sqlserver-mcp 0.5.3

SQL Server 2025/2022/2019/2017 - master/msdb/sandbox combined catalog MCP server, generated by mcpify.
Documentation
// SQL Server 2025 - master/msdb/sandbox combined catalog MCP server — generated by mcpify. Do not hand-edit.

use sqlserver_mcp_catalog::auth::auth_manager::AuthManager;
use sqlserver_mcp_catalog::core::config_manager::load_config;
use sqlserver_mcp_catalog::core::errors::McpifyError;
use sqlserver_mcp_catalog::data::store::{cached_store_connection, get_endpoint};
use sqlserver_mcp_catalog::tools::call_tool::call_operation;

pub async fn run(operation_id: &str, args_json: &str) -> anyhow::Result<()> {
    let config = load_config(serde_json::Map::new())?;
    let mut auth_manager = AuthManager::new(config.auth_method);
    let args: serde_json::Value = serde_json::from_str(args_json)?;

    let endpoint = {
        let conn = cached_store_connection(&config.api_version)?
            .lock()
            .unwrap_or_else(std::sync::PoisonError::into_inner);
        get_endpoint(&conn, operation_id)?
            .ok_or_else(|| McpifyError::NotFound(format!("unknown operationId '{operation_id}'")))?
    };

    let result = call_operation(&endpoint, &config, &mut auth_manager, operation_id, args).await?;
    println!("{}", serde_json::to_string_pretty(&result)?);
    Ok(())
}