Skip to content

Commit e80cdf7

Browse files
committed
Delay import of mcp servers
1 parent 2b1e0ac commit e80cdf7

File tree

1 file changed

+14
-12
lines changed

1 file changed

+14
-12
lines changed

temporalio/contrib/openai_agents/_temporal_openai_agents.py

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -52,15 +52,11 @@
5252
)
5353
from temporalio.worker.workflow_sandbox import SandboxedWorkflowRunner
5454

55-
# MCP only supported on python >=3.10
56-
try:
57-
from temporalio.contrib.openai_agents._mcp import TemporalMCPServer
58-
except ImportError:
59-
pass
60-
6155
if typing.TYPE_CHECKING:
6256
from agents.mcp import MCPServer
6357

58+
from temporalio.contrib.openai_agents._mcp import TemporalMCPServer
59+
6460

6561
@contextmanager
6662
def set_open_ai_agent_temporal_overrides(
@@ -273,12 +269,18 @@ def __init__(
273269
self._model_params = model_params
274270
self._model_provider = model_provider
275271

276-
self._mcp_servers = [
277-
server
278-
if isinstance(server, TemporalMCPServer)
279-
else TemporalMCPServer(server)
280-
for server in mcp_servers
281-
]
272+
if mcp_servers:
273+
# Delayed import as mcp servers only work on python >=3.10
274+
from temporalio.contrib.openai_agents._mcp import TemporalMCPServer
275+
276+
self._mcp_servers = [
277+
server
278+
if isinstance(server, TemporalMCPServer)
279+
else TemporalMCPServer(server)
280+
for server in mcp_servers
281+
]
282+
else:
283+
self._mcp_servers = []
282284

283285
def init_client_plugin(self, next: temporalio.client.Plugin) -> None:
284286
"""Set the next client plugin"""

0 commit comments

Comments
 (0)