/** * @file 通用模板请求构建器 * @description 配置驱动的 HTTP 请求构建,从 manifest/extra 中读取 URL 模板、body 模板、relay、认证和响应配置。 * 适用于所有“模板化 HTTP API → MCP”的连接器,无需编写连接器专属 builder 代码。 * * 配置字段(来自 MCPServerEntity / manifest extra): * - urlTemplate: URL 构建模板,支持 {apiRoot} {entry} 占位符 * - apiRoot: API 根 URL * - apiMapping: 工具名 → { entry, body, method?, url? } 映射 * - relay: 可选的业务级代理转发配置(url + headers,通过 target-url header 转发) * - auth: 可选的认证配置(bearer/basic/apiKey/custom) * - response: 可选的响应处理配置(JSONPath 提取 + 错误码检测) * * 映射扩展字段: * - method: 'GET' | 'POST'(默认 'POST') * - url: 直接覆盖 urlTemplate(支持 {apiRoot} 占位符) * - entry: 支持 ${param} 路径参数(如 v8/finance/chart/${symbol}) */ import type { RequestBuilderFn, AuthConfig, ResponseConfig } from './api-bridge-types.js'; /** 通用模板构建器的 extra 配置结构 */ export interface TemplateBuilderExtra { /** API 根 URL */ apiRoot: string; /** URL 构建模板,支持 {apiRoot} 和 {entry} 占位符 */ urlTemplate: string; /** 工具名 → 映射配置(含 entry + body 模板 + 可选 method/url) */ apiMapping: Record; /** HTTP 方法,默认 'POST' */ method?: 'GET' | 'POST'; /** 直接覆盖 urlTemplate(支持 {apiRoot} 占位符) */ url?: string; }>; /** * 业务级代理转发配置(可选) * * 与网络级 `proxy`(undici ProxyAgent)不同, * relay 通过 HTTP header(target-url / target-headers)将请求转发给中间服务。 */ relay?: { url: string; headers?: Record; }; /** 认证配置(支持 bearer/basic/apiKey/custom) */ auth?: AuthConfig; /** 全局响应处理配置(可被 mapping 级 response 覆盖) */ response?: ResponseConfig; /** 自定义默认请求头(如 User-Agent),连接器级可覆盖全局默认 */ headers?: Record; } export declare const buildFromTemplate: RequestBuilderFn; //# sourceMappingURL=template-builder.d.ts.map