diff --git a/surfsense_mcp/src/surfsense_mcp/core/client.py b/surfsense_mcp/src/surfsense_mcp/core/client.py index b61de5221..6635d011b 100644 --- a/surfsense_mcp/src/surfsense_mcp/core/client.py +++ b/surfsense_mcp/src/surfsense_mcp/core/client.py @@ -49,6 +49,10 @@ class SurfSenseClient: files: Any | None = None, ) -> Any: """Send a request and return the parsed body, or raise ``ToolError``.""" + # Omit unset query params: sending them empty makes the API parse "" + # as a value (e.g. int("") on folder_id) and fail. + if params is not None: + params = {key: value for key, value in params.items() if value is not None} try: response = await self._http.request( method, path, params=params, json=json, data=data, files=files