use crate::mcp_pmcp::tool_functions;
use async_trait::async_trait;
use pmcp::{Error, RequestHandlerExtra, Result, ToolHandler};
use serde::Deserialize;
use serde_json::Value;
use std::path::PathBuf;
use tracing::debug;
pub use self::{
ChurnTool as AnalyzeDeepContextTool, ComplexityTool as AnalyzeComplexityTool,
CouplingTool as AnalyzeBigOTool, DeadCodeTool as AnalyzeDeadCodeTool,
LintHotspotTool as AnalyzeDagTool, SatdTool as AnalyzeSatdTool,
TdgCompareTool as AnalyzeTdgCompareTool, TdgTool as AnalyzeTdgTool,
};
include!("analyze_complexity_handler.rs");
include!("analyze_debt_handlers.rs");
include!("analyze_metrics_handlers.rs");
include!("analyze_tdg_tool_handlers.rs");
include!("analyze_handlers_tests.rs");
include!("analyze_handlers_tests_tdg.rs");