import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; export interface HealthStatus { auth: boolean; db: boolean; lastSync: string | null; uptime: number; } export interface HttpTransportHandle { close: () => Promise; port: number; host: string; sessionCount: () => number; } /** Factory result: McpServer + optional callback for client info from MCP initialize handshake */ export interface McpServerFactoryResult { server: McpServer; onClientInfo?: (info: { name: string; version: string; }) => void; } export interface HttpTransportOptions { healthCheck?: () => Promise | HealthStatus; sessionTimeoutMs?: number; maxSessions?: number; /** Reaper sweep interval in ms (default: 60000). Exposed for testing. */ reaperIntervalMs?: number; } /** * Start HTTP transport for daemon mode. * * @param createMcpServerFn Factory that creates a new McpServer per session. * Can return just an McpServer (backward compat) or { server, onClientInfo }. * @param port Port to bind to (default: 3100) * @param host Host to bind to (default: 127.0.0.1, localhost only for security) * @param options Session lifecycle and health check options * @returns Handle with close() for graceful shutdown */ export declare function startHttpTransport(createMcpServerFn: () => McpServer | McpServerFactoryResult | Promise, port?: number, host?: string, options?: HttpTransportOptions): Promise; //# sourceMappingURL=http-transport.d.ts.map