Skip to content

Add optional installation flag for Virtual MCP CRDs in operator-crds Helm chart #2709

@JAORMX

Description

@JAORMX

Summary

The toolhive-operator-crds Helm chart currently installs all CRDs including Virtual MCP CRDs by default. Users who only need core MCP server management (without Virtual MCP aggregation features) should be able to skip installing these CRDs.

Background

Virtual MCP CRDs (54KB total):

  • VirtualMCPServer - Aggregates multiple backend MCP servers into unified endpoint
  • VirtualMCPCompositeToolDefinition - Defines reusable composite workflows

Core CRDs (96KB total):

  • MCPServer, MCPRegistry, MCPGroup, MCPRemoteProxy, MCPExternalAuthConfig, MCPToolConfig

Currently all 8 CRDs are always installed from deploy/charts/operator-crds/crds/ with no configuration options.

Proposed Solution

Add a Helm value to make Virtual MCP CRDs optional:

# values.yaml
crds:
  install:
    virtualMCP: true  # default false

Related Files

  • deploy/charts/operator-crds/crds/toolhive.stacklok.dev_virtualmcpservers.yaml
  • deploy/charts/operator-crds/crds/toolhive.stacklok.dev_virtualmcpcompositetooldefinitions.yaml
  • deploy/charts/operator-crds/values.yaml (currently empty)
  • cmd/thv-operator/main.go (controller registration at lines 184-199)

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions