/** * MCP Client Manager * * Manages connections to stdio MCP servers and provides a unified interface * for listing and executing tools. */ export interface McpServerConfig { id: string; name: string; type: 'stdio'; enabled: boolean; command?: string; args?: string[]; env?: { key: string; value: string; }[]; } export interface McpTool { name: string; description: string; inputSchema: any; serverId: string; /** Best label for UI: from MCP `initialize` serverInfo.name, else static config. */ serverName: string; } /** What the running MCP process reported in `initialize` (owner-defined, not from our DB). */ export type McpProcessMeta = { name: string; version?: string; /** Optional instruction text from the MCP spec (initialize). */ instructions?: string; }; export declare class McpClientManager { private connections; private configs; constructor(configs?: McpServerConfig[]); /** * Update the MCP server configurations */ updateConfigs(configs: McpServerConfig[]): void; /** * Connect to all enabled MCP servers */ connectAll(): Promise; /** * Connect to a single MCP server */ private connect; /** * Connect to a stdio-based MCP server */ private connectStdio; /** * Disconnect from all MCP servers */ disconnectAll(): Promise; /** * Disconnect from a single MCP server */ private disconnect; /** * Get all available tools from all connected MCP servers */ getAllTools(): McpTool[]; /** * Execute a tool on an MCP server */ executeTool(serverId: string, toolName: string, args: any): Promise; /** * Get connection status for all configured servers */ getStatus(): Array<{ id: string; name: string; connected: boolean; toolCount: number; }>; /** * Live MCP metadata (initialize + tool count) per configured id — for UI; not from the gateway DB. */ getMcpProcessMetaByServerId(): Array<{ serverId: string; connected: boolean; toolCount: number; mcp: McpProcessMeta | null; }>; } //# sourceMappingURL=client.d.ts.map