import type { CallToolResult, ClientCapabilities, GetPromptResult, InitializeResult, Prompt, Tool } from "../mcp/20251125/types.js"; import type { Transport } from "../transport/types.js"; import type { MCPClientOptions } from "./types.js"; export declare const DEFAULT_MCP_CLIENT_NAME = "MCP Client"; export declare const DEFAULT_MCP_CLIENT_VERSION = "0.0.0"; export declare class MCPClient { readonly name: string; readonly version: string; readonly capabilities: ClientCapabilities; private transport?; private isInitialized; private protocolVersion?; private logger; private requestId; private transportOptions; private pendingRequests; constructor(options?: MCPClientOptions); /** * Connect to an MCP server using the provided transport */ connect(transport: Transport): Promise; /** * Initialize the connection with the server * This conforms to https://modelcontextprotocol.io/specification/2025-11-25/basic/lifecycle#initialization */ initialize(protocolVersion?: string): Promise; /** * Send a ping request to the server */ ping(): Promise; /** * List all available tools from the server */ listTools(): Promise; /** * Call a specific tool with provided arguments */ callTool(name: string, args?: Record): Promise; /** * List all available prompts from the server */ listPrompts(): Promise; /** * Get a prompt with provided arguments */ getPrompt(name: string, args?: Record): Promise; /** * Disconnect from the server */ disconnect(): Promise; private sendRequest; private sendNotification; }