ruvnet/ruflo · error
Tool input validation failed
Error message
Tool input validation failed
What it means
Log/error path in the tool registry's execute: the input failed validateSchema against the tool's declared inputSchema (a security feature); the formatted validation errors are returned so the caller knows which arguments were malformed.
Source
Thrown at v3/@claude-flow/mcp/src/tool-registry.ts:304
input: Record<string, unknown>,
context?: ToolContext
): Promise<ToolCallResult> {
const startTime = performance.now();
const metadata = this.tools.get(name);
if (!metadata) {
return {
content: [{ type: 'text', text: `Tool not found: ${name}` }],
isError: true,
};
}
// Validate input against schema (security feature)
if (metadata.tool.inputSchema) {
const validation = validateSchema(input, metadata.tool.inputSchema);
if (!validation.valid) {
const errorMsg = formatValidationErrors(validation.errors);
this.logger.warn('Tool input validation failed', {
name,
errors: validation.errors,
});
return {
content: [{ type: 'text', text: `Invalid input: ${errorMsg}` }],
isError: true,
};
}
}
const execContext: ToolContext = {
sessionId: context?.sessionId || this.defaultContext?.sessionId || 'default-session',
...this.defaultContext,
...context,
};
if (this.authorizer) {
try {View on GitHub (pinned to fa13ee4ad6)
Solutions
- Fix the tool call arguments to satisfy the tool's input schema; the validation errors list the offending fields.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at v3/@claude-flow/mcp/src/tool-registry.ts:304 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/a42a930c4a2d9943.
Report an issue: GitHub.