ai-debug-local-mcp
Version:
🎯 ENHANCED AI GUIDANCE v4.1.2: Dramatically improved tool descriptions help AI users choose the right tools instead of 'close enough' options. Ultra-fast keyboard automation (10x speed), universal recording, multi-ecosystem debugging support, and compreh
111 lines • 2.94 kB
TypeScript
export interface LazyHandlerConfig {
priority?: 'high' | 'medium' | 'low';
loadOnDemand?: boolean;
toolNames?: string[];
category?: string;
}
export interface HandlerConstructor {
new (...args: any[]): any;
}
export interface LoadingError {
handlerName: string;
error: Error;
timestamp: Date;
retryCount: number;
}
export interface FallbackConfig {
retryAttempts?: number;
fallbackToEager?: boolean;
notifyOnFailure?: boolean;
}
/**
* LazyHandlerRegistry - Implements lazy loading for MCP handlers
* Target: 30% startup time improvement through on-demand loading
*/
export declare class LazyHandlerRegistry {
private lazyHandlers;
private loadedHandlers;
private loadingErrors;
private fallbackConfig;
/**
* Register a handler for lazy loading
*/
registerLazyHandler(name: string, constructor: () => any, config?: LazyHandlerConfig): void;
/**
* Check if a handler is loaded
*/
isHandlerLoaded(name: string): boolean;
/**
* Get count of loaded handlers
*/
getLoadedHandlerCount(): number;
/**
* Get total registered handler count
*/
getTotalHandlerCount(): number;
/**
* Load a specific handler on demand
*/
loadHandler(name: string): Promise<any | null>;
/**
* Get all available tools from loaded and lazy handlers
*/
getAllAvailableTools(): Promise<Array<{
name: string;
description?: string;
}>>;
/**
* Get available tool names without loading handlers (fast discovery)
*/
getAvailableToolNames(): string[];
/**
* Execute a tool from a specific handler (loads handler if needed)
*/
executeToolFromHandler(handlerName: string, toolName: string, args: any): Promise<any>;
/**
* Configure fallback behavior
*/
configureFallback(config: FallbackConfig): void;
/**
* Get loading errors
*/
getLoadingErrors(): LoadingError[];
/**
* Get failure notifications
*/
getFailureNotifications(): Array<{
handlerName: string;
message: string;
timestamp: Date;
}>;
/**
* Clear all handlers and reset registry
*/
clear(): void;
/**
* Get handler categories
*/
getHandlersByCategory(category: string): string[];
/**
* Load handlers by priority
*/
loadHandlersByPriority(priority: 'high' | 'medium' | 'low'): Promise<string[]>;
/**
* Get performance metrics
*/
getPerformanceMetrics(): {
totalRegistered: number;
totalLoaded: number;
loadingEfficiency: number;
failureRate: number;
};
/**
* Record loading error
*/
private recordLoadingError;
}
/**
* Global lazy handler registry instance
*/
export declare const globalLazyHandlerRegistry: LazyHandlerRegistry;
//# sourceMappingURL=lazy-handler-registry.d.ts.map