smalltalk-ai
Version:
A complete TypeScript framework for building LLM applications with agent support and MCP integration
44 lines • 1.63 kB
TypeScript
import { EventEmitter } from 'events';
import { MCPServerConfig, ToolDefinition, PromptTemplate } from '../types/index.js';
export interface MCPResource {
uri: string;
name?: string;
description?: string;
mimeType?: string;
}
export interface MCPPrompt {
name: string;
description?: string;
arguments?: Array<{
name: string;
description?: string;
required?: boolean;
}>;
}
export declare class MCPClient extends EventEmitter {
private clients;
private serverConfigs;
private isConnected;
constructor();
connect(serverConfig: MCPServerConfig): Promise<void>;
private createClient;
disconnect(serverName?: string): Promise<void>;
getAvailableTools(): Promise<ToolDefinition[]>;
executeTool(serverName: string, toolName: string, parameters: Record<string, unknown>): Promise<unknown>;
getAvailableResources(): Promise<MCPResource[]>;
readResource(uri: string): Promise<string | undefined>;
getAvailablePrompts(): Promise<MCPPrompt[]>;
getPrompt(serverName: string, promptName: string, arguments_?: Record<string, string>): Promise<PromptTemplate | undefined>;
getConnectedServers(): string[];
isServerConnected(serverName: string): boolean;
getServerConfig(serverName: string): MCPServerConfig | undefined;
testConnection(serverName: string): Promise<boolean>;
getStats(): {
connectedServers: number;
serverNames: string[];
isConnected: boolean;
};
reconnect(serverName: string): Promise<void>;
reconnectAll(): Promise<void>;
}
//# sourceMappingURL=MCPClient.d.ts.map