diff --git a/src/utils/security.ts b/src/utils/security.ts index c6ecbc9..1a0e1d6 100644 --- a/src/utils/security.ts +++ b/src/utils/security.ts @@ -412,8 +412,13 @@ async function executeApiTool( urlPath = urlPath.replace(\`{\${param.name}}\`, encodeURIComponent(String(value))); } else if (param.in === 'query') { - queryParams[param.name] = value; - } + // Convert arrays to comma-separated strings for query parameters + queryParams[param.name] = Array.isArray(value) + ? value + .filter((v) => v !== undefined && v !== null) + .map((v) => String(v)) + .join(',') + : value; } else if (param.in === 'header') { headers[param.name.toLowerCase()] = String(value); }