UNPKG

@toolprint/hypertool-mcp

Version:

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

61 lines • 2.47 kB
/** * Enhanced Connection Factory with Extension Support * Integrates the new extension system with the existing connection factory */ import { ServerConfig } from "../types/config.js"; import { Connection, ConnectionOptions, ConnectionFactory as IConnectionFactory } from "./types.js"; import { ExtensionManager } from "../extensions/manager.js"; /** * Enhanced connection factory that supports both regular MCP servers and extensions */ export declare class ExtensionAwareConnectionFactory implements IConnectionFactory { private readonly baseFactory; private extensionManager?; constructor(); /** * Set the extension manager for extension support */ setExtensionManager(extensionManager: ExtensionManager): void; /** * Create a connection that may come from extensions or regular config */ createConnection(serverName: string, config: ServerConfig, options?: ConnectionOptions): Connection; /** * Get all available server configurations (MCP servers + enabled extensions) */ getAllServerConfigs(): Promise<Record<string, ServerConfig>>; /** * Check if a server name is available (either as extension or regular config) */ isServerAvailable(serverName: string): Promise<boolean>; /** * List all available server names (extensions + regular servers) */ listAvailableServers(): Promise<string[]>; /** * Get server information including type and status */ getServerInfo(serverName: string): Promise<{ name: string; type: "extension" | "mcp"; enabled: boolean; valid?: boolean; version?: string; description?: string; errors?: string[]; warnings?: string[]; } | undefined>; /** * Refresh all extensions and reload configurations */ refresh(): Promise<void>; /** * Delegate to base factory for regular operations */ createStdioConnection(serverName: string, config: any, options?: ConnectionOptions): import("./clients/stdio.js").StdioConnection; createHttpConnection(serverName: string, config: any, options?: ConnectionOptions): import("./clients/http.js").HttpConnection; createSSEConnection(serverName: string, config: any, options?: ConnectionOptions): import("./index.js").SSEConnection; isConfigSupported(config: ServerConfig): boolean; getSupportedTransports(): string[]; } //# sourceMappingURL=extensionFactory.d.ts.map