@openai/agents-core 0.0.12 → 0.0.14
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 +2 -2
- package/dist/agent.js +4 -4
- package/dist/agent.js.map +1 -1
- package/dist/agent.mjs +4 -4
- package/dist/agent.mjs.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -1
- package/dist/index.mjs.map +1 -1
- package/dist/mcp.d.ts +16 -3
- package/dist/mcp.js +58 -7
- package/dist/mcp.js.map +1 -1
- package/dist/mcp.mjs +58 -7
- package/dist/mcp.mjs.map +1 -1
- package/dist/mcpUtil.d.ts +27 -0
- package/dist/mcpUtil.js +15 -0
- package/dist/mcpUtil.js.map +1 -0
- package/dist/mcpUtil.mjs +15 -0
- package/dist/mcpUtil.mjs.map +1 -0
- package/dist/metadata.js +2 -2
- package/dist/metadata.mjs +2 -2
- package/dist/run.js +2 -2
- package/dist/run.js.map +1 -1
- package/dist/run.mjs +2 -2
- package/dist/run.mjs.map +1 -1
- package/dist/runState.js +3 -3
- package/dist/runState.js.map +1 -1
- package/dist/runState.mjs +3 -3
- package/dist/runState.mjs.map +1 -1
- package/dist/shims/mcp-server/browser.d.ts +2 -0
- package/dist/shims/mcp-server/browser.js +6 -0
- package/dist/shims/mcp-server/browser.js.map +1 -1
- package/dist/shims/mcp-server/browser.mjs +6 -0
- package/dist/shims/mcp-server/browser.mjs.map +1 -1
- package/dist/shims/mcp-server/node.d.ts +2 -2
- package/dist/shims/mcp-server/node.js +4 -6
- package/dist/shims/mcp-server/node.js.map +1 -1
- package/dist/shims/mcp-server/node.mjs +4 -6
- package/dist/shims/mcp-server/node.mjs.map +1 -1
- package/package.json +1 -1
package/dist/agent.d.ts
CHANGED
|
@@ -282,13 +282,13 @@ export declare class Agent<TContext = UnknownContext, TOutput extends AgentOutpu
|
|
|
282
282
|
* Fetches the available tools from the MCP servers.
|
|
283
283
|
* @returns the MCP powered tools
|
|
284
284
|
*/
|
|
285
|
-
getMcpTools(): Promise<Tool<TContext>[]>;
|
|
285
|
+
getMcpTools(runContext: RunContext<TContext>): Promise<Tool<TContext>[]>;
|
|
286
286
|
/**
|
|
287
287
|
* ALl agent tools, including the MCPl and function tools.
|
|
288
288
|
*
|
|
289
289
|
* @returns all configured tools
|
|
290
290
|
*/
|
|
291
|
-
getAllTools(): Promise<Tool<TContext>[]>;
|
|
291
|
+
getAllTools(runContext: RunContext<TContext>): Promise<Tool<TContext>[]>;
|
|
292
292
|
/**
|
|
293
293
|
* Processes the final output of the agent.
|
|
294
294
|
*
|
package/dist/agent.js
CHANGED
|
@@ -187,9 +187,9 @@ export class Agent extends AgentHooks {
|
|
|
187
187
|
* Fetches the available tools from the MCP servers.
|
|
188
188
|
* @returns the MCP powered tools
|
|
189
189
|
*/
|
|
190
|
-
async getMcpTools() {
|
|
190
|
+
async getMcpTools(runContext) {
|
|
191
191
|
if (this.mcpServers.length > 0) {
|
|
192
|
-
return getAllMcpTools(this.mcpServers);
|
|
192
|
+
return getAllMcpTools(this.mcpServers, runContext, this, false);
|
|
193
193
|
}
|
|
194
194
|
return [];
|
|
195
195
|
}
|
|
@@ -198,8 +198,8 @@ export class Agent extends AgentHooks {
|
|
|
198
198
|
*
|
|
199
199
|
* @returns all configured tools
|
|
200
200
|
*/
|
|
201
|
-
async getAllTools() {
|
|
202
|
-
return [...(await this.getMcpTools()), ...this.tools];
|
|
201
|
+
async getAllTools(runContext) {
|
|
202
|
+
return [...(await this.getMcpTools(runContext)), ...this.tools];
|
|
203
203
|
}
|
|
204
204
|
/**
|
|
205
205
|
* Processes the final output of the agent.
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/agent.mjs
CHANGED
|
@@ -187,9 +187,9 @@ export class Agent extends AgentHooks {
|
|
|
187
187
|
* Fetches the available tools from the MCP servers.
|
|
188
188
|
* @returns the MCP powered tools
|
|
189
189
|
*/
|
|
190
|
-
async getMcpTools() {
|
|
190
|
+
async getMcpTools(runContext) {
|
|
191
191
|
if (this.mcpServers.length > 0) {
|
|
192
|
-
return getAllMcpTools(this.mcpServers);
|
|
192
|
+
return getAllMcpTools(this.mcpServers, runContext, this, false);
|
|
193
193
|
}
|
|
194
194
|
return [];
|
|
195
195
|
}
|
|
@@ -198,8 +198,8 @@ export class Agent extends AgentHooks {
|
|
|
198
198
|
*
|
|
199
199
|
* @returns all configured tools
|
|
200
200
|
*/
|
|
201
|
-
async getAllTools() {
|
|
202
|
-
return [...(await this.getMcpTools()), ...this.tools];
|
|
201
|
+
async getAllTools(runContext) {
|
|
202
|
+
return [...(await this.getMcpTools(runContext)), ...this.tools];
|
|
203
203
|
}
|
|
204
204
|
/**
|
|
205
205
|
* Processes the final output of the agent.
|
package/dist/agent.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.mjs","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent.mjs","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,10 +6,11 @@ export { RunAgentUpdatedStreamEvent, RunRawModelStreamEvent, RunItemStreamEvent,
|
|
|
6
6
|
export { defineOutputGuardrail, GuardrailFunctionOutput, InputGuardrail, InputGuardrailFunction, InputGuardrailFunctionArgs, InputGuardrailMetadata, InputGuardrailResult, OutputGuardrail, OutputGuardrailDefinition, OutputGuardrailFunction, OutputGuardrailFunctionArgs, OutputGuardrailMetadata, OutputGuardrailResult, } from './guardrail';
|
|
7
7
|
export { getHandoff, getTransferMessage, Handoff, handoff, HandoffInputData, } from './handoff';
|
|
8
8
|
export { assistant, system, user } from './helpers/message';
|
|
9
|
-
export { extractAllTextOutput, RunHandoffCallItem, RunItem, RunMessageOutputItem, RunReasoningItem, RunToolApprovalItem, RunToolCallItem, RunToolCallOutputItem, } from './items';
|
|
9
|
+
export { extractAllTextOutput, RunHandoffCallItem, RunHandoffOutputItem, RunItem, RunMessageOutputItem, RunReasoningItem, RunToolApprovalItem, RunToolCallItem, RunToolCallOutputItem, } from './items';
|
|
10
10
|
export { AgentHooks } from './lifecycle';
|
|
11
11
|
export { getLogger } from './logger';
|
|
12
12
|
export { getAllMcpTools, invalidateServerToolsCache, MCPServer, MCPServerStdio, MCPServerStreamableHttp, } from './mcp';
|
|
13
|
+
export { MCPToolFilterCallable, MCPToolFilterContext, MCPToolFilterStatic, createMCPToolStaticFilter, } from './mcpUtil';
|
|
13
14
|
export { Model, ModelProvider, ModelRequest, ModelResponse, ModelSettings, ModelSettingsToolChoice, SerializedHandoff, SerializedTool, SerializedOutputType, } from './model';
|
|
14
15
|
export { setDefaultModelProvider } from './providers';
|
|
15
16
|
export { RunResult, StreamedRunResult } from './result';
|
package/dist/index.js
CHANGED
|
@@ -7,10 +7,11 @@ export { RunAgentUpdatedStreamEvent, RunRawModelStreamEvent, RunItemStreamEvent,
|
|
|
7
7
|
export { defineOutputGuardrail, } from "./guardrail.js";
|
|
8
8
|
export { getHandoff, getTransferMessage, Handoff, handoff, } from "./handoff.js";
|
|
9
9
|
export { assistant, system, user } from "./helpers/message.js";
|
|
10
|
-
export { extractAllTextOutput, RunHandoffCallItem, RunMessageOutputItem, RunReasoningItem, RunToolApprovalItem, RunToolCallItem, RunToolCallOutputItem, } from "./items.js";
|
|
10
|
+
export { extractAllTextOutput, RunHandoffCallItem, RunHandoffOutputItem, RunMessageOutputItem, RunReasoningItem, RunToolApprovalItem, RunToolCallItem, RunToolCallOutputItem, } from "./items.js";
|
|
11
11
|
export { AgentHooks } from "./lifecycle.js";
|
|
12
12
|
export { getLogger } from "./logger.js";
|
|
13
13
|
export { getAllMcpTools, invalidateServerToolsCache, MCPServerStdio, MCPServerStreamableHttp, } from "./mcp.js";
|
|
14
|
+
export { createMCPToolStaticFilter, } from "./mcpUtil.js";
|
|
14
15
|
export { setDefaultModelProvider } from "./providers.js";
|
|
15
16
|
export { RunResult, StreamedRunResult } from "./result.js";
|
|
16
17
|
export { run, Runner, } from "./run.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EAAE,iBAAiB,EAAE;OACrB,EAAE,gBAAgB,EAAE;OAEpB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B;OACzD,EACL,KAAK,GASN;OAEM,EACL,WAAW,EACX,uBAAuB,EACvB,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,EAClB,gCAAgC,EAChC,aAAa,EACb,SAAS,EACT,WAAW,GACZ;OACM,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,kBAAkB,GAEnB;OACM,EACL,qBAAqB,GAatB;OACM,EACL,UAAU,EACV,kBAAkB,EAClB,OAAO,EACP,OAAO,GAER;OACM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE;OAC3B,EACL,oBAAoB,EACpB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EAAE,iBAAiB,EAAE;OACrB,EAAE,gBAAgB,EAAE;OAEpB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B;OACzD,EACL,KAAK,GASN;OAEM,EACL,WAAW,EACX,uBAAuB,EACvB,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,EAClB,gCAAgC,EAChC,aAAa,EACb,SAAS,EACT,WAAW,GACZ;OACM,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,kBAAkB,GAEnB;OACM,EACL,qBAAqB,GAatB;OACM,EACL,UAAU,EACV,kBAAkB,EAClB,OAAO,EACP,OAAO,GAER;OACM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE;OAC3B,EACL,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EAEpB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,GACtB;OACM,EAAE,UAAU,EAAE;OACd,EAAE,SAAS,EAAE;OACb,EACL,cAAc,EACd,0BAA0B,EAE1B,cAAc,EACd,uBAAuB,GACxB;OACM,EAIL,yBAAyB,GAC1B;OAYM,EAAE,uBAAuB,EAAE;OAC3B,EAAE,SAAS,EAAE,iBAAiB,EAAE;OAChC,EAGL,GAAG,EAEH,MAAM,GAEP;OACM,EAAE,UAAU,EAAE;OACd,EAAE,QAAQ,EAAE;OACZ,EAGL,YAAY,EAEZ,aAAa,EAIb,IAAI,GAEL;;OAEM,EAAE,sBAAsB,EAAE,aAAa,EAAE;OAyBzC,EAAE,KAAK,EAAE;OAMT,KAAK,QAAQ;AAEpB;;;;;GAKG;AACH,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC"}
|
package/dist/index.mjs
CHANGED
|
@@ -7,10 +7,11 @@ export { RunAgentUpdatedStreamEvent, RunRawModelStreamEvent, RunItemStreamEvent,
|
|
|
7
7
|
export { defineOutputGuardrail, } from "./guardrail.mjs";
|
|
8
8
|
export { getHandoff, getTransferMessage, Handoff, handoff, } from "./handoff.mjs";
|
|
9
9
|
export { assistant, system, user } from "./helpers/message.mjs";
|
|
10
|
-
export { extractAllTextOutput, RunHandoffCallItem, RunMessageOutputItem, RunReasoningItem, RunToolApprovalItem, RunToolCallItem, RunToolCallOutputItem, } from "./items.mjs";
|
|
10
|
+
export { extractAllTextOutput, RunHandoffCallItem, RunHandoffOutputItem, RunMessageOutputItem, RunReasoningItem, RunToolApprovalItem, RunToolCallItem, RunToolCallOutputItem, } from "./items.mjs";
|
|
11
11
|
export { AgentHooks } from "./lifecycle.mjs";
|
|
12
12
|
export { getLogger } from "./logger.mjs";
|
|
13
13
|
export { getAllMcpTools, invalidateServerToolsCache, MCPServerStdio, MCPServerStreamableHttp, } from "./mcp.mjs";
|
|
14
|
+
export { createMCPToolStaticFilter, } from "./mcpUtil.mjs";
|
|
14
15
|
export { setDefaultModelProvider } from "./providers.mjs";
|
|
15
16
|
export { RunResult, StreamedRunResult } from "./result.mjs";
|
|
16
17
|
export { run, Runner, } from "./run.mjs";
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EAAE,iBAAiB,EAAE;OACrB,EAAE,gBAAgB,EAAE;OAEpB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B;OACzD,EACL,KAAK,GASN;OAEM,EACL,WAAW,EACX,uBAAuB,EACvB,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,EAClB,gCAAgC,EAChC,aAAa,EACb,SAAS,EACT,WAAW,GACZ;OACM,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,kBAAkB,GAEnB;OACM,EACL,qBAAqB,GAatB;OACM,EACL,UAAU,EACV,kBAAkB,EAClB,OAAO,EACP,OAAO,GAER;OACM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE;OAC3B,EACL,oBAAoB,EACpB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EAAE,iBAAiB,EAAE;OACrB,EAAE,gBAAgB,EAAE;OAEpB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B;OACzD,EACL,KAAK,GASN;OAEM,EACL,WAAW,EACX,uBAAuB,EACvB,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,EAClB,gCAAgC,EAChC,aAAa,EACb,SAAS,EACT,WAAW,GACZ;OACM,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,kBAAkB,GAEnB;OACM,EACL,qBAAqB,GAatB;OACM,EACL,UAAU,EACV,kBAAkB,EAClB,OAAO,EACP,OAAO,GAER;OACM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE;OAC3B,EACL,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EAEpB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,GACtB;OACM,EAAE,UAAU,EAAE;OACd,EAAE,SAAS,EAAE;OACb,EACL,cAAc,EACd,0BAA0B,EAE1B,cAAc,EACd,uBAAuB,GACxB;OACM,EAIL,yBAAyB,GAC1B;OAYM,EAAE,uBAAuB,EAAE;OAC3B,EAAE,SAAS,EAAE,iBAAiB,EAAE;OAChC,EAGL,GAAG,EAEH,MAAM,GAEP;OACM,EAAE,UAAU,EAAE;OACd,EAAE,QAAQ,EAAE;OACZ,EAGL,YAAY,EAEZ,aAAa,EAIb,IAAI,GAEL;;OAEM,EAAE,sBAAsB,EAAE,aAAa,EAAE;OAyBzC,EAAE,KAAK,EAAE;OAMT,KAAK,QAAQ;AAEpB;;;;;GAKG;AACH,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC"}
|
package/dist/mcp.d.ts
CHANGED
|
@@ -2,6 +2,9 @@ import { FunctionTool, Tool } from './tool';
|
|
|
2
2
|
import { Logger } from './logger';
|
|
3
3
|
import { z } from '@openai/zod/v3';
|
|
4
4
|
import { JsonObjectSchemaNonStrict, JsonObjectSchemaStrict, UnknownContext } from './types';
|
|
5
|
+
import type { MCPToolFilterCallable, MCPToolFilterStatic } from './mcpUtil';
|
|
6
|
+
import type { RunContext } from './runContext';
|
|
7
|
+
import type { Agent } from './agent';
|
|
5
8
|
export declare const DEFAULT_STDIO_MCP_CLIENT_LOGGER_NAME = "openai-agents:stdio-mcp-client";
|
|
6
9
|
export declare const DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME = "openai-agents:streamable-http-mcp-client";
|
|
7
10
|
/**
|
|
@@ -10,15 +13,18 @@ export declare const DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME = "openai-ag
|
|
|
10
13
|
*/
|
|
11
14
|
export interface MCPServer {
|
|
12
15
|
cacheToolsList: boolean;
|
|
16
|
+
toolFilter?: MCPToolFilterCallable | MCPToolFilterStatic;
|
|
13
17
|
connect(): Promise<void>;
|
|
14
18
|
readonly name: string;
|
|
15
19
|
close(): Promise<void>;
|
|
16
20
|
listTools(): Promise<MCPTool[]>;
|
|
17
21
|
callTool(toolName: string, args: Record<string, unknown> | null): Promise<CallToolResultContent>;
|
|
22
|
+
invalidateToolsCache(): Promise<void>;
|
|
18
23
|
}
|
|
19
24
|
export declare abstract class BaseMCPServerStdio implements MCPServer {
|
|
20
25
|
cacheToolsList: boolean;
|
|
21
26
|
protected _cachedTools: any[] | undefined;
|
|
27
|
+
toolFilter?: MCPToolFilterCallable | MCPToolFilterStatic;
|
|
22
28
|
protected logger: Logger;
|
|
23
29
|
constructor(options: MCPServerStdioOptions);
|
|
24
30
|
abstract get name(): string;
|
|
@@ -26,6 +32,7 @@ export declare abstract class BaseMCPServerStdio implements MCPServer {
|
|
|
26
32
|
abstract close(): Promise<void>;
|
|
27
33
|
abstract listTools(): Promise<any[]>;
|
|
28
34
|
abstract callTool(_toolName: string, _args: Record<string, unknown> | null): Promise<CallToolResultContent>;
|
|
35
|
+
abstract invalidateToolsCache(): Promise<void>;
|
|
29
36
|
/**
|
|
30
37
|
* Logs a debug message when debug logging is enabled.
|
|
31
38
|
* @param buildMessage A function that returns the message to log.
|
|
@@ -35,6 +42,7 @@ export declare abstract class BaseMCPServerStdio implements MCPServer {
|
|
|
35
42
|
export declare abstract class BaseMCPServerStreamableHttp implements MCPServer {
|
|
36
43
|
cacheToolsList: boolean;
|
|
37
44
|
protected _cachedTools: any[] | undefined;
|
|
45
|
+
toolFilter?: MCPToolFilterCallable | MCPToolFilterStatic;
|
|
38
46
|
protected logger: Logger;
|
|
39
47
|
constructor(options: MCPServerStreamableHttpOptions);
|
|
40
48
|
abstract get name(): string;
|
|
@@ -42,6 +50,7 @@ export declare abstract class BaseMCPServerStreamableHttp implements MCPServer {
|
|
|
42
50
|
abstract close(): Promise<void>;
|
|
43
51
|
abstract listTools(): Promise<any[]>;
|
|
44
52
|
abstract callTool(_toolName: string, _args: Record<string, unknown> | null): Promise<CallToolResultContent>;
|
|
53
|
+
abstract invalidateToolsCache(): Promise<void>;
|
|
45
54
|
/**
|
|
46
55
|
* Logs a debug message when debug logging is enabled.
|
|
47
56
|
* @param buildMessage A function that returns the message to log.
|
|
@@ -104,6 +113,7 @@ export declare class MCPServerStdio extends BaseMCPServerStdio {
|
|
|
104
113
|
close(): Promise<void>;
|
|
105
114
|
listTools(): Promise<MCPTool[]>;
|
|
106
115
|
callTool(toolName: string, args: Record<string, unknown> | null): Promise<CallToolResultContent>;
|
|
116
|
+
invalidateToolsCache(): Promise<void>;
|
|
107
117
|
}
|
|
108
118
|
export declare class MCPServerStreamableHttp extends BaseMCPServerStreamableHttp {
|
|
109
119
|
private underlying;
|
|
@@ -113,22 +123,23 @@ export declare class MCPServerStreamableHttp extends BaseMCPServerStreamableHttp
|
|
|
113
123
|
close(): Promise<void>;
|
|
114
124
|
listTools(): Promise<MCPTool[]>;
|
|
115
125
|
callTool(toolName: string, args: Record<string, unknown> | null): Promise<CallToolResultContent>;
|
|
126
|
+
invalidateToolsCache(): Promise<void>;
|
|
116
127
|
}
|
|
117
128
|
/**
|
|
118
129
|
* Fetches and flattens all tools from multiple MCP servers.
|
|
119
130
|
* Logs and skips any servers that fail to respond.
|
|
120
131
|
*/
|
|
121
|
-
export declare function getAllMcpFunctionTools<TContext = UnknownContext>(mcpServers: MCPServer[], convertSchemasToStrict?: boolean): Promise<Tool<TContext>[]>;
|
|
132
|
+
export declare function getAllMcpFunctionTools<TContext = UnknownContext>(mcpServers: MCPServer[], runContext: RunContext<TContext>, agent: Agent<any, any>, convertSchemasToStrict?: boolean): Promise<Tool<TContext>[]>;
|
|
122
133
|
/**
|
|
123
134
|
* Remove cached tools for the given server so the next lookup fetches fresh data.
|
|
124
135
|
*
|
|
125
136
|
* @param serverName - Name of the MCP server whose cache should be cleared.
|
|
126
137
|
*/
|
|
127
|
-
export declare function invalidateServerToolsCache(serverName: string): void
|
|
138
|
+
export declare function invalidateServerToolsCache(serverName: string): Promise<void>;
|
|
128
139
|
/**
|
|
129
140
|
* Returns all MCP tools from the provided servers, using the function tool conversion.
|
|
130
141
|
*/
|
|
131
|
-
export declare function getAllMcpTools<TContext = UnknownContext>(mcpServers: MCPServer[], convertSchemasToStrict?: boolean): Promise<Tool<TContext>[]>;
|
|
142
|
+
export declare function getAllMcpTools<TContext = UnknownContext>(mcpServers: MCPServer[], runContext: RunContext<TContext>, agent: Agent<TContext, any>, convertSchemasToStrict?: boolean): Promise<Tool<TContext>[]>;
|
|
132
143
|
/**
|
|
133
144
|
* Converts an MCP tool definition to a function tool for the Agents SDK.
|
|
134
145
|
*/
|
|
@@ -146,6 +157,7 @@ export interface BaseMCPServerStdioOptions {
|
|
|
146
157
|
encoding?: string;
|
|
147
158
|
encodingErrorHandler?: 'strict' | 'ignore' | 'replace';
|
|
148
159
|
logger?: Logger;
|
|
160
|
+
toolFilter?: MCPToolFilterCallable | MCPToolFilterStatic;
|
|
149
161
|
}
|
|
150
162
|
export interface DefaultMCPServerStdioOptions extends BaseMCPServerStdioOptions {
|
|
151
163
|
command: string;
|
|
@@ -161,6 +173,7 @@ export interface MCPServerStreamableHttpOptions {
|
|
|
161
173
|
clientSessionTimeoutSeconds?: number;
|
|
162
174
|
name?: string;
|
|
163
175
|
logger?: Logger;
|
|
176
|
+
toolFilter?: MCPToolFilterCallable | MCPToolFilterStatic;
|
|
164
177
|
authProvider?: any;
|
|
165
178
|
requestInit?: any;
|
|
166
179
|
reconnectionOptions?: any;
|
package/dist/mcp.js
CHANGED
|
@@ -10,11 +10,13 @@ export const DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME = 'openai-agents:str
|
|
|
10
10
|
export class BaseMCPServerStdio {
|
|
11
11
|
cacheToolsList;
|
|
12
12
|
_cachedTools = undefined;
|
|
13
|
+
toolFilter;
|
|
13
14
|
logger;
|
|
14
15
|
constructor(options) {
|
|
15
16
|
this.logger =
|
|
16
17
|
options.logger ?? getLogger(DEFAULT_STDIO_MCP_CLIENT_LOGGER_NAME);
|
|
17
18
|
this.cacheToolsList = options.cacheToolsList ?? false;
|
|
19
|
+
this.toolFilter = options.toolFilter;
|
|
18
20
|
}
|
|
19
21
|
/**
|
|
20
22
|
* Logs a debug message when debug logging is enabled.
|
|
@@ -30,12 +32,14 @@ export class BaseMCPServerStdio {
|
|
|
30
32
|
export class BaseMCPServerStreamableHttp {
|
|
31
33
|
cacheToolsList;
|
|
32
34
|
_cachedTools = undefined;
|
|
35
|
+
toolFilter;
|
|
33
36
|
logger;
|
|
34
37
|
constructor(options) {
|
|
35
38
|
this.logger =
|
|
36
39
|
options.logger ??
|
|
37
40
|
getLogger(DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME);
|
|
38
41
|
this.cacheToolsList = options.cacheToolsList ?? false;
|
|
42
|
+
this.toolFilter = options.toolFilter;
|
|
39
43
|
}
|
|
40
44
|
/**
|
|
41
45
|
* Logs a debug message when debug logging is enabled.
|
|
@@ -95,6 +99,9 @@ export class MCPServerStdio extends BaseMCPServerStdio {
|
|
|
95
99
|
callTool(toolName, args) {
|
|
96
100
|
return this.underlying.callTool(toolName, args);
|
|
97
101
|
}
|
|
102
|
+
invalidateToolsCache() {
|
|
103
|
+
return this.underlying.invalidateToolsCache();
|
|
104
|
+
}
|
|
98
105
|
}
|
|
99
106
|
export class MCPServerStreamableHttp extends BaseMCPServerStreamableHttp {
|
|
100
107
|
underlying;
|
|
@@ -124,16 +131,19 @@ export class MCPServerStreamableHttp extends BaseMCPServerStreamableHttp {
|
|
|
124
131
|
callTool(toolName, args) {
|
|
125
132
|
return this.underlying.callTool(toolName, args);
|
|
126
133
|
}
|
|
134
|
+
invalidateToolsCache() {
|
|
135
|
+
return this.underlying.invalidateToolsCache();
|
|
136
|
+
}
|
|
127
137
|
}
|
|
128
138
|
/**
|
|
129
139
|
* Fetches and flattens all tools from multiple MCP servers.
|
|
130
140
|
* Logs and skips any servers that fail to respond.
|
|
131
141
|
*/
|
|
132
|
-
export async function getAllMcpFunctionTools(mcpServers, convertSchemasToStrict = false) {
|
|
142
|
+
export async function getAllMcpFunctionTools(mcpServers, runContext, agent, convertSchemasToStrict = false) {
|
|
133
143
|
const allTools = [];
|
|
134
144
|
const toolNames = new Set();
|
|
135
145
|
for (const server of mcpServers) {
|
|
136
|
-
const serverTools = await getFunctionToolsFromServer(server, convertSchemasToStrict);
|
|
146
|
+
const serverTools = await getFunctionToolsFromServer(server, runContext, agent, convertSchemasToStrict);
|
|
137
147
|
const serverToolNames = new Set(serverTools.map((t) => t.name));
|
|
138
148
|
const intersection = [...serverToolNames].filter((n) => toolNames.has(n));
|
|
139
149
|
if (intersection.length > 0) {
|
|
@@ -152,18 +162,58 @@ const _cachedTools = {};
|
|
|
152
162
|
*
|
|
153
163
|
* @param serverName - Name of the MCP server whose cache should be cleared.
|
|
154
164
|
*/
|
|
155
|
-
export function invalidateServerToolsCache(serverName) {
|
|
165
|
+
export async function invalidateServerToolsCache(serverName) {
|
|
156
166
|
delete _cachedTools[serverName];
|
|
157
167
|
}
|
|
158
168
|
/**
|
|
159
169
|
* Fetches all function tools from a single MCP server.
|
|
160
170
|
*/
|
|
161
|
-
async function getFunctionToolsFromServer(server, convertSchemasToStrict) {
|
|
171
|
+
async function getFunctionToolsFromServer(server, runContext, agent, convertSchemasToStrict) {
|
|
162
172
|
if (server.cacheToolsList && _cachedTools[server.name]) {
|
|
163
173
|
return _cachedTools[server.name].map((t) => mcpToFunctionTool(t, server, convertSchemasToStrict));
|
|
164
174
|
}
|
|
165
175
|
return withMCPListToolsSpan(async (span) => {
|
|
166
|
-
const
|
|
176
|
+
const fetchedMcpTools = await server.listTools();
|
|
177
|
+
const mcpTools = [];
|
|
178
|
+
const context = {
|
|
179
|
+
runContext,
|
|
180
|
+
agent,
|
|
181
|
+
serverName: server.name,
|
|
182
|
+
};
|
|
183
|
+
for (const tool of fetchedMcpTools) {
|
|
184
|
+
const filter = server.toolFilter;
|
|
185
|
+
if (filter) {
|
|
186
|
+
if (filter && typeof filter === 'function') {
|
|
187
|
+
const filtered = await filter(context, tool);
|
|
188
|
+
if (!filtered) {
|
|
189
|
+
globalLogger.debug(`MCP Tool (server: ${server.name}, tool: ${tool.name}) is blocked by the callable filter.`);
|
|
190
|
+
continue; // skip this tool
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
else {
|
|
194
|
+
const allowedToolNames = filter.allowedToolNames ?? [];
|
|
195
|
+
const blockedToolNames = filter.blockedToolNames ?? [];
|
|
196
|
+
if (allowedToolNames.length > 0 || blockedToolNames.length > 0) {
|
|
197
|
+
const allowed = allowedToolNames.length > 0
|
|
198
|
+
? allowedToolNames.includes(tool.name)
|
|
199
|
+
: true;
|
|
200
|
+
const blocked = blockedToolNames.length > 0
|
|
201
|
+
? blockedToolNames.includes(tool.name)
|
|
202
|
+
: false;
|
|
203
|
+
if (!allowed || blocked) {
|
|
204
|
+
if (blocked) {
|
|
205
|
+
globalLogger.debug(`MCP Tool (server: ${server.name}, tool: ${tool.name}) is blocked by the static filter.`);
|
|
206
|
+
}
|
|
207
|
+
else if (!allowed) {
|
|
208
|
+
globalLogger.debug(`MCP Tool (server: ${server.name}, tool: ${tool.name}) is not allowed by the static filter.`);
|
|
209
|
+
}
|
|
210
|
+
continue; // skip this tool
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
mcpTools.push(tool);
|
|
216
|
+
}
|
|
167
217
|
span.spanData.result = mcpTools.map((t) => t.name);
|
|
168
218
|
const tools = mcpTools.map((t) => mcpToFunctionTool(t, server, convertSchemasToStrict));
|
|
169
219
|
if (server.cacheToolsList) {
|
|
@@ -175,8 +225,8 @@ async function getFunctionToolsFromServer(server, convertSchemasToStrict) {
|
|
|
175
225
|
/**
|
|
176
226
|
* Returns all MCP tools from the provided servers, using the function tool conversion.
|
|
177
227
|
*/
|
|
178
|
-
export async function getAllMcpTools(mcpServers, convertSchemasToStrict = false) {
|
|
179
|
-
return getAllMcpFunctionTools(mcpServers, convertSchemasToStrict);
|
|
228
|
+
export async function getAllMcpTools(mcpServers, runContext, agent, convertSchemasToStrict = false) {
|
|
229
|
+
return getAllMcpFunctionTools(mcpServers, runContext, agent, convertSchemasToStrict);
|
|
180
230
|
}
|
|
181
231
|
/**
|
|
182
232
|
* Converts an MCP tool definition to a function tool for the Agents SDK.
|
|
@@ -198,6 +248,7 @@ export function mcpToFunctionTool(mcpTool, server, convertSchemasToStrict) {
|
|
|
198
248
|
return content.length === 1 ? content[0] : content;
|
|
199
249
|
}
|
|
200
250
|
const schema = {
|
|
251
|
+
...mcpTool.inputSchema,
|
|
201
252
|
type: mcpTool.inputSchema?.type ?? 'object',
|
|
202
253
|
properties: mcpTool.inputSchema?.properties ?? {},
|
|
203
254
|
required: mcpTool.inputSchema?.required ?? [],
|
package/dist/mcp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"OAAO,EAAgB,IAAI,EAAQ;OAC5B,EAAE,SAAS,EAAE;OACb,EACL,cAAc,IAAI,wBAAwB,EAC1C,uBAAuB,IAAI,iCAAiC,GAC7D,MAAM,4BAA4B;OAC5B,EAAE,cAAc,EAAE,oBAAoB,EAAE;OACxC,EAAE,MAAM,IAAI,YAAY,EAAE,SAAS,EAAU;OAC7C,KAAK,MAAM,OAAO;OAClB,EAAE,CAAC,EAAE,MAAM,gBAAgB;
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp.mjs
CHANGED
|
@@ -10,11 +10,13 @@ export const DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME = 'openai-agents:str
|
|
|
10
10
|
export class BaseMCPServerStdio {
|
|
11
11
|
cacheToolsList;
|
|
12
12
|
_cachedTools = undefined;
|
|
13
|
+
toolFilter;
|
|
13
14
|
logger;
|
|
14
15
|
constructor(options) {
|
|
15
16
|
this.logger =
|
|
16
17
|
options.logger ?? getLogger(DEFAULT_STDIO_MCP_CLIENT_LOGGER_NAME);
|
|
17
18
|
this.cacheToolsList = options.cacheToolsList ?? false;
|
|
19
|
+
this.toolFilter = options.toolFilter;
|
|
18
20
|
}
|
|
19
21
|
/**
|
|
20
22
|
* Logs a debug message when debug logging is enabled.
|
|
@@ -30,12 +32,14 @@ export class BaseMCPServerStdio {
|
|
|
30
32
|
export class BaseMCPServerStreamableHttp {
|
|
31
33
|
cacheToolsList;
|
|
32
34
|
_cachedTools = undefined;
|
|
35
|
+
toolFilter;
|
|
33
36
|
logger;
|
|
34
37
|
constructor(options) {
|
|
35
38
|
this.logger =
|
|
36
39
|
options.logger ??
|
|
37
40
|
getLogger(DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME);
|
|
38
41
|
this.cacheToolsList = options.cacheToolsList ?? false;
|
|
42
|
+
this.toolFilter = options.toolFilter;
|
|
39
43
|
}
|
|
40
44
|
/**
|
|
41
45
|
* Logs a debug message when debug logging is enabled.
|
|
@@ -95,6 +99,9 @@ export class MCPServerStdio extends BaseMCPServerStdio {
|
|
|
95
99
|
callTool(toolName, args) {
|
|
96
100
|
return this.underlying.callTool(toolName, args);
|
|
97
101
|
}
|
|
102
|
+
invalidateToolsCache() {
|
|
103
|
+
return this.underlying.invalidateToolsCache();
|
|
104
|
+
}
|
|
98
105
|
}
|
|
99
106
|
export class MCPServerStreamableHttp extends BaseMCPServerStreamableHttp {
|
|
100
107
|
underlying;
|
|
@@ -124,16 +131,19 @@ export class MCPServerStreamableHttp extends BaseMCPServerStreamableHttp {
|
|
|
124
131
|
callTool(toolName, args) {
|
|
125
132
|
return this.underlying.callTool(toolName, args);
|
|
126
133
|
}
|
|
134
|
+
invalidateToolsCache() {
|
|
135
|
+
return this.underlying.invalidateToolsCache();
|
|
136
|
+
}
|
|
127
137
|
}
|
|
128
138
|
/**
|
|
129
139
|
* Fetches and flattens all tools from multiple MCP servers.
|
|
130
140
|
* Logs and skips any servers that fail to respond.
|
|
131
141
|
*/
|
|
132
|
-
export async function getAllMcpFunctionTools(mcpServers, convertSchemasToStrict = false) {
|
|
142
|
+
export async function getAllMcpFunctionTools(mcpServers, runContext, agent, convertSchemasToStrict = false) {
|
|
133
143
|
const allTools = [];
|
|
134
144
|
const toolNames = new Set();
|
|
135
145
|
for (const server of mcpServers) {
|
|
136
|
-
const serverTools = await getFunctionToolsFromServer(server, convertSchemasToStrict);
|
|
146
|
+
const serverTools = await getFunctionToolsFromServer(server, runContext, agent, convertSchemasToStrict);
|
|
137
147
|
const serverToolNames = new Set(serverTools.map((t) => t.name));
|
|
138
148
|
const intersection = [...serverToolNames].filter((n) => toolNames.has(n));
|
|
139
149
|
if (intersection.length > 0) {
|
|
@@ -152,18 +162,58 @@ const _cachedTools = {};
|
|
|
152
162
|
*
|
|
153
163
|
* @param serverName - Name of the MCP server whose cache should be cleared.
|
|
154
164
|
*/
|
|
155
|
-
export function invalidateServerToolsCache(serverName) {
|
|
165
|
+
export async function invalidateServerToolsCache(serverName) {
|
|
156
166
|
delete _cachedTools[serverName];
|
|
157
167
|
}
|
|
158
168
|
/**
|
|
159
169
|
* Fetches all function tools from a single MCP server.
|
|
160
170
|
*/
|
|
161
|
-
async function getFunctionToolsFromServer(server, convertSchemasToStrict) {
|
|
171
|
+
async function getFunctionToolsFromServer(server, runContext, agent, convertSchemasToStrict) {
|
|
162
172
|
if (server.cacheToolsList && _cachedTools[server.name]) {
|
|
163
173
|
return _cachedTools[server.name].map((t) => mcpToFunctionTool(t, server, convertSchemasToStrict));
|
|
164
174
|
}
|
|
165
175
|
return withMCPListToolsSpan(async (span) => {
|
|
166
|
-
const
|
|
176
|
+
const fetchedMcpTools = await server.listTools();
|
|
177
|
+
const mcpTools = [];
|
|
178
|
+
const context = {
|
|
179
|
+
runContext,
|
|
180
|
+
agent,
|
|
181
|
+
serverName: server.name,
|
|
182
|
+
};
|
|
183
|
+
for (const tool of fetchedMcpTools) {
|
|
184
|
+
const filter = server.toolFilter;
|
|
185
|
+
if (filter) {
|
|
186
|
+
if (filter && typeof filter === 'function') {
|
|
187
|
+
const filtered = await filter(context, tool);
|
|
188
|
+
if (!filtered) {
|
|
189
|
+
globalLogger.debug(`MCP Tool (server: ${server.name}, tool: ${tool.name}) is blocked by the callable filter.`);
|
|
190
|
+
continue; // skip this tool
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
else {
|
|
194
|
+
const allowedToolNames = filter.allowedToolNames ?? [];
|
|
195
|
+
const blockedToolNames = filter.blockedToolNames ?? [];
|
|
196
|
+
if (allowedToolNames.length > 0 || blockedToolNames.length > 0) {
|
|
197
|
+
const allowed = allowedToolNames.length > 0
|
|
198
|
+
? allowedToolNames.includes(tool.name)
|
|
199
|
+
: true;
|
|
200
|
+
const blocked = blockedToolNames.length > 0
|
|
201
|
+
? blockedToolNames.includes(tool.name)
|
|
202
|
+
: false;
|
|
203
|
+
if (!allowed || blocked) {
|
|
204
|
+
if (blocked) {
|
|
205
|
+
globalLogger.debug(`MCP Tool (server: ${server.name}, tool: ${tool.name}) is blocked by the static filter.`);
|
|
206
|
+
}
|
|
207
|
+
else if (!allowed) {
|
|
208
|
+
globalLogger.debug(`MCP Tool (server: ${server.name}, tool: ${tool.name}) is not allowed by the static filter.`);
|
|
209
|
+
}
|
|
210
|
+
continue; // skip this tool
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
mcpTools.push(tool);
|
|
216
|
+
}
|
|
167
217
|
span.spanData.result = mcpTools.map((t) => t.name);
|
|
168
218
|
const tools = mcpTools.map((t) => mcpToFunctionTool(t, server, convertSchemasToStrict));
|
|
169
219
|
if (server.cacheToolsList) {
|
|
@@ -175,8 +225,8 @@ async function getFunctionToolsFromServer(server, convertSchemasToStrict) {
|
|
|
175
225
|
/**
|
|
176
226
|
* Returns all MCP tools from the provided servers, using the function tool conversion.
|
|
177
227
|
*/
|
|
178
|
-
export async function getAllMcpTools(mcpServers, convertSchemasToStrict = false) {
|
|
179
|
-
return getAllMcpFunctionTools(mcpServers, convertSchemasToStrict);
|
|
228
|
+
export async function getAllMcpTools(mcpServers, runContext, agent, convertSchemasToStrict = false) {
|
|
229
|
+
return getAllMcpFunctionTools(mcpServers, runContext, agent, convertSchemasToStrict);
|
|
180
230
|
}
|
|
181
231
|
/**
|
|
182
232
|
* Converts an MCP tool definition to a function tool for the Agents SDK.
|
|
@@ -198,6 +248,7 @@ export function mcpToFunctionTool(mcpTool, server, convertSchemasToStrict) {
|
|
|
198
248
|
return content.length === 1 ? content[0] : content;
|
|
199
249
|
}
|
|
200
250
|
const schema = {
|
|
251
|
+
...mcpTool.inputSchema,
|
|
201
252
|
type: mcpTool.inputSchema?.type ?? 'object',
|
|
202
253
|
properties: mcpTool.inputSchema?.properties ?? {},
|
|
203
254
|
required: mcpTool.inputSchema?.required ?? [],
|