Skip to content

Commit 70878ff

Browse files
Merge pull request #1530 from blublinsky/MCP-AdditionalToolsets
Fix IntrospectionEnabled Default, removed read only flag
2 parents cbd1721 + dda712b commit 70878ff

21 files changed

Lines changed: 916 additions & 84 deletions

api/v1alpha1/olsconfig_types.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,10 +206,12 @@ type OLSSpec struct {
206206
// +kubebuilder:validation:Optional
207207
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="TLS Security Profile",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced"}
208208
TLSSecurityProfile *configv1.TLSSecurityProfile `json:"tlsSecurityProfile,omitempty"`
209-
// Enable introspection features
209+
// Enable introspection features (e.g. built-in OpenShift MCP server). Omitted means use the
210+
// CRD default (true); explicit false disables introspection.
210211
// +kubebuilder:validation:Optional
212+
// +kubebuilder:default=true
211213
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Introspection Enabled",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
212-
IntrospectionEnabled bool `json:"introspectionEnabled,omitempty"`
214+
IntrospectionEnabled *bool `json:"introspectionEnabled,omitempty"`
213215
// MCP Kubernetes server configuration
214216
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="MCP Kube Server Configuration",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced"}
215217
// +kubebuilder:validation:Optional

api/v1alpha1/zz_generated.deepcopy.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

bundle/manifests/lightspeed-operator.clusterserviceversion.yaml

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -114,24 +114,6 @@ spec:
114114
- description: Fake Provider MCP Tool Call
115115
displayName: Fake Provider MCP Tool Call
116116
path: llm.providers[0].fakeProviderMCPToolCall
117-
- description: Google Vertex Anthropic Config
118-
displayName: Google Vertex Anthropic Config
119-
path: llm.providers[0].googleVertexAnthropicConfig
120-
- description: Server region location
121-
displayName: Server Region Location
122-
path: llm.providers[0].googleVertexAnthropicConfig.location
123-
- description: Google Cloud project ID
124-
displayName: Google Cloud Project ID
125-
path: llm.providers[0].googleVertexAnthropicConfig.projectID
126-
- description: Google Vertex Config
127-
displayName: Google Vertex Config
128-
path: llm.providers[0].googleVertexConfig
129-
- description: Server region location
130-
displayName: Server Region Location
131-
path: llm.providers[0].googleVertexConfig.location
132-
- description: Google Cloud project ID
133-
displayName: Google Cloud Project ID
134-
path: llm.providers[0].googleVertexConfig.projectID
135117
- description: List of models from the provider
136118
displayName: Models
137119
path: llm.providers[0].models

config/crd/bases/ols.openshift.io_olsconfigs.yaml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -140,10 +140,10 @@ spec:
140140
is 2048 tokens.
141141
type: integer
142142
toolBudgetRatio:
143-
default: 0.25
143+
default: 0.5
144144
description: Ratio of context window size allocated
145145
for tool token budget. Must be between 0.1 and
146-
0.5. The default is 0.25.
146+
0.5. The default is 0.5.
147147
maximum: 0.5
148148
minimum: 0.1
149149
type: number
@@ -4412,7 +4412,10 @@ spec:
44124412
x-kubernetes-map-type: atomic
44134413
type: array
44144414
introspectionEnabled:
4415-
description: Enable introspection features
4415+
default: true
4416+
description: |-
4417+
Enable introspection features (e.g. built-in OpenShift MCP server). Omitted means use the
4418+
CRD default (true); explicit false disables introspection.
44164419
type: boolean
44174420
logLevel:
44184421
default: INFO

config/manifests/bases/lightspeed-operator.clusterserviceversion.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ spec:
9797
displayName: Max Tokens For Response
9898
path: llm.providers[0].models[0].parameters.maxTokensForResponse
9999
- description: Ratio of context window size allocated for tool token budget.
100-
Must be between 0.1 and 0.5. The default is 0.25.
100+
Must be between 0.1 and 0.5. The default is 0.5.
101101
displayName: Tool Budget Ratio
102102
path: llm.providers[0].models[0].parameters.toolBudgetRatio
103103
- description: Model API URL
@@ -233,7 +233,9 @@ spec:
233233
authentication
234234
displayName: Image Pull Secrets
235235
path: ols.imagePullSecrets
236-
- description: Enable introspection features
236+
- description: |-
237+
Enable introspection features (e.g. built-in OpenShift MCP server). Omitted means use the
238+
CRD default (true); explicit false disables introspection.
237239
displayName: Introspection Enabled
238240
path: ols.introspectionEnabled
239241
x-descriptors:

internal/controller/appserver/assets.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ func buildToolFilteringConfig(cr *olsv1alpha1.OLSConfig, mcpServers []utils.MCPS
220220
if len(mcpServers) == 0 {
221221
r.GetLogger().Info(
222222
"ToolFilteringConfig specified but no MCP servers configured. Tool filtering will be disabled.",
223-
"IntrospectionEnabled", cr.Spec.OLSConfig.IntrospectionEnabled,
223+
"IntrospectionEnabled", utils.BoolDeref(cr.Spec.OLSConfig.IntrospectionEnabled, true),
224224
"MCPServersCount", len(cr.Spec.MCPServers),
225225
)
226226
return nil
@@ -349,7 +349,7 @@ func generateMCPServerConfigs(r reconciler.Reconciler, cr *olsv1alpha1.OLSConfig
349349
servers := []utils.MCPServerConfig{}
350350

351351
// Add OpenShift MCP server if introspection is enabled
352-
if cr.Spec.OLSConfig.IntrospectionEnabled {
352+
if utils.BoolDeref(cr.Spec.OLSConfig.IntrospectionEnabled, true) {
353353
// Get timeout from MCPKubeServerConfig if specified, otherwise use default
354354
timeout := utils.OpenShiftMCPServerTimeout
355355
if cr.Spec.OLSConfig.MCPKubeServerConfig != nil && cr.Spec.OLSConfig.MCPKubeServerConfig.Timeout != 0 {

0 commit comments

Comments
 (0)