tinyhumansai/openhuman · error

Missing required parameter: urls (a non-empty list of page U

Error message

Missing required parameter: urls (a non-empty list of page URLs)

What it means

collect_urls found neither a `urls` array with usable entries nor a `url` string after normalization — the argument accepted for the one-document case also came back empty. Pure argument-shape validation before any network call.

Source

Thrown at src/openhuman/search/tools/exa.rs:655

            client: ExaClient::new(api_key, api_url, max_results, timeout_secs),
        }
    }

    /// Accept either a `urls` array or a single `url` string, so the agent can
    /// call this the obvious way for the one-document case.
    fn collect_urls(args: &Value) -> anyhow::Result<Vec<String>> {
        let urls: Vec<String> = match args.get("urls") {
            Some(Value::Array(items)) => items
                .iter()
                .filter_map(|v| non_empty(v.as_str()))
                .collect::<Vec<_>>(),
            Some(Value::String(single)) => non_empty(Some(single)).into_iter().collect(),
            _ => non_empty(args.get("url").and_then(Value::as_str))
                .into_iter()
                .collect(),
        };
        if urls.is_empty() {
            anyhow::bail!("Missing required parameter: urls (a non-empty list of page URLs)");
        }
        Ok(urls)
    }
}

#[async_trait]
impl Tool for ExaGetContentsTool {
    fn name(&self) -> &str {
        "exa_get_contents"
    }

    fn description(&self) -> &str {
        "Retrieve the full crawled contents of one or more URLs using Exa. Returns page text \
         and, on request, a summary or query-relevant highlights per URL."
    }

    fn parameters_schema(&self) -> Value {
        json!({

View on GitHub (pinned to 7491200858)

Solutions

  1. Re-issue the call with a non-empty `urls` array or a single non-empty `url` string
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at src/openhuman/search/tools/exa.rs:655 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/b91643950b967baf. Report an issue: GitHub.