@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 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.
@@ -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,EAElB,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;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"}
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";
@@ -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,EAElB,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;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"}
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 mcpTools = await server.listTools();
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":"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"}
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 mcpTools = await server.listTools();
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 ?? [],