/** * MCP Transports - Transport implementations for MCP * * Provides WebSocket, SSE, and HTTP streaming transports. */ /** * Transport message */ export interface TransportMessage { jsonrpc: '2.0'; id?: string | number; method?: string; params?: any; result?: any; error?: { code: number; message: string; data?: any; }; } /** * Transport interface */ export interface MCPTransport { /** Transport type */ readonly type: string; /** Connection status */ isConnected(): boolean; /** Connect to server */ connect(): Promise; /** Disconnect */ disconnect(): Promise; /** Send message */ send(message: TransportMessage): Promise; /** Set message handler */ onMessage(handler: (message: TransportMessage) => void): void; /** Set error handler */ onError(handler: (error: Error) => void): void; } /** * WebSocket Transport */ export declare class WebSocketTransport implements MCPTransport { readonly type = "websocket"; private url; private ws; private connected; private messageHandler?; private errorHandler?; private pendingRequests; constructor(url: string); isConnected(): boolean; connect(): Promise; disconnect(): Promise; send(message: TransportMessage): Promise; onMessage(handler: (message: TransportMessage) => void): void; onError(handler: (error: Error) => void): void; } /** * SSE (Server-Sent Events) Transport */ export declare class SSETransport implements MCPTransport { readonly type = "sse"; private url; private apiKey?; private connected; private eventSource; private messageHandler?; private errorHandler?; constructor(url: string, apiKey?: string); isConnected(): boolean; connect(): Promise; disconnect(): Promise; send(message: TransportMessage): Promise; onMessage(handler: (message: TransportMessage) => void): void; onError(handler: (error: Error) => void): void; } /** * HTTP Streaming Transport */ export declare class HTTPStreamTransport implements MCPTransport { readonly type = "http-stream"; private url; private apiKey?; private connected; private abortController; private messageHandler?; private errorHandler?; constructor(url: string, apiKey?: string); isConnected(): boolean; connect(): Promise; disconnect(): Promise; send(message: TransportMessage): Promise; onMessage(handler: (message: TransportMessage) => void): void; onError(handler: (error: Error) => void): void; } /** * Create transport by type */ export declare function createTransport(type: 'websocket' | 'sse' | 'http-stream', url: string, options?: { apiKey?: string; }): MCPTransport; declare const _default: { WebSocketTransport: typeof WebSocketTransport; SSETransport: typeof SSETransport; HTTPStreamTransport: typeof HTTPStreamTransport; createTransport: typeof createTransport; }; export default _default;