Summary
The toolhive backend is removing the legacy registry format and aligning its registry API with the v0.1 surface that stacklok/toolhive-registry-server exposes. Studio needs to follow.
Phase 1 — Remove registry_legacy_format handling
Once the BE stops emitting registry_legacy_format (stacklok/toolhive#5278), the corresponding FE branches are dead code.
Files:
renderer/src/common/components/settings/registry/registry-errors-message.ts — REGISTRY_LEGACY_FORMAT_CODE, isRegistryLegacyFormatError, legacy-format toast
renderer/src/common/components/error/registry-error.tsx — isLegacyFormat branch
- Corresponding tests
Blocked on: stacklok/toolhive#5278
Phase 2 — Switch to v0.1 API and retype RegistryItem
Toolhive is removing /api/v1beta/registry/{name}/servers and aligning its v0.1 surface with toolhive-registry-server's swagger (stacklok/toolhive#5279). Studio needs to:
- Switch from
/api/v1beta/registry/{name}/servers to the v0.1 endpoints — same pattern studio already uses for skills.
- Adopt the per-version sub-resources (
/servers/{serverName}/versions, /versions/{version}) as they replace /versions/latest.
- Retype
RegistryItem from RegistryImageMetadata | RegistryRemoteServerMetadata to the upstream MCP shape.
- Regenerate
common/api/generated/ against the new OpenAPI spec.
Files (~15+): everything in renderer/src/features/registry-servers/ and renderer/src/features/mcp-servers/ that imports the legacy types, plus common/api/registry-types.ts.
Blocked on: stacklok/toolhive#5279
References
Summary
The toolhive backend is removing the legacy registry format and aligning its registry API with the v0.1 surface that
stacklok/toolhive-registry-serverexposes. Studio needs to follow.Phase 1 — Remove
registry_legacy_formathandlingOnce the BE stops emitting
registry_legacy_format(stacklok/toolhive#5278), the corresponding FE branches are dead code.Files:
renderer/src/common/components/settings/registry/registry-errors-message.ts—REGISTRY_LEGACY_FORMAT_CODE,isRegistryLegacyFormatError, legacy-format toastrenderer/src/common/components/error/registry-error.tsx—isLegacyFormatbranchBlocked on: stacklok/toolhive#5278
Phase 2 — Switch to v0.1 API and retype
RegistryItemToolhive is removing
/api/v1beta/registry/{name}/serversand aligning its v0.1 surface withtoolhive-registry-server's swagger (stacklok/toolhive#5279). Studio needs to:/api/v1beta/registry/{name}/serversto the v0.1 endpoints — same pattern studio already uses for skills./servers/{serverName}/versions,/versions/{version}) as they replace/versions/latest.RegistryItemfromRegistryImageMetadata | RegistryRemoteServerMetadatato the upstream MCP shape.common/api/generated/against the new OpenAPI spec.Files (~15+): everything in
renderer/src/features/registry-servers/andrenderer/src/features/mcp-servers/that imports the legacy types, pluscommon/api/registry-types.ts.Blocked on: stacklok/toolhive#5279
References
stacklok/toolhive-registry-serverdocs/thv-registry-api/swagger.yaml