UNPKG

@toolprint/hypertool-mcp

Version:

HyperTool MCP proxy server for routing requests between clients and multiple underlying MCP servers

118 lines • 3.49 kB
/** * Extension Manager * Orchestrates extension discovery, configuration, validation, and runtime management */ import { ExtensionRuntimeConfig, ValidationResult } from "../config/dxt-config.js"; /** * Extension manager coordinates all extension operations */ export declare class ExtensionManager { private discoveryService; private readonly validationService; private readonly configManager; private runtimeConfigs; private initialized; constructor(configPath?: string, extensionsBaseDir?: string); /** * Initialize the extension system */ initialize(): Promise<void>; /** * Load and validate all extensions */ loadExtensions(): Promise<ExtensionRuntimeConfig[]>; /** * Get all runtime configurations */ getRuntimeConfigs(): ExtensionRuntimeConfig[]; /** * Get enabled runtime configurations only */ getEnabledConfigs(): ExtensionRuntimeConfig[]; /** * Get runtime configuration for a specific extension */ getExtensionConfig(name: string): ExtensionRuntimeConfig | undefined; /** * Enable an extension */ enableExtension(name: string): Promise<void>; /** * Disable an extension */ disableExtension(name: string): Promise<void>; /** * Update extension user configuration */ updateExtensionUserConfig(name: string, userConfig: Record<string, any>): Promise<ValidationResult>; /** * Install a new extension from DXT file */ installExtension(dxtPath: string): Promise<{ success: boolean; message: string; name?: string; }>; /** * Refresh all extensions (re-unpack if needed) */ refreshExtensions(): Promise<void>; /** * Get validation report for an extension */ getValidationReport(name: string): string | undefined; /** * Get configuration suggestions for fixing validation errors */ getConfigSuggestions(name: string): string[]; /** * List all extensions with their status */ listExtensions(): Array<{ name: string; enabled: boolean; valid: boolean; version: string; description?: string; errors: string[]; warnings: string[]; }>; /** * Get extension directory path */ getExtensionsDirectory(): string; /** * Set extension directory and refresh */ setExtensionsDirectory(directory: string): Promise<void>; /** * Check if auto-discovery is enabled */ isAutoDiscoveryEnabled(): boolean; /** * Enable/disable auto-discovery */ setAutoDiscovery(enabled: boolean): Promise<void>; /** * Remove an extension */ removeExtension(name: string): Promise<void>; /** * Get extension metadata */ getExtensionMetadata(name: string): import("../config/dxt-config.js").ExtensionMetadata | undefined; /** * Get all extension metadata */ getAllMetadata(): Record<string, import("../config/dxt-config.js").ExtensionMetadata>; /** * Create a server configuration that can be used with the connection factory * This replaces the old DXT server type approach */ createServerConfigForExtension(name: string): any; /** * Get all enabled extensions as server configs for connection factory */ getEnabledExtensionsAsServerConfigs(): Record<string, any>; } //# sourceMappingURL=manager.d.ts.map