import { type Server } from "node:http"; import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js"; import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; export interface HttpMcpServerOptions { /** Port to listen on. Defaults to BPX_MCP_PORT env var or 3848. */ port?: number; /** Bearer token for authentication. Defaults to BPX_MCP_TOKEN env var. */ bearerToken?: string; /** Enable stateful sessions (generates session IDs). Defaults to true. */ stateful?: boolean; /** Enable JSON responses instead of SSE streams. Defaults to false. */ enableJsonResponse?: boolean; } export interface HttpMcpServerResult { /** The underlying Node.js HTTP server. */ httpServer: Server; /** The StreamableHTTPServerTransport instance. */ transport: StreamableHTTPServerTransport; /** The resolved port the server is listening on. */ port: number; /** Close the server and transport gracefully. */ close: () => Promise; } /** * Create an HTTP server that serves the MCP protocol via Streamable HTTP transport. * * The server provides: * - POST/GET/DELETE /mcp -- MCP Streamable HTTP transport endpoint * - GET /healthz -- health check endpoint * - Bearer token authentication on /mcp routes (when token is configured) */ export declare function createHttpMcpServer(mcpServer: McpServer, options?: HttpMcpServerOptions): HttpMcpServerResult; /** * Create and start an HTTP MCP server, returning when it is listening. */ export declare function startHttpMcpServer(mcpServer: McpServer, options?: HttpMcpServerOptions): Promise; //# sourceMappingURL=http-transport.d.ts.map