ruvnet/ruflo · error · Error

Parameter '${name}' must be an array

Error message

Parameter '${name}' must be an array

What it means

MCP input-validation helper: validateArrayParam() received a value that failed Array.isArray for the named parameter (e.g. allowedTools, requiredSkills, tasks). Untrusted JSON-RPC tool arguments contained a non-array where a list was required.

Source

Thrown at v3/plugins/teammate-plugin/src/mcp-tools.ts:49

/**
 * Validate string parameter
 */
function validateStringParam(value: unknown, name: string, maxLength: number = MAX_PARAM_LENGTH): string {
  if (typeof value !== 'string') {
    throw new Error(`Parameter '${name}' must be a string`);
  }
  if (value.length > maxLength) {
    throw new Error(`Parameter '${name}' exceeds maximum length of ${maxLength}`);
  }
  return value;
}

/**
 * Validate array parameter
 */
function validateArrayParam<T>(value: unknown, name: string, maxItems: number = MAX_ARRAY_ITEMS): T[] {
  if (!Array.isArray(value)) {
    throw new Error(`Parameter '${name}' must be an array`);
  }
  if (value.length > maxItems) {
    throw new Error(`Parameter '${name}' exceeds maximum of ${maxItems} items`);
  }
  return value as T[];
}

// ============================================================================
// Tool Definitions
// ============================================================================

export interface MCPTool {
  name: string;
  description: string;
  inputSchema: {
    type: 'object';
    properties: Record<string, unknown>;
    required?: string[];

View on GitHub (pinned to fa13ee4ad6)

Solutions

  1. Pass an array value for this parameter; wrap scalar input in an array if a single item was intended.
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown at v3/plugins/teammate-plugin/src/mcp-tools.ts:49 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of ruvnet/ruflo@fa13ee4ad6 (2026-08-18). Data as JSON: /api/errors/afae7da967c64681. Report an issue: GitHub.