tinyhumansai/openhuman · error

Missing required parameter: output_schema

Error message

Missing required parameter: output_schema

What it means

Argument-validation guard in the Parallel structured-output task tool's execute: 'output_schema' is missing (args.get("output_schema") yields None). This tool's schema extends the processor tool's required list to [input, processor, output_schema], because the tool exists to return schema-conformant structured output; without the schema the call is meaningless. Raised before dispatch, purely malformed-call signal.

Source

Thrown at src/openhuman/search/tools/parallel.rs:863

                    "maximum": 900,
                    "description": "Max time to wait (default 600)"
                }
            },
            "required": ["input", "processor", "output_schema"]
        })
    }

    async fn execute(&self, args: serde_json::Value) -> anyhow::Result<ToolResult> {
        let input = args
            .get("input")
            .ok_or_else(|| anyhow::anyhow!("Missing required parameter: input"))?;
        let processor = args
            .get("processor")
            .and_then(|v| v.as_str())
            .ok_or_else(|| anyhow::anyhow!("Missing required parameter: processor"))?;
        let output_schema = args
            .get("output_schema")
            .ok_or_else(|| anyhow::anyhow!("Missing required parameter: output_schema"))?;

        let mut body = json!({
            "input": input,
            "processor": processor,
            "outputSchema": output_schema,
        });
        if let Some(t) = args.get("timeout_seconds").and_then(|v| v.as_u64()) {
            body["timeoutSeconds"] = json!(t.clamp(10, 900));
        }

        tracing::info!("[parallel_enrich] processor={}", processor);

        match self
            .client
            .post::<EnrichResponse>("/agent-integrations/parallel/enrich", &body)
            .await
        {
            Ok(resp) => {

View on GitHub (pinned to 7491200858)

Solutions

  1. Retry including 'output_schema' as a valid JSON Schema object describing the desired output.
  2. Validate the schema itself (type: object with properties) before calling.
  3. If unstructured output is acceptable, use the plain processor tool instead.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at src/openhuman/search/tools/parallel.rs:863 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17). Data as JSON: /api/errors/f4f940a370b11348. Report an issue: GitHub.