bifrost.client block controls how Bifrost manages its internal worker pool, request logging, authentication enforcement, header policies, SDK compatibility shims, and MCP agent behaviour. All settings map directly to the client section of the rendered config.json.
Connection Pool
| Parameter | Description | Default |
|---|---|---|
bifrost.client.initialPoolSize | Pre-allocated worker goroutines per provider queue | 300 |
bifrost.client.dropExcessRequests | Drop requests when queue is full instead of waiting | false |
1000 is a common starting point.
Request & Response Logging
| Parameter | Description | Default |
|---|---|---|
bifrost.client.enableLogging | Log all LLM requests and responses | true |
bifrost.client.disableContentLogging | Strip message content from logs (keeps metadata) | false |
bifrost.client.logRetentionDays | Days to retain log entries in the store | 365 |
bifrost.client.loggingHeaders | HTTP request headers to capture in log metadata | [] |
disableContentLogging: true for HIPAA / PCI compliance workloads where message content must not be persisted.
Security & CORS
| Parameter | Description | Default |
|---|---|---|
bifrost.client.allowedOrigins | CORS allowed origins | ["*"] |
bifrost.client.allowDirectKeys | Allow callers to pass provider keys directly in requests | false |
bifrost.client.enforceGovernanceHeader | Require x-bf-vk virtual-key header on every request | false |
bifrost.client.maxRequestBodySizeMb | Maximum allowed request body size | 100 |
bifrost.client.whitelistedRoutes | Routes that bypass auth middleware | [] |
Header Filtering
Controls whichx-bf-eh-* headers are forwarded to upstream LLM providers.
| Parameter | Description | Default |
|---|---|---|
bifrost.client.headerFilterConfig.allowlist | Only these headers are forwarded (whitelist mode) | [] |
bifrost.client.headerFilterConfig.denylist | These headers are always blocked | [] |
bifrost.client.requiredHeaders | Headers that must be present on every request | [] |
bifrost.client.allowedHeaders | Additional headers permitted for CORS and WebSocket | [] |
x-bf-eh-* headers pass through. Specifying an allowlist enables strict whitelist mode — only listed headers are forwarded.
Authentication
| Parameter | Description | Default |
|---|---|---|
bifrost.authConfig.isEnabled | Enable username/password auth for the API and dashboard | false |
bifrost.authConfig.adminUsername | Admin username (plain text, prefer secret) | "" |
bifrost.authConfig.adminPassword | Admin password (plain text, prefer secret) | "" |
bifrost.authConfig.existingSecret | Kubernetes Secret name for credentials | "" |
bifrost.authConfig.usernameKey | Key within the secret for username | "username" |
bifrost.authConfig.passwordKey | Key within the secret for password | "password" |
bifrost.authConfig.disableAuthOnInference | Skip auth check on /v1/* inference routes | false |
Encryption
| Parameter | Description | Default |
|---|---|---|
bifrost.encryptionKey | 32-byte encryption key (plain text — use secret in production) | "" |
bifrost.encryptionKeySecret.name | Kubernetes Secret name containing the key | "" |
bifrost.encryptionKeySecret.key | Key within the secret | "encryption-key" |
Async Jobs & Database Pings
| Parameter | Description | Default |
|---|---|---|
bifrost.client.disableDbPingsInHealth | Exclude DB connectivity from /health checks | false |
bifrost.client.asyncJobResultTTL | TTL (seconds) for async job results | 3600 |
Compat Shims
Compatibility flags that let Bifrost silently adapt request/response shapes for SDK integrations:| Parameter | Description | Default |
|---|---|---|
bifrost.client.compat.convertTextToChat | Wrap legacy text completions as chat messages | false |
bifrost.client.compat.convertChatToResponses | Translate chat completions to Responses API format | false |
bifrost.client.compat.shouldDropParams | Silently drop unsupported parameters instead of erroring | false |
bifrost.client.compat.shouldConvertParams | Auto-convert parameter names across provider schemas | false |
Prometheus Labels
Add custom labels to every Prometheus metric emitted by Bifrost:MCP Agent Settings
| Parameter | Description | Default |
|---|---|---|
bifrost.client.mcpAgentDepth | Maximum tool-call recursion depth for MCP agent mode | 10 |
bifrost.client.mcpToolExecutionTimeout | Timeout per tool execution in seconds | 30 |
bifrost.client.mcpCodeModeBindingLevel | Code mode binding level (server or tool) | "" |
bifrost.client.mcpToolSyncInterval | Global tool sync interval in minutes (0 = disabled) | 0 |

