Installation
Authentication
Run the interactive setup wizard to configure your API key:Quick start
Commands
mem0 init
Interactive setup wizard. Prompts for your API key and default user ID.
mem0 add
Add a memory from text, a JSON messages array, a file, or stdin.
| Flag | Description |
|---|---|
-u, --user-id | Scope to a user |
--agent-id | Scope to an agent |
--messages | Conversation messages as JSON |
-f, --file | Read messages from a JSON file |
-m, --metadata | Custom metadata as JSON |
--categories | Categories (JSON array or comma-separated) |
--graph / --no-graph | Enable or disable graph memory extraction |
-o, --output | Output format: text, json, quiet |
mem0 search
Search memories using natural language.
| Flag | Description |
|---|---|
-u, --user-id | Filter by user |
-k, --top-k | Number of results (default: 10) |
--threshold | Minimum similarity score (default: 0.3) |
--rerank | Enable reranking |
--keyword | Use keyword search instead of semantic |
--filter | Advanced filter expression (JSON) |
--graph / --no-graph | Enable or disable graph in search |
-o, --output | Output format: text, json, table |
mem0 list
List memories with optional filters and pagination.
| Flag | Description |
|---|---|
-u, --user-id | Filter by user |
--page | Page number (default: 1) |
--page-size | Results per page (default: 100) |
--category | Filter by category |
--after | Created after date (YYYY-MM-DD) |
--before | Created before date (YYYY-MM-DD) |
-o, --output | Output format: text, json, table |
mem0 get
Retrieve a specific memory by ID.
mem0 update
Update the text or metadata of an existing memory.
mem0 delete
Delete a single memory, all memories for a scope, or an entire entity.
| Flag | Description |
|---|---|
--all | Delete all memories matching scope filters |
--entity | Delete the entity and all its memories |
--project | With --all: delete all memories project-wide |
--dry-run | Preview without deleting |
--force | Skip confirmation prompt |
mem0 import
Bulk import memories from a JSON file.
memory (or text or content) field and optional user_id, agent_id, and metadata fields.
mem0 config
View or modify the local CLI configuration.
mem0 entities
List or delete entities (users, agents, apps).
mem0 status
Verify your API connection and display the current project.
mem0 version
Print the CLI version.
Output formats
All commands support the--output flag to control how results are displayed:
| Format | Description |
|---|---|
text | Human-readable output with colors and formatting (default for most commands) |
json | Structured JSON, suitable for piping to jq or consumption by AI agents |
table | Tabular format (default for list) |
quiet | Minimal output — just IDs or status codes |
Use with AI agents
The CLI is designed to be used by AI agents and automation tools. Two features make this straightforward:--output jsonreturns structured data that agents can parse directlymem0 help --jsonreturns the full command tree as JSON, so agents can discover available commands programmatically
mem0 init --api-key --user-id or set the MEM0_API_KEY environment variable to skip interactive prompts.
Environment variables
| Variable | Description |
|---|---|
MEM0_API_KEY | API key (overrides config file) |
MEM0_BASE_URL | API base URL |
MEM0_USER_ID | Default user ID |
MEM0_AGENT_ID | Default agent ID |
MEM0_APP_ID | Default app ID |
MEM0_RUN_ID | Default run ID |
MEM0_ENABLE_GRAPH | Enable graph memory (true / false) |
Global flags
These flags are available on all commands that interact with the API:| Flag | Description |
|---|---|
--api-key | Override the configured API key for this request |
--base-url | Override the configured API base URL for this request |
-o, --output | Set the output format |
What’s next
Quickstart
Store your first memory in under five minutes using the SDK or CLI
Memory Operations
Learn about add, search, update, and delete operations in depth
API Reference
See the complete REST API documentation