/** * [WHO]: MCPManager class * [FROM]: Depends on mcp/mcp-client, mcp/mcp-adapter, mcp/mcp-config, extensions * [TO]: Consumed by core/index.ts, core/runtime/sdk.ts * [HERE]: core/mcp/mcp-manager.ts - MCP client lifecycle and tool integration */ import { MCPClient } from "./mcp-client.js"; import type { ToolDefinition } from "../extensions-host/index.js"; export interface MCPManagerOptions { mcpConfigPath?: string; } export declare class MCPManager { private client; private tools; private enabledServerIds; private startedServerIds; private failedServerIds; private workingDir; private mcpConfigPath?; constructor(options?: MCPManagerOptions); /** * Set the working directory for MCP servers (e.g., user's project dir) */ setWorkingDir(dir: string): void; /** * Initialize MCP manager and load tools */ initialize(): Promise; /** * Resolve dynamic placeholders in server configuration */ private resolveServerConfig; /** * Get all MCP tools as Catui ToolDefinitions */ getTools(): ToolDefinition[]; /** * Get the MCP client instance */ getClient(): MCPClient; getStatus(): { enabledServers: string[]; startedServers: string[]; failedServers: string[]; toolCount: number; }; /** * Cleanup: stop all servers */ dispose(): void; }