tinyhumansai/openhuman · error · anyhow::Error

no versions found for {qualified_name}

Error message

no versions found for {qualified_name}

What it means

The MCP official registry's versions endpoint returned HTTP success but the envelope contained no version entry for the requested qualified name — the server is known to the registry listing but has no published versions to install.

Source

Thrown at src/openhuman/mcp/registry/registries/mcp_official.rs:225

        let status = resp.status();
        let body = resp.text().await.context("MCP official read failed")?;

        if !status.is_success() {
            anyhow::bail!(
                "MCP official registry GET {qualified_name} returned HTTP {status}: {}",
                &body[..body.len().min(200)]
            );
        }

        // The versions endpoint returns the same envelope array as the
        // list endpoint. Extract the raw JSON for the first (latest)
        // server object and cache it so subsequent calls skip the HTTP
        // round-trip.
        let raw: Value = serde_json::from_str(&body)
            .with_context(|| format!("Failed to re-parse MCP official versions: {body}"))?;
        let server_value = raw
            .pointer("/servers/0/server")
            .ok_or_else(|| anyhow::anyhow!("no versions found for {qualified_name}"))?;
        let server_json = server_value.to_string();
        let _ = store::set_cached(config, &cache_key, &server_json);

        let server: OfficialServer = serde_json::from_value(server_value.clone())
            .with_context(|| format!("Failed to parse MCP official server: {server_json}"))?;
        tracing::debug!(
            "[mcp-official] get ok qualified_name={} packages={} remotes={}",
            server.name,
            server.packages.len(),
            server.remotes.len()
        );
        Ok(server.into_detail())
    }
}

/// Fetch one page from the registry, optionally with a cursor. Returns the
/// raw response body so callers can both parse it and write it to the SQLite
/// response cache.

View on GitHub (pinned to 7491200858)

Solutions

  1. Check the package page on the official registry to confirm any version was ever published
  2. Retry later if the publication is recent and propagating
  3. Pick a different qualified_name that has published versions
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at src/openhuman/mcp/registry/registries/mcp_official.rs:225 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/d3f04b9bdd6385a1. Report an issue: GitHub.