66from fastmcp .tools import Tool
77
88from fenic import SystemTool , SystemToolConfig
9- from fenic .api .mcp ._tool_generation_utils import auto_generate_system_tools_from_tables
109from fenic .api .functions import col , tool_param
10+ from fenic .api .mcp ._tool_generation_utils import auto_generate_system_tools_from_tables
1111from fenic .api .mcp .server import create_mcp_server
1212from fenic .api .session .session import Session
1313from fenic .core ._utils .misc import to_snake_case
1818
1919
2020def test_server_generation_with_parameterized_tools (local_session : Session ):
21- pytest .importorskip ("fastmcp" )
2221 df = local_session .create_dataframe ({"city" : ["SF" ], "age" : [10 ], "user_name" : ["Alice" ]})
2322 query = df .filter (
2423 (col ("city" ) == tool_param ("city_name" , StringType ))
@@ -38,7 +37,7 @@ def test_server_generation_with_parameterized_tools(local_session: Session):
3837 query = query ,
3938 )
4039
41- server = create_mcp_server (local_session , "Test Server" , parameterized_tools = [parameterized_tool ])
40+ server = create_mcp_server (local_session , "Test Server" , user_defined_tools = [parameterized_tool ])
4241 server_tools = asyncio .run (server .mcp .get_tools ())
4342 assert len (server_tools ) == 1
4443 parameter_schema = server_tools ["tool_x" ].parameters ['properties' ]
@@ -59,8 +58,7 @@ def test_server_generation_with_parameterized_tools(local_session: Session):
5958 assert user_names_param ['minItems' ] == 1
6059 assert user_names_param ['description' ] == "User names"
6160
62- def test_server_generation (local_session : Session ):
63- pytest .importorskip ("fastmcp" )
61+ def test_server_generation_with_system_tools (local_session : Session ):
6462 create_table_with_rows (local_session , "t1" , [1 , 2 , 3 ], description = "table one" )
6563 create_table_with_rows (local_session , "t2" , [10 , 20 ], description = "table two" )
6664 tools = auto_generate_system_tools_from_tables (["t1" , "t2" ], local_session , tool_namespace = "Auto" )
0 commit comments