import { MCPClientBase } from './base-client.js'; import type { MCPServerConfig } from './types.js'; export declare class HttpMCPClient extends MCPClientBase { private endpoint; private sessionId?; private proxyDispatcher?; /** 用户自定义请求头模板(值可含 ${vars.x} / ${env.x} 占位符,发送时解析) */ private headerTemplates?; /** 结构化鉴权配置 */ private authConfig?; protected doConnect(config: MCPServerConfig): Promise; protected doDisconnect(): void; /** 根据 auth 配置生成鉴权请求头(value 支持 ${vars.x} / ${env.x} 模板)。vars 随请求显式传入,避免共享状态。 */ private buildAuthHeaders; /** MCP 协议版本(与 base-client connect() 中 initialize params 一致) */ private static readonly PROTOCOL_VERSION; protected send(request: { jsonrpc: string; id: number; method: string; params?: Record; }, vars?: Record): void; /** * 解析 SSE 文本块中的 JSON-RPC 响应。 * * 遵循 SSE 规范:同一事件内多个连续 `data:` 行需用 `\n` 拼接为一个完整字符串, * 空行(事件分隔符)触发 flush 并尝试 JSON.parse。 * 旧实现逐行独立 parse 导致多行 JSON 解析失败,是 tools/list 返回空的根本原因。 */ private parseSSE; private headersToObject; private normalizeException; } //# sourceMappingURL=http-client.d.ts.map