Skip to content

Commit aa3e1ea

Browse files
committed
Add name argument
1 parent ce14ca2 commit aa3e1ea

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

temporalio/contrib/openai_agents/_mcp.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -141,23 +141,25 @@ class StatelessMCPServerProvider:
141141

142142
def __init__(
143143
self,
144+
name: str,
144145
server_factory: Union[
145146
Callable[[], MCPServer], Callable[[Optional[Any]], MCPServer]
146147
],
147148
):
148149
"""Initialize the stateless temporal MCP server.
149150
150151
Args:
152+
name: The name of the MCP server.
151153
server_factory: A function which will produce MCPServer instances. It should return a new server each time
152-
so that state is not shared between workflow runs
154+
so that state is not shared between workflow runs.
153155
"""
154156
self._server_factory = server_factory
155157

156158
# Cache whether the server factory needs to be provided with arguments
157159
sig = inspect.signature(self._server_factory)
158160
self._server_accepts_arguments = len(sig.parameters) != 0
159161

160-
self._name = self._create_server(None).name + "-stateless"
162+
self._name = name + "-stateless"
161163
super().__init__()
162164

163165
def _create_server(self, factory_argument: Optional[Any]) -> MCPServer:
@@ -417,16 +419,18 @@ class StatefulMCPServerProvider:
417419

418420
def __init__(
419421
self,
422+
name: str,
420423
server_factory: Callable[[Optional[Any]], MCPServer],
421424
):
422425
"""Initialize the stateful temporal MCP server.
423426
424427
Args:
428+
name: The name of the MCP server.
425429
server_factory: A function which will produce MCPServer instances. It should return a new server each time
426430
so that state is not shared between workflow runs
427431
"""
428432
self._server_factory = server_factory
429-
self._name = server_factory(None).name + "-stateful"
433+
self._name = name + "-stateful"
430434
self._connect_handle: Optional[ActivityHandle] = None
431435
self._servers: dict[str, MCPServer] = {}
432436
super().__init__()

tests/contrib/openai_agents/test_openai.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2464,9 +2464,9 @@ async def test_mcp_server(
24642464

24652465
tracking_server = get_tracking_server(name="HelloServer")
24662466
server: Union[StatefulMCPServerProvider, StatelessMCPServerProvider] = (
2467-
StatefulMCPServerProvider(lambda _: tracking_server)
2467+
StatefulMCPServerProvider("HelloServer", lambda _: tracking_server)
24682468
if stateful
2469-
else StatelessMCPServerProvider(lambda _: tracking_server)
2469+
else StatelessMCPServerProvider("HelloServer", lambda _: tracking_server)
24702470
)
24712471

24722472
new_config = client.config()
@@ -2577,9 +2577,9 @@ def factory(args: Optional[Any]) -> MCPServer:
25772577
return get_tracking_server("HelloServer")
25782578

25792579
server: Union[StatefulMCPServerProvider, StatelessMCPServerProvider] = (
2580-
StatefulMCPServerProvider(factory)
2580+
StatefulMCPServerProvider("HelloServer", factory)
25812581
if stateful
2582-
else StatelessMCPServerProvider(factory)
2582+
else StatelessMCPServerProvider("HelloServer", factory)
25832583
)
25842584

25852585
new_config = client.config()
@@ -2625,6 +2625,7 @@ async def test_stateful_mcp_server_no_worker(client: Client):
26252625
from temporalio.contrib.openai_agents import StatefulMCPServerProvider
26262626

26272627
server = StatefulMCPServerProvider(
2628+
"Filesystem-Server",
26282629
lambda _: MCPServerStdio(
26292630
name="Filesystem-Server",
26302631
params={
@@ -2635,7 +2636,7 @@ async def test_stateful_mcp_server_no_worker(client: Client):
26352636
os.path.dirname(os.path.abspath(__file__)),
26362637
],
26372638
},
2638-
)
2639+
),
26392640
)
26402641

26412642
# Override the connect activity to not actually start a worker

0 commit comments

Comments
 (0)