You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/toolhive/reference/cli/thv_run.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -111,6 +111,7 @@ thv run [flags] SERVER_OR_IMAGE_OR_PROTOCOL [-- ARGS...]
111
111
### Options
112
112
113
113
```
114
+
--allow-docker-gateway Allow outbound connections to Docker gateway addresses (host.docker.internal, gateway.docker.internal, 172.17.0.1). Only applies when --isolate-network is set. These are blocked by default even when insecure_allow_all is enabled.
114
115
--audit-config string Path to the audit configuration file
115
116
--authz-config string Path to the authorization configuration file
116
117
--ca-cert string Path to a custom CA certificate file to use for container builds
Copy file name to clipboardExpand all lines: docs/toolhive/reference/crd-spec.md
+25-4Lines changed: 25 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -281,6 +281,7 @@ _Appears in:_
281
281
|`telemetry`_[pkg.telemetry.Config](#pkgtelemetryconfig)_| Telemetry configures OpenTelemetry-based observability for the Virtual MCP server<br />including distributed tracing, OTLP metrics export, and Prometheus metrics endpoint. || Optional: \{\} <br /> |
282
282
|`audit`_[pkg.audit.Config](#pkgauditconfig)_| Audit configures audit logging for the Virtual MCP server.<br />When present, audit logs include MCP protocol operations.<br />See audit.Config for available configuration options. || Optional: \{\} <br /> |
283
283
|`optimizer`_[vmcp.config.OptimizerConfig](#vmcpconfigoptimizerconfig)_| Optimizer configures the MCP optimizer for context optimization on large toolsets.<br />When enabled, vMCP exposes only find_tool and call_tool operations to clients<br />instead of all backend tools directly. This reduces token usage by allowing<br />LLMs to discover relevant tools on demand rather than receiving all tool definitions. || Optional: \{\} <br /> |
284
+
|`sessionStorage`_[vmcp.config.SessionStorageConfig](#vmcpconfigsessionstorageconfig)_| SessionStorage configures session storage for stateful horizontal scaling.<br />When provider is "redis", the operator injects Redis connection parameters<br />(address, db, keyPrefix) here. The Redis password is provided separately via<br />the THV_SESSION_REDIS_PASSWORD environment variable. || Optional: \{\} <br /> |
284
285
285
286
286
287
#### vmcp.config.ConflictResolutionConfig
@@ -502,6 +503,27 @@ _Appears in:_
502
503
|`default`_[pkg.json.Any](#pkgjsonany)_| Default is the fallback value if template expansion fails.<br />Type coercion is applied to match the declared Type. || Schemaless: \{\} <br />Optional: \{\} <br /> |
503
504
504
505
506
+
#### vmcp.config.SessionStorageConfig
507
+
508
+
509
+
510
+
SessionStorageConfig configures session storage for stateful horizontal scaling.
511
+
The Redis password is not stored here; it is injected as the THV_SESSION_REDIS_PASSWORD
512
+
environment variable by the operator when spec.sessionStorage.passwordRef is set.
513
+
514
+
515
+
516
+
_Appears in:_
517
+
-[vmcp.config.Config](#vmcpconfigconfig)
518
+
519
+
| Field | Description | Default | Validation |
520
+
| --- | --- | --- | --- |
521
+
|`provider`_string_| Provider is the session storage backend type. || Enum: [memory redis] <br />Required: \{\} <br /> |
522
+
|`address`_string_| Address is the Redis server address (required when provider is redis). || Optional: \{\} <br /> |
523
+
|`db`_integer_| DB is the Redis database number. | 0 | Minimum: 0 <br />Optional: \{\} <br /> |
524
+
|`keyPrefix`_string_| KeyPrefix is an optional prefix for all Redis keys used by ToolHive. || Optional: \{\} <br /> |
525
+
526
+
505
527
#### vmcp.config.StaticBackendConfig
506
528
507
529
@@ -991,6 +1013,7 @@ _Appears in:_
991
1013
| Field | Description | Default | Validation |
992
1014
| --- | --- | --- | --- |
993
1015
|`issuer`_string_| Issuer is the issuer identifier for this authorization server.<br />This will be included in the "iss" claim of issued tokens.<br />Must be a valid HTTPS URL (or HTTP for localhost) without query, fragment, or trailing slash (per RFC 8414). || Pattern: `^https?://[^\s?#]+[^/\s?#]$` <br />Required: \{\} <br /> |
1016
+
|`authorizationEndpointBaseUrl`_string_| AuthorizationEndpointBaseURL overrides the base URL used for the authorization_endpoint<br />in the OAuth discovery document. When set, the discovery document will advertise<br />`\{authorizationEndpointBaseUrl\}/oauth/authorize` instead of `\{issuer\}/oauth/authorize`.<br />All other endpoints (token, registration, JWKS) remain derived from the issuer.<br />This is useful when the browser-facing authorization endpoint needs to be on a<br />different host than the issuer used for backend-to-backend calls.<br />Must be a valid HTTPS URL (or HTTP for localhost) without query, fragment, or trailing slash. || Pattern: `^https?://[^\s?#]+[^/\s?#]$` <br />Optional: \{\} <br /> |
994
1017
|`signingKeySecretRefs`_[api.v1alpha1.SecretKeyRef](#apiv1alpha1secretkeyref) array_| SigningKeySecretRefs references Kubernetes Secrets containing signing keys for JWT operations.<br />Supports key rotation by allowing multiple keys (oldest keys are used for verification only).<br />If not specified, an ephemeral signing key will be auto-generated (development only -<br />JWTs will be invalid after restart). || MaxItems: 5 <br />Optional: \{\} <br /> |
995
1018
|`hmacSecretRefs`_[api.v1alpha1.SecretKeyRef](#apiv1alpha1secretkeyref) array_| HMACSecretRefs references Kubernetes Secrets containing symmetric secrets for signing<br />authorization codes and refresh tokens (opaque tokens).<br />Current secret must be at least 32 bytes and cryptographically random.<br />Supports secret rotation via multiple entries (first is current, rest are for verification).<br />If not specified, an ephemeral secret will be auto-generated (development only -<br />auth codes and refresh tokens will be invalid after restart). || Optional: \{\} <br /> |
996
1019
|`tokenLifespans`_[api.v1alpha1.TokenLifespanConfig](#apiv1alpha1tokenlifespanconfig)_| TokenLifespans configures the duration that various tokens are valid.<br />If not specified, defaults are applied (access: 1h, refresh: 7d, authCode: 10m). || Optional: \{\} <br /> |
0 commit comments