import { JSONRPCMessage } from '@modelcontextprotocol/sdk/types.js'; import { Transport } from '@modelcontextprotocol/sdk/shared/transport.js'; import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js'; import type { OAuthClientProvider } from '@modelcontextprotocol/sdk/client/auth.js'; import type { LogStorageService } from '../../services/log-storage.service.js'; /** * Hybrid transport: launches a local process (via ProcessLauncher) and communicates via StreamableHTTP. * Used for MCP servers that are started locally with --http flags (e.g. via uvx/npx) * and expose an HTTP endpoint instead of using stdio for MCP protocol. * * Internally delegates process management to ProcessLauncher (zero MCP dependency) * and MCP communication to SDK's StreamableHTTPClientTransport. */ export declare class StreamableHttpLocalTransport implements Transport { private _command; private _args; private _env; private _url; private _headers; private _timeout; private _proxy?; private _authProvider?; private _readyPatterns?; private _readyTimeout; private _process; private _httpTransport; private _isStarted; private _isClosing; private _serverName?; private _compositeKey?; private _logStorage?; onclose?: () => void; onerror?: (error: Error) => void; onmessage?: (message: JSONRPCMessage) => void; onstderr?: (data: string) => void; constructor(_command: string, _args: string[], _env: Record | undefined, _url: string, _headers?: Record, _timeout?: number, _proxy?: { url: string; } | undefined, _authProvider?: OAuthClientProvider | undefined, serverName?: string, compositeKey?: string, _readyPatterns?: string[] | undefined, _readyTimeout?: number, logStorage?: LogStorageService); private formatLogMessage; get pid(): number | undefined; get stderr(): import("node:stream").Readable | null; start(): Promise; close(): Promise; send(message: JSONRPCMessage): Promise; /** * Returns the OAuth provider if configured, for connection manager to handle auth flow. */ getOAuthProvider(): OAuthClientProvider | undefined; /** * Returns the underlying SDK transport for auth flow management. */ getSdkTransport(): StreamableHTTPClientTransport | null; } //# sourceMappingURL=streamable-http-local-transport.d.ts.map