This page is a quick-reference table of all AutoMem environment variables, grouped by category. For full documentation of each variable including validation rules, behavior details, and configuration examples, see Configuration Reference .
Variables are loaded from multiple sources in priority order:
Process environment — export VAR=value or variables injected by the platform (Railway, Docker)
Project .env — File in repository root
User config — ~/.config/automem/.env (personal overrides, never committed)
Variables set earlier in this list take precedence over later sources.
Variable Required Default Description FALKORDB_HOSTNo localhostFalkorDB graph database hostname FALKORDB_PORTNo 6379FalkorDB port FALKORDB_PASSWORDNo unset FalkorDB/Redis password (set in production) FALKORDB_GRAPHNo memoriesGraph name for Cypher queries GRAPH_NAME— memoriesPython-internal alias for FALKORDB_GRAPH; set FALKORDB_GRAPH, not this name PORTNo 8001Flask API server port
AutoMem operates in graph-only mode if these variables are not set. Qdrant enables semantic vector search but is optional.
Variable Required Default Description QDRANT_URLNo unset Qdrant API endpoint (HTTP or HTTPS) QDRANT_HOSTNo unset Qdrant hostname (alternative to QDRANT_URL) QDRANT_PORTNo 6333Qdrant port (used with QDRANT_HOST) QDRANT_API_KEYNo unset Qdrant authentication key (required for Qdrant Cloud) QDRANT_COLLECTIONNo memoriesCollection name for memory vectors COLLECTION_NAME— memoriesPython-internal alias for QDRANT_COLLECTION; set QDRANT_COLLECTION, not this name VECTOR_SIZENo 1024Embedding dimension — must match collection (768/1024/2048/3072) QDRANT_VECTOR_SIZENo 1024Alternative name for VECTOR_SIZE (checked as fallback when VECTOR_SIZE is unset)
Variable Required Default Description AUTOMEM_API_TOKENYes unset Token for all standard API operations ADMIN_API_TOKENYes unset Token for admin endpoints (/admin/*, /enrichment/reprocess)
See Authentication for token generation and usage details.
Variable Required Default Description EMBEDDING_PROVIDERNo autoProvider selection: auto / voyage / openai / local / ollama / placeholder EMBEDDING_MODELNo text-embedding-3-smallOpenAI model name OPENAI_API_KEYNo unset OpenAI (or compatible provider) API key OPENAI_BASE_URLNo unset Custom base URL for OpenAI-compatible APIs (OpenRouter, LiteLLM, vLLM) VOYAGE_API_KEYNo unset Voyage AI API key VOYAGE_MODELNo voyage-4Voyage AI embedding model (also: voyage-4-large, voyage-4-lite) OLLAMA_BASE_URLNo http://localhost:11434Ollama server endpoint OLLAMA_MODELNo nomic-embed-textOllama embedding model OLLAMA_TIMEOUTNo 30Ollama request timeout in seconds OLLAMA_MAX_RETRIESNo 2Retry attempts on Ollama connection failure EMBEDDING_BATCH_SIZENo 20Items per batch API call (reduces costs 40–50%) EMBEDDING_BATCH_TIMEOUT_SECONDSNo 2.0Max wait before flushing a partial batch AUTOMEM_MODELS_DIRNo ~/.config/automem/models/Local FastEmbed model cache directory
Background enrichment runs after each memory is stored — it generates similarity links, entity tags, and summaries.
Variable Required Default Description ENRICHMENT_MAX_ATTEMPTSNo 3Retry limit before marking a job failed ENRICHMENT_SIMILARITY_LIMITNo 5Number of semantic neighbors to link ENRICHMENT_SIMILARITY_THRESHOLDNo 0.8Min cosine similarity for SIMILAR_TO edge ENRICHMENT_IDLE_SLEEP_SECONDSNo 2Worker sleep duration when queue is empty ENRICHMENT_FAILURE_BACKOFF_SECONDSNo 5Delay between retry attempts ENRICHMENT_ENABLE_SUMMARIESNo trueAuto-generate memory summaries ENRICHMENT_SPACY_MODELNo en_core_web_smspaCy model for NER (if installed) JIT_ENRICHMENT_ENABLEDNo trueRun enrichment inline on store (just-in-time)
Background maintenance cycles that decay, cluster, and optionally forget low-value memories.
Variable Required Default Description CONSOLIDATION_TICK_SECONDSNo 60Scheduler check interval CONSOLIDATION_DECAY_INTERVAL_SECONDSNo 86400Decay cycle frequency (1 day) CONSOLIDATION_DECAY_IMPORTANCE_THRESHOLDNo 0.3Min importance to process in decay CONSOLIDATION_CREATIVE_INTERVAL_SECONDSNo 604800Creative association cycle frequency (1 week) CONSOLIDATION_CLUSTER_INTERVAL_SECONDSNo 2592000Cluster pattern cycle frequency (1 month) CONSOLIDATION_FORGET_INTERVAL_SECONDSNo 0Forget cycle frequency (disabled by default) CONSOLIDATION_ARCHIVE_THRESHOLDNo 0.0Relevance threshold for archiving (0.0 = disabled) CONSOLIDATION_DELETE_THRESHOLDNo 0.0Relevance threshold for deletion (0.0 = disabled) CONSOLIDATION_GRACE_PERIOD_DAYSNo 90Min age in days before a memory can be forgotten CONSOLIDATION_IMPORTANCE_PROTECTION_THRESHOLDNo 0.7Memories above this importance are never forgotten CONSOLIDATION_PROTECTED_TYPESNo Decision,InsightComma-separated types to never forget CONSOLIDATION_BASE_DECAY_RATENo 0.01Base rate applied per decay cycle CONSOLIDATION_IMPORTANCE_FLOOR_FACTORNo 0.3Minimum importance fraction after decay CONSOLIDATION_HISTORY_LIMITNo 20Max consolidation run records retained in the graph CONSOLIDATION_CONTROL_NODE_IDNo globalID of the consolidation control node in the graph CONSOLIDATION_CLUSTER_SIMILARITY_THRESHOLDNo 0.75Min cosine similarity for cluster membership (0–1) CONSOLIDATION_MIN_CLUSTER_SIZENo 3Min memories required to form a cluster IDENTITY_SYNTHESIS_ENABLEDNo falseEnable experimental scheduled entity identity synthesis CONSOLIDATION_IDENTITY_INTERVAL_SECONDSNo 0 (604800 when enabled)Identity synthesis cycle frequency; 0 disables the cycle IDENTITY_SYNTHESIS_MODELNo CLASSIFICATION_MODELModel used for entity identity synthesis
Variable Required Default Description SEARCH_WEIGHT_VECTORNo 0.35Vector similarity weight SEARCH_WEIGHT_KEYWORDNo 0.35Keyword/TF-IDF matching weight SEARCH_WEIGHT_METADATANo 0.35Structured metadata field match weight SEARCH_WEIGHT_TAGNo 0.20Tag overlap weight SEARCH_WEIGHT_IMPORTANCENo 0.10User-assigned importance weight SEARCH_WEIGHT_RECENCYNo 0.10Freshness boost weight SEARCH_WEIGHT_CONFIDENCENo 0.05Memory confidence weight SEARCH_WEIGHT_EXACTNo 0.20Content token overlap weight SEARCH_WEIGHT_RELATIONNo 0.25Graph relation proximity boost SEARCH_WEIGHT_RELEVANCENo 0.0LLM-scored relevance (disabled by default) RECALL_RELATION_LIMITNo 5Max related memories per result RECALL_EXPANSION_LIMITNo 25Max memories added via expand_relations=true RECALL_MIN_SCORENo 0.0Minimum score threshold for returned results RECALL_ADAPTIVE_FLOORNo trueDynamically adjust score floor based on result set RECALL_VECTOR_OVERFETCHNo 4Vector candidate pool multiplier before hybrid re-rank (1 = legacy 1× fetch) RECALL_VECTOR_FETCH_CAPNo 200Hard cap on over-fetched vector candidates (separate from RECALL_MAX_LIMIT) RECALL_EXCLUDED_TYPESNo MetaPatternComma-separated memory types excluded from /recall and vector sync counts RECALL_MAX_LIMITNo 100Hard cap on the number of results /recall can return SEARCH_RECENCY_WINDOW_DAYSNo 180Recency decay window in days (shapes SEARCH_WEIGHT_RECENCY, not a weight) SEARCH_RECENCY_CURVENo linearRecency decay curve: linear (reaches 0 at the window) or exp (window acts as half-life); invalid falls back to linear SEARCH_WEIGHT_TEMPORALNo 0.1Relative-recency re-rank bonus; only applied when the recency_bias re-rank runs. Inert by default RECALL_METADATA_SEARCH_ENABLEDNo trueEnable bounded metadata sidecar recall candidates (on by default; no request parameter) RECALL_RECENCY_BIASNo offDefault relative-recency re-rank mode: off, on, or auto (temporal-intent queries only). Per-request override via the recency_bias query param RECALL_RELEVANCE_GATENo 0.0Within-pool relevance gate; ramps down query-independent score components for low-evidence results. 0.0 = disabled SEARCH_TAG_SCORE_TOKEN_CAPNo 0Caps the tag-score normalization denominator; 0 = legacy behavior (raising it is opt-in — it regressed Recall@5 in testing)
For guidance on when to tune these ranking knobs, see the Recall Tuning guide.
Variable Required Default Description SYNC_CHECK_INTERVAL_SECONDSNo 3600Frequency of drift checks between FalkorDB and Qdrant (1 hour) SYNC_AUTO_REPAIRNo trueAutomatically queue missing embeddings when drift detected
Variable Required Default Description CLASSIFICATION_MODELNo gpt-4o-miniOpenAI model used for content classification fallback MEMORY_CONTENT_SOFT_LIMITNo 500Character threshold above which a warning is issued and auto-summarize may trigger MEMORY_CONTENT_HARD_LIMITNo 2000Character limit above which the request is rejected immediately MEMORY_AUTO_SUMMARIZENo trueAutomatically summarize content exceeding the soft limit MEMORY_SUMMARY_TARGET_LENGTHNo 300Target character length for auto-generated summaries
Variable Required Default Description LOG_LEVELNo INFOPython logging level (DEBUG, INFO, WARNING, ERROR) FLASK_ENVNo productionFlask environment mode
These variables configure the mcp-automem client package, not the server.
Variable Required Default Description AUTOMEM_API_URLYes http://127.0.0.1:8001HTTP URL of the AutoMem server (canonical name) AUTOMEM_ENDPOINTNo unset Deprecated alias for AUTOMEM_API_URL; still accepted but logs a warning AUTOMEM_API_KEYNo unset API key for authenticated instances (preferred name) AUTOMEM_API_TOKENNo unset Alternative name for the API key AUTOMEM_LOG_LEVELNo unset Set to debug for verbose MCP client logging AUTOMEM_RECALL_TOKEN_BUDGETNo 18000Global estimated token budget for MCP recall_memory responses (applies to all formats, including json; memory_id fetches are never truncated) AUTOMEM_PROCESS_TAGNo unset Process title tag for safe process management MCP_PROCESS_TAGNo unset Alternative process tag variable
The client checks endpoint variables in this priority order: AUTOMEM_API_URL → AUTOMEM_ENDPOINT (deprecated).
The client checks API key variables in this priority order: AUTOMEM_API_KEY → AUTOMEM_API_TOKEN.
Used only for the AutoMem test suite — do not set in production.
Variable Required Default Description AUTOMEM_RUN_INTEGRATION_TESTSNo 0Enable integration test suite AUTOMEM_START_DOCKERNo 0Auto-start Docker Compose before tests AUTOMEM_STOP_DOCKERNo 0Auto-stop Docker after tests AUTOMEM_TEST_BASE_URLNo http://localhost:8001Test target URL AUTOMEM_ALLOW_LIVENo 0Allow tests against non-localhost URLs AUTOMEM_TEST_API_TOKENNo unset API token for integration tests AUTOMEM_TEST_ADMIN_TOKENNo unset Admin token for integration tests
AUTOMEM_API_TOKEN = your-token-here
ADMIN_API_TOKEN = your-admin-token-here
AUTOMEM_API_TOKEN = your-token-here
ADMIN_API_TOKEN = your-admin-token-here
QDRANT_URL = http://localhost:6333
AUTOMEM_API_TOKEN = your-token-here
ADMIN_API_TOKEN = your-admin-token-here
EMBEDDING_PROVIDER = ollama
OLLAMA_BASE_URL = http://localhost:11434
OLLAMA_MODEL = nomic-embed-text
QDRANT_URL = http://localhost:6333
FALKORDB_HOST = falkordb.railway.internal
FALKORDB_PASSWORD = <generated>
AUTOMEM_API_TOKEN = <generated>
ADMIN_API_TOKEN = <generated>
QDRANT_URL = https://your-cluster.cloud.qdrant.io
QDRANT_API_KEY = your-qdrant-key
" AUTOMEM_API_URL " : " https://your-service.railway.app " ,
" AUTOMEM_API_KEY " : " your-api-token "
Never commit .env files — add to .gitignore
Use strong tokens — minimum 32 bytes: openssl rand -hex 32
Use separate tokens for AUTOMEM_API_TOKEN and ADMIN_API_TOKEN
Set FALKORDB_PASSWORD in all production environments
Use HTTPS for all external service endpoints (Qdrant Cloud, OpenAI, Voyage)
Use Railway private networking — never expose FalkorDB publicly
Avoid query parameter auth (?api_key=) in production — tokens appear in server logs