@@ -122,77 +122,83 @@ mcpContextForge:
122
122
GUNICORN_PRELOAD_APP : " true" # preload app code before forking workers (TODO: not implemented yet)
123
123
124
124
# ─ Basic application info ─
125
- APP_NAME : MCP_Gateway
126
- HOST : 0.0.0.0
127
- PORT : " 4444"
128
- APP_ROOT_PATH : " " # e.g. "/gateway" when deploying under sub- path
125
+ APP_NAME : MCP_Gateway # public-facing name of the gateway
126
+ HOST : 0.0.0.0 # address the server binds to
127
+ PORT : " 4444" # internal container port
128
+ APP_ROOT_PATH : " " # e.g. "/gateway" when deploying under sub‑ path
129
129
130
130
# ─ Connection pooling ─
131
- DB_POOL_SIZE : " 200"
132
- DB_MAX_OVERFLOW : " 10"
133
- DB_POOL_TIMEOUT : " 30"
134
- DB_POOL_RECYCLE : " 3600"
131
+ DB_POOL_SIZE : " 200" # size of SQLAlchemy connection pool
132
+ DB_MAX_OVERFLOW : " 10" # extra connections allowed beyond pool size
133
+ DB_POOL_TIMEOUT : " 30" # seconds to wait for a connection
134
+ DB_POOL_RECYCLE : " 3600" # recycle connections after N seconds
135
135
136
136
# ─ Cache behaviour ─
137
- CACHE_TYPE : redis
138
- CACHE_PREFIX : mcpgw
139
- SESSION_TTL : " 3600"
140
- MESSAGE_TTL : " 600"
137
+ CACHE_TYPE : redis # Backend cache driver (redis, memory, database)
138
+ CACHE_PREFIX : mcpgw # Prefix applied to every cache key
139
+ SESSION_TTL : " 3600" # TTL (s) for user sessions
140
+ MESSAGE_TTL : " 600" # TTL (s) for ephemeral messages (completions)
141
+
142
+ # ─ Connection retry settings ─
143
+ REDIS_MAX_RETRIES : " 3" # Maximum retries for Redis cold start
144
+ REDIS_RETRY_INTERVAL_MS : " 2000" # Interval between Redis retries (ms)
145
+ DB_MAX_RETRIES : " 3" # Maximum retries for DB cold start
146
+ DB_RETRY_INTERVAL_MS : " 2000" # Interval between DB retries (ms)
141
147
142
148
# ─ Protocol & feature toggles ─
143
149
PROTOCOL_VERSION : 2025-03-26
144
- MCPGATEWAY_UI_ENABLED : " true"
145
- MCPGATEWAY_ADMIN_API_ENABLED : " true"
146
- CORS_ENABLED : " true"
147
- ALLOWED_ORIGINS : ' ["http://localhost","http://localhost:4444"]'
148
- SKIP_SSL_VERIFY : " false"
150
+ MCPGATEWAY_UI_ENABLED : " true" # toggle Admin UI
151
+ MCPGATEWAY_ADMIN_API_ENABLED : " true" # toggle Admin API endpoints
152
+ CORS_ENABLED : " true" # enable CORS processing in gateway
153
+ ALLOWED_ORIGINS : ' ["http://localhost","http://localhost:4444"]' # JSON list of allowed origins
154
+ SKIP_SSL_VERIFY : " false" # skip TLS certificate verification on upstream calls
149
155
150
156
# ─ Logging ─
151
- LOG_LEVEL : INFO
152
- LOG_FORMAT : json
157
+ LOG_LEVEL : INFO # DEBUG, INFO, WARNING, ERROR, CRITICAL
158
+ LOG_FORMAT : json # json or text format
153
159
154
160
# ─ Transports ─
155
- TRANSPORT_TYPE : all
156
- WEBSOCKET_PING_INTERVAL : " 30"
157
- SSE_RETRY_TIMEOUT : " 5000"
161
+ TRANSPORT_TYPE : all # comma‑separated list: http, ws, sse, stdio, all
162
+ WEBSOCKET_PING_INTERVAL : " 30" # seconds between WS pings
163
+ SSE_RETRY_TIMEOUT : " 5000" # milliseconds before SSE client retries
158
164
159
165
# ─ Streaming sessions ─
160
- USE_STATEFUL_SESSIONS : " false"
161
- JSON_RESPONSE_ENABLED : " true"
166
+ USE_STATEFUL_SESSIONS : " false" # true = use event store; false = stateless
167
+ JSON_RESPONSE_ENABLED : " true" # default to JSON; false for SSE stream
162
168
163
169
# ─ Federation ─
164
- FEDERATION_ENABLED : " true"
165
- FEDERATION_DISCOVERY : " false"
166
- FEDERATION_PEERS : ' []'
167
- FEDERATION_TIMEOUT : " 30"
168
- FEDERATION_SYNC_INTERVAL : " 300"
170
+ FEDERATION_ENABLED : " true" # enable federated mode
171
+ FEDERATION_DISCOVERY : " false" # advertise & discover peers automatically
172
+ FEDERATION_PEERS : ' []' # explicit peer list (JSON array)
173
+ FEDERATION_TIMEOUT : " 30" # seconds before peer request timeout
174
+ FEDERATION_SYNC_INTERVAL : " 300" # seconds between peer syncs
169
175
170
176
# ─ Resource cache ─
171
- RESOURCE_CACHE_SIZE : " 1000"
172
- RESOURCE_CACHE_TTL : " 3600"
173
- MAX_RESOURCE_SIZE : " 10485760"
177
+ RESOURCE_CACHE_SIZE : " 1000" # max resources kept in memory cache
178
+ RESOURCE_CACHE_TTL : " 3600" # TTL (s) for resources in cache
179
+ MAX_RESOURCE_SIZE : " 10485760" # max allowed resource size in bytes (10 MB)
174
180
175
181
# ─ Tool limits ─
176
- TOOL_TIMEOUT : " 60"
177
- MAX_TOOL_RETRIES : " 3"
178
- TOOL_RATE_LIMIT : " 100"
179
- TOOL_CONCURRENT_LIMIT : " 10"
182
+ TOOL_TIMEOUT : " 60" # seconds per tool execution
183
+ MAX_TOOL_RETRIES : " 3" # retries for failed tool runs
184
+ TOOL_RATE_LIMIT : " 100" # invocations per minute cap
185
+ TOOL_CONCURRENT_LIMIT : " 10" # concurrent tool executions
180
186
181
187
# ─ Prompt cache ─
182
- PROMPT_CACHE_SIZE : " 100"
183
- MAX_PROMPT_SIZE : " 102400"
184
- PROMPT_RENDER_TIMEOUT : " 10"
188
+ PROMPT_CACHE_SIZE : " 100" # number of prompt templates to cache
189
+ MAX_PROMPT_SIZE : " 102400" # max template size in bytes
190
+ PROMPT_RENDER_TIMEOUT : " 10" # seconds to render a template
185
191
186
192
# ─ Health checks ─
187
- HEALTH_CHECK_INTERVAL : " 60"
188
- HEALTH_CHECK_TIMEOUT : " 10"
189
- UNHEALTHY_THRESHOLD : " 3"
190
- FILELOCK_PATH : /tmp/gateway_healthcheck_init.lock
193
+ HEALTH_CHECK_INTERVAL : " 60" # seconds between peer health checks
194
+ HEALTH_CHECK_TIMEOUT : " 10" # request timeout per health check
195
+ UNHEALTHY_THRESHOLD : " 3" # failed checks before peer marked unhealthy
196
+ FILELOCK_PATH : /tmp/gateway_healthcheck_init.lock # lock file used at start‑up
191
197
192
198
# ─ Development toggles ─
193
- DEV_MODE : " false"
194
- RELOAD : " false"
195
- DEBUG : " false"
199
+ DEV_MODE : " false" # enable dev‑mode features
200
+ RELOAD : " false" # auto‑reload code on changes
201
+ DEBUG : " false" # verbose debug traces
196
202
197
203
# ###################################################################
198
204
# SENSITIVE SETTINGS
@@ -202,17 +208,18 @@ mcpContextForge:
202
208
# ###################################################################
203
209
secret :
204
210
# ─ Admin & auth ─
205
- BASIC_AUTH_USER : admin
206
- BASIC_AUTH_PASSWORD : changeme
207
- AUTH_REQUIRED : " true"
208
- JWT_SECRET_KEY : my-test-key
209
- JWT_ALGORITHM : HS256
210
- TOKEN_EXPIRY : " 10080"
211
- AUTH_ENCRYPTION_SECRET : my-test-salt
211
+ BASIC_AUTH_USER : admin # username for basic‑auth login
212
+ BASIC_AUTH_PASSWORD : changeme # password for basic‑auth (CHANGE IN PROD!)
213
+ AUTH_REQUIRED : " true" # enforce authentication globally (true/false)
214
+ JWT_SECRET_KEY : my-test-key # secret key used to sign JWT tokens
215
+ JWT_ALGORITHM : HS256 # signing algorithm for JWT tokens
216
+ TOKEN_EXPIRY : " 10080" # JWT validity (minutes); 10080 = 7 days
217
+ AUTH_ENCRYPTION_SECRET : my-test-salt # passphrase to derive AES key for secure storage
212
218
# (derived URLs are defined in deployment-mcp.yaml)
213
- # ─ Optional overrides ─
214
- # DATABASE_URL: "postgresql://admin:[email protected] :5432/prod"
215
- # REDIS_URL: "redis://cache.acme.com:6379/0"
219
+
220
+ # ─ Optional database / redis overrides ─
221
+ # DATABASE_URL: "postgresql://admin:[email protected] :5432/prod" # override the auto-generated URL
222
+ # REDIS_URL: "redis://cache.acme.com:6379/0" # override the auto-generated URL
216
223
217
224
# ###################################################################
218
225
# Names of ConfigMap / Secret are resolved by templates; leave as-is.
@@ -232,8 +239,8 @@ migration:
232
239
233
240
# Job configuration
234
241
restartPolicy : Never # Job should not restart on failure
235
- backoffLimit : 3 # Retry up to 3 times before giving up
236
- activeDeadlineSeconds : 600 # Kill job after 10 minutes
242
+ backoffLimit : 3 # Retry up to 3 times before giving up
243
+ activeDeadlineSeconds : 600 # Kill job after 10 minutes
237
244
238
245
# Use same image as mcpgateway
239
246
image :
0 commit comments