type JsonRpcRequest = { jsonrpc: '2.0'; id: number | string; method: string; params?: Record; }; type JsonRpcResponse = { jsonrpc: '2.0'; id: number | string | null; result?: T; error?: { code: number; message: string; data?: any; }; }; type McpClient = { callTool(name: string, args?: Record): Promise; readResource(uri: string): Promise; close(): Promise; }; declare function createMcpClient(opts: { baseUrl: string; fetchImpl?: (input: any, init?: any) => Promise; headers?: Record; }): McpClient; export { type JsonRpcRequest, type JsonRpcResponse, type McpClient, createMcpClient };