@inspectr/mcplab-core 1.7.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/agent.d.ts CHANGED
@@ -1,67 +1,79 @@
1
- import type { AgentConfig, ExecutableScenario, LlmMessage, LlmResponse, ToolDef, TraceMessage } from './types.js';
1
+ import type {
2
+ AgentConfig,
3
+ ExecutableScenario,
4
+ LlmMessage,
5
+ LlmResponse,
6
+ ToolDef,
7
+ TraceMessage
8
+ } from './types.js';
2
9
  import type { McpClientManager } from './mcp.js';
3
10
  export interface AgentRunResult {
4
- finalText: string;
5
- toolSequence: string[];
6
- toolDurationsMs: number[];
7
- traceMessages: TraceMessage[];
8
- traceStartedAt: string;
9
- traceEndedAt: string;
10
- traceProvider: string;
11
- traceModel: string;
11
+ finalText: string;
12
+ toolSequence: string[];
13
+ toolDurationsMs: number[];
14
+ traceMessages: TraceMessage[];
15
+ traceStartedAt: string;
16
+ traceEndedAt: string;
17
+ traceProvider: string;
18
+ traceModel: string;
12
19
  }
13
- export type AgentRunProgressEvent = {
14
- type: 'llm_request_started';
15
- scenarioId: string;
16
- agentName: string;
17
- provider: string;
18
- model: string;
19
- turn: number;
20
- } | {
21
- type: 'llm_response_received';
22
- scenarioId: string;
23
- agentName: string;
24
- provider: string;
25
- model: string;
26
- turn: number;
27
- hasText: boolean;
28
- toolCallCount: number;
29
- } | {
30
- type: 'tool_call_started';
31
- scenarioId: string;
32
- agentName: string;
33
- server: string;
34
- tool: string;
35
- turn: number;
36
- } | {
37
- type: 'tool_call_finished';
38
- scenarioId: string;
39
- agentName: string;
40
- server: string;
41
- tool: string;
42
- turn: number;
43
- ok: boolean;
44
- durationMs: number;
45
- } | {
46
- type: 'final_answer';
47
- scenarioId: string;
48
- agentName: string;
49
- turn: number;
50
- hasText: boolean;
51
- };
20
+ export type AgentRunProgressEvent =
21
+ | {
22
+ type: 'llm_request_started';
23
+ scenarioId: string;
24
+ agentName: string;
25
+ provider: string;
26
+ model: string;
27
+ turn: number;
28
+ }
29
+ | {
30
+ type: 'llm_response_received';
31
+ scenarioId: string;
32
+ agentName: string;
33
+ provider: string;
34
+ model: string;
35
+ turn: number;
36
+ hasText: boolean;
37
+ toolCallCount: number;
38
+ }
39
+ | {
40
+ type: 'tool_call_started';
41
+ scenarioId: string;
42
+ agentName: string;
43
+ server: string;
44
+ tool: string;
45
+ turn: number;
46
+ }
47
+ | {
48
+ type: 'tool_call_finished';
49
+ scenarioId: string;
50
+ agentName: string;
51
+ server: string;
52
+ tool: string;
53
+ turn: number;
54
+ ok: boolean;
55
+ durationMs: number;
56
+ }
57
+ | {
58
+ type: 'final_answer';
59
+ scenarioId: string;
60
+ agentName: string;
61
+ turn: number;
62
+ hasText: boolean;
63
+ };
52
64
  export declare function runAgentScenario(params: {
53
- scenario: ExecutableScenario;
54
- agent: AgentConfig;
55
- mcp: McpClientManager;
56
- requestId?: string;
57
- maxTurns?: number;
58
- signal?: AbortSignal;
59
- onProgress?: (event: AgentRunProgressEvent) => void | Promise<void>;
65
+ scenario: ExecutableScenario;
66
+ agent: AgentConfig;
67
+ mcp: McpClientManager;
68
+ requestId?: string;
69
+ maxTurns?: number;
70
+ signal?: AbortSignal;
71
+ onProgress?: (event: AgentRunProgressEvent) => void | Promise<void>;
60
72
  }): Promise<AgentRunResult>;
61
73
  export declare function chatWithAgent(params: {
62
- agent: AgentConfig;
63
- messages: LlmMessage[];
64
- tools?: ToolDef[];
65
- system?: string;
74
+ agent: AgentConfig;
75
+ messages: LlmMessage[];
76
+ tools?: ToolDef[];
77
+ system?: string;
66
78
  }): Promise<LlmResponse>;
67
- //# sourceMappingURL=agent.d.ts.map
79
+ //# sourceMappingURL=agent.d.ts.map
@@ -1,2 +1,2 @@
1
1
  export declare function formatAssistantToolName(name: string | null | undefined): string;
2
- //# sourceMappingURL=assistant-tools.d.ts.map
2
+ //# sourceMappingURL=assistant-tools.d.ts.map
package/dist/config.d.ts CHANGED
@@ -1,25 +1,37 @@
1
1
  import type { EvalConfig, ExecutableEvalConfig, SourceEvalConfig } from './types.js';
2
- export declare function loadConfig(path: string, options?: {
2
+ export declare function loadConfig(
3
+ path: string,
4
+ options?: {
3
5
  bundleRoot?: string;
4
- }): {
5
- config: EvalConfig;
6
- sourceConfig: SourceEvalConfig;
7
- hash: string;
8
- raw: string;
9
- bundleRoot: string;
10
- warnings: string[];
6
+ }
7
+ ): {
8
+ config: EvalConfig;
9
+ sourceConfig: SourceEvalConfig;
10
+ hash: string;
11
+ raw: string;
12
+ bundleRoot: string;
13
+ warnings: string[];
11
14
  };
12
- export declare function selectScenarios<T extends {
15
+ export declare function selectScenarios<
16
+ T extends {
13
17
  scenarios: Array<{
14
- id: string;
18
+ id: string;
15
19
  }>;
16
- }>(config: T, scenarioId?: string): T;
20
+ }
21
+ >(config: T, scenarioId?: string): T;
17
22
  export declare function normalizeSourceConfig(sourceConfig: SourceEvalConfig): {
18
- config: SourceEvalConfig;
19
- warnings: string[];
23
+ config: SourceEvalConfig;
24
+ warnings: string[];
20
25
  };
21
- export declare function normalizeLibraryServers(raw: unknown): Record<string, EvalConfig['servers'][string]>;
22
- export declare function normalizeLibraryAgents(raw: unknown): Record<string, EvalConfig['agents'][string]>;
26
+ export declare function normalizeLibraryServers(
27
+ raw: unknown
28
+ ): Record<string, EvalConfig['servers'][string]>;
29
+ export declare function normalizeLibraryAgents(
30
+ raw: unknown
31
+ ): Record<string, EvalConfig['agents'][string]>;
23
32
  export declare function hashConfig(config: EvalConfig): string;
24
- export declare function expandConfigForAgents(config: EvalConfig, requestedAgents?: string[]): ExecutableEvalConfig;
25
- //# sourceMappingURL=config.d.ts.map
33
+ export declare function expandConfigForAgents(
34
+ config: EvalConfig,
35
+ requestedAgents?: string[]
36
+ ): ExecutableEvalConfig;
37
+ //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAIV,UAAU,EACV,oBAAoB,EAOpB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAKpB,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAChC;IACD,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,gBAAgB,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAwBA;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,SAAS,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,EAC5E,MAAM,EAAE,CAAC,EACT,UAAU,CAAC,EAAE,MAAM,GAClB,CAAC,CAOH;AAuPD,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,gBAAgB,GAAG;IACrE,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAwPA;AAYD,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,GACX,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAoC/C;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CA6CjG;AAmDD,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAErD;AAgBD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,UAAU,EAClB,eAAe,CAAC,EAAE,MAAM,EAAE,GACzB,oBAAoB,CAuBtB"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAIV,UAAU,EACV,oBAAoB,EAOpB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAKpB,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAChC;IACD,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,gBAAgB,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAwBA;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,SAAS,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,EAC5E,MAAM,EAAE,CAAC,EACT,UAAU,CAAC,EAAE,MAAM,GAClB,CAAC,CAOH;AAoQD,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,gBAAgB,GAAG;IACrE,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAiPA;AAYD,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,GACX,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAoC/C;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CA6CjG;AAmDD,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAErD;AAgBD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,UAAU,EAClB,eAAe,CAAC,EAAE,MAAM,EAAE,GACzB,oBAAoB,CAuBtB"}
package/dist/config.js CHANGED
@@ -137,11 +137,24 @@ function resolveReferences(sourceConfig, configPath, bundleRootOverride) {
137
137
  missingScenarioRefs.push(ref);
138
138
  continue;
139
139
  }
140
- if (seenScenarioIds.has(scenario.id)) {
141
- throw new Error(`Duplicate scenario id detected while resolving refs: ${scenario.id}`);
140
+ const scenarioCopy = {
141
+ ...scenario,
142
+ servers: Array.isArray(scenario.servers) ? [...scenario.servers] : [],
143
+ ...(scenario.mcp_servers ? { mcp_servers: [...scenario.mcp_servers] } : {})
144
+ };
145
+ const rawOverlayMcpServers = entry.mcp_servers;
146
+ if (Array.isArray(rawOverlayMcpServers)) {
147
+ scenarioCopy.mcp_servers = rawOverlayMcpServers;
148
+ if (rawOverlayMcpServers.length === 0) {
149
+ // Explicit empty overlay clears inherited runtime server bindings.
150
+ scenarioCopy.servers = [];
151
+ }
152
+ }
153
+ if (seenScenarioIds.has(scenarioCopy.id)) {
154
+ throw new Error(`Duplicate scenario id detected while resolving refs: ${scenarioCopy.id}`);
142
155
  }
143
- seenScenarioIds.add(scenario.id);
144
- scenarios.push(scenario);
156
+ seenScenarioIds.add(scenarioCopy.id);
157
+ scenarios.push(scenarioCopy);
145
158
  continue;
146
159
  }
147
160
  const inline = entry;
@@ -372,10 +385,20 @@ export function normalizeSourceConfig(sourceConfig) {
372
385
  const normalizedScenarios = [];
373
386
  for (const scenario of scenariosInput) {
374
387
  if (isScenarioRefEntry(scenario)) {
388
+ const rawRefScenario = scenario;
375
389
  const ref = String(scenario.ref ?? '').trim();
376
390
  if (!ref)
377
391
  throw new Error('Invalid config: scenario ref must be a non-empty id');
378
- normalizedScenarios.push({ ref });
392
+ const invalidKeys = Object.keys(rawRefScenario).filter((key) => key !== 'ref' && key !== 'mcp_servers');
393
+ if (invalidKeys.length > 0) {
394
+ throw new Error(`Invalid config: referenced scenario "${ref}" contains unsupported fields: ${invalidKeys.join(', ')}`);
395
+ }
396
+ const rawMcpServers = scenario.mcp_servers;
397
+ const normalizedRefScenario = { ref };
398
+ if (Array.isArray(rawMcpServers)) {
399
+ normalizedRefScenario.mcp_servers = normalizeMcpServerEntries(rawMcpServers);
400
+ }
401
+ normalizedScenarios.push(normalizedRefScenario);
379
402
  continue;
380
403
  }
381
404
  const rawScenario = scenario;
@@ -402,32 +425,7 @@ export function normalizeSourceConfig(sourceConfig) {
402
425
  // Propagate mcp_servers if present in raw YAML
403
426
  const rawMcpServers = rawScenario.mcp_servers;
404
427
  if (Array.isArray(rawMcpServers)) {
405
- const normalizedMcpServers = [];
406
- for (const entry of rawMcpServers) {
407
- if (isServerRefEntry(entry)) {
408
- const ref = String(entry.ref ?? '').trim();
409
- if (!ref)
410
- throw new Error('Invalid config: mcp_servers ref must be a non-empty id');
411
- normalizedMcpServers.push({ ref });
412
- }
413
- else {
414
- const inlineEntry = entry;
415
- const id = String(inlineEntry.id ?? '').trim();
416
- if (!id)
417
- throw new Error('Invalid config: inline mcp_servers entry is missing required id');
418
- if (!inlineEntry.transport)
419
- throw new Error(`Invalid config: mcp_servers entry "${id}" is missing transport`);
420
- if (!inlineEntry.url)
421
- throw new Error(`Invalid config: mcp_servers entry "${id}" is missing url`);
422
- normalizedMcpServers.push({
423
- id,
424
- transport: inlineEntry.transport,
425
- url: inlineEntry.url,
426
- auth: inlineEntry.auth
427
- });
428
- }
429
- }
430
- nextScenario.mcp_servers = normalizedMcpServers;
428
+ nextScenario.mcp_servers = normalizeMcpServerEntries(rawMcpServers);
431
429
  }
432
430
  normalizedScenarios.push(nextScenario);
433
431
  }
@@ -644,4 +642,35 @@ function isAgentRefEntry(entry) {
644
642
  function isServerRefEntry(entry) {
645
643
  return Boolean(entry && typeof entry === 'object' && 'ref' in entry);
646
644
  }
645
+ function normalizeMcpServerEntries(rawMcpServers) {
646
+ const normalizedMcpServers = [];
647
+ for (const entry of rawMcpServers) {
648
+ if (isServerRefEntry(entry)) {
649
+ const ref = String(entry.ref ?? '').trim();
650
+ if (!ref)
651
+ throw new Error('Invalid config: mcp_servers ref must be a non-empty id');
652
+ normalizedMcpServers.push({ ref });
653
+ }
654
+ else {
655
+ const inlineEntry = entry;
656
+ const id = String(inlineEntry.id ?? '').trim();
657
+ if (!id) {
658
+ throw new Error('Invalid config: inline mcp_servers entry is missing required id');
659
+ }
660
+ if (!inlineEntry.transport) {
661
+ throw new Error(`Invalid config: mcp_servers entry "${id}" is missing transport`);
662
+ }
663
+ if (!inlineEntry.url) {
664
+ throw new Error(`Invalid config: mcp_servers entry "${id}" is missing url`);
665
+ }
666
+ normalizedMcpServers.push({
667
+ id,
668
+ transport: inlineEntry.transport,
669
+ url: inlineEntry.url,
670
+ auth: inlineEntry.auth
671
+ });
672
+ }
673
+ }
674
+ return normalizedMcpServers;
675
+ }
647
676
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/eval.d.ts CHANGED
@@ -1,11 +1,18 @@
1
1
  import type { EvalRules } from './types.js';
2
2
  export interface EvalResult {
3
- pass: boolean;
4
- failures: string[];
3
+ pass: boolean;
4
+ failures: string[];
5
5
  }
6
- export declare function evaluateScenario(finalText: string, toolSequence: string[], evalRules?: EvalRules): EvalResult;
7
- export declare function extractValues(text: string, extractRules?: {
6
+ export declare function evaluateScenario(
7
+ finalText: string,
8
+ toolSequence: string[],
9
+ evalRules?: EvalRules
10
+ ): EvalResult;
11
+ export declare function extractValues(
12
+ text: string,
13
+ extractRules?: {
8
14
  name: string;
9
15
  regex: string;
10
- }[]): Record<string, string | number | boolean | null>;
11
- //# sourceMappingURL=eval.d.ts.map
16
+ }[]
17
+ ): Record<string, string | number | boolean | null>;
18
+ //# sourceMappingURL=eval.d.ts.map
package/dist/index.d.ts CHANGED
@@ -1,8 +1,16 @@
1
1
  export * from './types.js';
2
- export { loadConfig, hashConfig, selectScenarios, expandConfigForAgents, normalizeSourceConfig, normalizeLibraryServers, normalizeLibraryAgents } from './config.js';
2
+ export {
3
+ loadConfig,
4
+ hashConfig,
5
+ selectScenarios,
6
+ expandConfigForAgents,
7
+ normalizeSourceConfig,
8
+ normalizeLibraryServers,
9
+ normalizeLibraryAgents
10
+ } from './config.js';
3
11
  export { runAll, type RunProgressEvent } from './runner.js';
4
12
  export { renderSummaryMarkdown } from './results.js';
5
13
  export { McpClientManager } from './mcp.js';
6
14
  export { chatWithAgent } from './agent.js';
7
15
  export { formatAssistantToolName } from './assistant-tools.js';
8
- //# sourceMappingURL=index.d.ts.map
16
+ //# sourceMappingURL=index.d.ts.map
package/dist/mcp.d.ts CHANGED
@@ -1,71 +1,80 @@
1
1
  import { Client } from '@modelcontextprotocol/sdk/client/index.js';
2
2
  import type { ServerConfig, ToolDef } from './types.js';
3
3
  export interface McpToolInfo {
4
- name: string;
5
- title?: string;
6
- description?: string;
7
- inputSchema?: unknown;
8
- outputSchema?: unknown;
9
- annotations?: ToolDef['annotations'];
4
+ name: string;
5
+ title?: string;
6
+ description?: string;
7
+ inputSchema?: unknown;
8
+ outputSchema?: unknown;
9
+ annotations?: ToolDef['annotations'];
10
10
  }
11
11
  export interface McpCallToolOptions {
12
- requestHeaders?: Record<string, string>;
12
+ requestHeaders?: Record<string, string>;
13
13
  }
14
14
  export interface McpConnectAllOptions {
15
- serverAuthHeaders?: Record<string, Record<string, string>>;
15
+ serverAuthHeaders?: Record<string, Record<string, string>>;
16
16
  }
17
17
  export interface McpImplementationIcon {
18
- src: string;
19
- mimeType?: string;
20
- sizes?: string[];
21
- theme?: 'light' | 'dark';
18
+ src: string;
19
+ mimeType?: string;
20
+ sizes?: string[];
21
+ theme?: 'light' | 'dark';
22
22
  }
23
23
  export interface McpServerImplementation {
24
- name: string;
25
- version?: string;
26
- title?: string;
27
- description?: string;
28
- websiteUrl?: string;
29
- icons?: McpImplementationIcon[];
24
+ name: string;
25
+ version?: string;
26
+ title?: string;
27
+ description?: string;
28
+ websiteUrl?: string;
29
+ icons?: McpImplementationIcon[];
30
30
  }
31
31
  export declare function normalizeListedTool(tool: any): ToolDef;
32
32
  export declare class McpClientManager {
33
- static onBeforeConnect: (() => void) | undefined;
34
- private clients;
35
- private scopedClients;
36
- private scopedClientConnectPromises;
37
- private servers;
38
- private authHeaders;
39
- private serverVersions;
40
- private serverImplementations;
41
- private oauthCache;
42
- private static readonly MAX_CONNECT_RETRIES;
43
- private static readonly MAX_SCOPED_CLIENTS;
44
- private readonly maxScopedClients;
45
- constructor(options?: {
46
- maxScopedClients?: number;
47
- });
48
- connectAll(servers: Record<string, ServerConfig>, signal?: AbortSignal, options?: McpConnectAllOptions): Promise<void>;
49
- getClient(serverName: string): Client;
50
- listTools(serverName: string, signal?: AbortSignal): Promise<ToolDef[]>;
51
- callTool(serverName: string, tool: string, args: unknown, options?: McpCallToolOptions): Promise<any>;
52
- disconnectAll(): Promise<void>;
53
- getServerVersions(): Record<string, string | null>;
54
- getServerImplementations(): Record<string, McpServerImplementation | null>;
55
- private connectClient;
56
- private connectClientWithRetry;
57
- private evictIfNeeded;
58
- private getOrCreateScopedClient;
59
- /**
60
- * Resolve a config value that may contain a ${VAR} env-var reference.
61
- * - `${FOO}` reads process.env.FOO
62
- * - plain string → returned as-is
63
- * - treatPlainAsEnvVar: legacy mode where plain strings are treated as env var names
64
- */
65
- private resolveValue;
66
- private getAuthHeaders;
67
- private fetchOauthToken;
33
+ static onBeforeConnect: (() => void) | undefined;
34
+ private clients;
35
+ private scopedClients;
36
+ private scopedClientConnectPromises;
37
+ private servers;
38
+ private authHeaders;
39
+ private serverVersions;
40
+ private serverImplementations;
41
+ private oauthCache;
42
+ private static readonly MAX_CONNECT_RETRIES;
43
+ private static readonly MAX_SCOPED_CLIENTS;
44
+ private readonly maxScopedClients;
45
+ constructor(options?: { maxScopedClients?: number });
46
+ connectAll(
47
+ servers: Record<string, ServerConfig>,
48
+ signal?: AbortSignal,
49
+ options?: McpConnectAllOptions
50
+ ): Promise<void>;
51
+ getClient(serverName: string): Client;
52
+ listTools(serverName: string, signal?: AbortSignal): Promise<ToolDef[]>;
53
+ callTool(
54
+ serverName: string,
55
+ tool: string,
56
+ args: unknown,
57
+ options?: McpCallToolOptions
58
+ ): Promise<any>;
59
+ disconnectAll(): Promise<void>;
60
+ getServerVersions(): Record<string, string | null>;
61
+ getServerImplementations(): Record<string, McpServerImplementation | null>;
62
+ private connectClient;
63
+ private connectClientWithRetry;
64
+ private evictIfNeeded;
65
+ private getOrCreateScopedClient;
66
+ /**
67
+ * Resolve a config value that may contain a ${VAR} env-var reference.
68
+ * - `${FOO}` → reads process.env.FOO
69
+ * - plain string → returned as-is
70
+ * - treatPlainAsEnvVar: legacy mode where plain strings are treated as env var names
71
+ */
72
+ private resolveValue;
73
+ private getAuthHeaders;
74
+ private fetchOauthToken;
68
75
  }
69
- export declare function mergeRequestHeaders(...headerSources: Array<Record<string, string> | undefined>): Record<string, string>;
76
+ export declare function mergeRequestHeaders(
77
+ ...headerSources: Array<Record<string, string> | undefined>
78
+ ): Record<string, string>;
70
79
  export declare function sanitizeMcpTransportErrorMessage(message: string): string;
71
- //# sourceMappingURL=mcp.d.ts.map
80
+ //# sourceMappingURL=mcp.d.ts.map