diff --git a/tests/tools/test_mcp_tool.py b/tests/tools/test_mcp_tool.py index 97dc9280..b14558ba 100644 --- a/tests/tools/test_mcp_tool.py +++ b/tests/tools/test_mcp_tool.py @@ -545,6 +545,26 @@ async def test_connect_mcp_servers_enabled_tools_supports_wrapped_names( assert registry.tool_names == ["mcp_test_demo"] +@pytest.mark.asyncio +async def test_connect_mcp_servers_enabled_tools_supports_limited_wrapped_names( + fake_mcp_runtime: dict[str, object | None], +) -> None: + long_tool_name = "tool-" + "very-long-name-" * 8 + wrapped_name = _sanitize_mcp_tool_name(f"mcp_test_{long_tool_name}") + assert len(wrapped_name) == 64 + + fake_mcp_runtime["session"] = _make_fake_session([long_tool_name, "other"]) + registry = ToolRegistry() + stacks = await connect_mcp_servers( + {"test": MCPServerConfig(command="fake", enabled_tools=[wrapped_name])}, + registry, + ) + for stack in stacks.values(): + await stack.aclose() + + assert registry.tool_names == [wrapped_name] + + @pytest.mark.asyncio async def test_connect_mcp_servers_enabled_tools_empty_list_registers_none( fake_mcp_runtime: dict[str, object | None],