-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy path.env.example
More file actions
205 lines (155 loc) · 6.44 KB
/
Copy path.env.example
File metadata and controls
205 lines (155 loc) · 6.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
# MCP Context Browser - Environment Variables Template
#
# Copy this file to .env and set your values
# Then: export $(cat .env | xargs)
#
# DO NOT commit .env with real credentials to git!
# ============================================================================
# ADMIN INTERFACE CREDENTIALS (Production Only)
# ============================================================================
# Required: All three must be set for admin interface to work
# Leave unset for local development (admin disabled)
# Admin username (any non-empty string)
# ADMIN_USERNAME=admin
# Admin password (minimum 8 characters, recommended: random)
# ADMIN_PASSWORD=your-secure-password-here
# JWT signing secret (minimum 32 characters, MUST be random)
# Generate with: openssl rand -base64 32
# JWT_SECRET=your-32-character-minimum-jwt-secret-key-here
# JWT token expiration (seconds, default: 3600 = 1 hour)
# JWT_EXPIRATION=3600
# ============================================================================
# AUTHENTICATION (API JWT Authentication)
# ============================================================================
# Required: Both for API authentication
# Leave unset to disable (API accessible without auth)
# Same JWT_SECRET as admin (min 32 chars)
# JWT_SECRET=your-32-character-minimum-jwt-secret-key-here
# Same ADMIN_PASSWORD as admin (min 8 chars)
# ADMIN_PASSWORD=your-secure-password-here
# ============================================================================
# DATABASE CONFIGURATION (Optional)
# ============================================================================
# Leave unset to use in-memory/filesystem fallbacks
# PostgreSQL connection string
# Format: postgresql://username:password@hostname:5432/database
# DATABASE_URL=postgresql://user:password@localhost:5432/mcp_context
# Connection pool size (default: 20)
# DATABASE_MAX_CONNECTIONS=20
# Minimum idle connections (default: 5)
# DATABASE_MIN_IDLE=5
# Max connection lifetime in seconds (default: 1800 = 30 min)
# DATABASE_MAX_LIFETIME_SECS=1800
# Idle timeout in seconds (default: 600 = 10 min)
# DATABASE_IDLE_TIMEOUT_SECS=600
# Connection timeout in seconds (default: 30)
# DATABASE_CONNECTION_TIMEOUT_SECS=30
# ============================================================================
# EMBEDDING PROVIDER CONFIGURATION
# ============================================================================
# Supported: ollama, openai, voyageai, gemini, fastembed
# Provider type (default: ollama)
# EMBEDDING_PROVIDER=ollama
# --- Ollama Configuration ---
# Ollama server base URL
# OLLAMA_BASE_URL=http://localhost:11434
# Ollama model name (default: nomic-embed-text)
# OLLAMA_MODEL=nomic-embed-text
# --- OpenAI Configuration ---
# OPENAI_API_KEY=sk-your-api-key-here
# OPENAI_BASE_URL=https://api.openai.com/v1 # Optional, for custom endpoints
# --- VoyageAI Configuration ---
# VOYAGEAI_API_KEY=your-voyageai-api-key
# --- Gemini Configuration ---
# GEMINI_API_KEY=your-gemini-api-key
# ============================================================================
# VECTOR STORE CONFIGURATION
# ============================================================================
# Supported: milvus, edgevec, pinecone, qdrant, in-memory, filesystem
# Provider type (default: in-memory)
# VECTOR_STORE_PROVIDER=in-memory
# --- Milvus Configuration ---
# Milvus server address
# MILVUS_ADDRESS=localhost:19530
# Milvus authentication token (optional)
# MILVUS_TOKEN=your-milvus-token
# --- Pinecone Configuration ---
# PINECONE_API_KEY=your-api-key
# PINECONE_ENVIRONMENT=us-east-1
# PINECONE_INDEX_NAME=code-embeddings
# --- Qdrant Configuration ---
# QDRANT_URL=http://localhost:6333
# QDRANT_API_KEY=your-api-key
# ============================================================================
# CACHE CONFIGURATION
# ============================================================================
# Enable caching (default: true)
# CACHE_ENABLED=true
# Cache TTL in seconds (default: 3600 = 1 hour)
# CACHE_TTL_SECONDS=3600
# Redis URL (leave empty for local Moka cache)
# REDIS_URL=redis://localhost:6379/0
# ============================================================================
# SERVER CONFIGURATION
# ============================================================================
# Server host (default: 0.0.0.0)
# SERVER_HOST=0.0.0.0
# MCP server port (default: 3000)
# SERVER_PORT=3000
# Metrics/Admin HTTP server port (default: 3001)
# METRICS_PORT=3001
# Transport mode: stdio, http, hybrid (default: hybrid)
# MCP__TRANSPORT__MODE=hybrid
# ============================================================================
# RATE LIMITING
# ============================================================================
# Enable rate limiting (default: false)
# RATE_LIMITING_ENABLED=false
# Max requests per minute (default: 100)
# RATE_LIMIT_RPM=100
# ============================================================================
# RESOURCE LIMITS
# ============================================================================
# Max concurrent requests (default: 100)
# MAX_CONCURRENT_REQUESTS=100
# Max query length in characters (default: 10000)
# MAX_QUERY_LENGTH=10000
# Max index size in bytes (default: 1GB)
# MAX_INDEX_SIZE_BYTES=1073741824
# ============================================================================
# LOGGING
# ============================================================================
# Log level: trace, debug, info, warn, error
# RUST_LOG=info,mcp_context_browser=debug
# ============================================================================
# DEVELOPMENT / TESTING
# ============================================================================
# Enable file watching for auto-indexing
# SYNC_WATCH_ENABLED=false
# Debounce delay for file watching (milliseconds)
# SYNC_DEBOUNCE_MS=1000
# ============================================================================
# PRODUCTION SETUP EXAMPLE
# ============================================================================
#
# For production with Milvus + Ollama + Admin:
#
# ADMIN_USERNAME=admin
# ADMIN_PASSWORD=YourSecurePassword123!
# JWT_SECRET=$(openssl rand -base64 32) # Generate random
#
# EMBEDDING_PROVIDER=ollama
# OLLAMA_BASE_URL=http://ollama:11434
# OLLAMA_MODEL=nomic-embed-text
#
# VECTOR_STORE_PROVIDER=milvus
# MILVUS_ADDRESS=milvus:19530
#
# DATABASE_URL=postgresql://user:password@postgres:5432/mcp
#
# SERVER_HOST=0.0.0.0
# METRICS_PORT=3001
#
# RUST_LOG=info
#
# ============================================================================