Mem0 automatically tags every memory, but the default labels (travel, sports, music, etc.) may not match the names your app uses. Custom categories let you replace that list so the tags line up with your own wording.
Use custom categories when…
You need Mem0 to tag memories with names your product team already uses.
You want clean reports or automations that rely on those tags.
You’re moving from the open-source version and want the same labels here.
Per-request overrides (custom_categories=... on client.add) are not supported on the managed API yet. Set categories at the project level, then ingest memories as usual.
import osfrom mem0 import MemoryClientos.environ["MEM0_API_KEY"] = "your-api-key"client = MemoryClient()# Update custom categoriesnew_categories = [ {"lifestyle_management_concerns": "Tracks daily routines, habits, hobbies and interests including cooking, time management and work-life balance"}, {"seeking_structure": "Documents goals around creating routines, schedules, and organized systems in various life areas"}, {"personal_information": "Basic information about the user including name, preferences, and personality traits"}]response = client.project.update(custom_categories=new_categories)print(response)
Add a memory (uses the project catalog automatically)
Copy
Ask AI
messages = [ {"role": "user", "content": "My name is Alice. I need help organizing my daily schedule better. I feel overwhelmed trying to balance work, exercise, and social life."}, {"role": "assistant", "content": "I understand how overwhelming that can feel. Let's break this down together. What specific areas of your schedule feel most challenging to manage?"}, {"role": "user", "content": "I want to be more productive at work, maintain a consistent workout routine, and still have energy for friends and hobbies."}, {"role": "assistant", "content": "Those are great goals for better time management. What's one small change you could make to start improving your daily routine?"},]# Add memories with project-level custom categoriesclient.add(messages, user_id="alice", async_mode=False)
import osfrom mem0 import MemoryClientos.environ["MEM0_API_KEY"] = "your-api-key"client = MemoryClient()messages = [ {"role": "user", "content": "Hi, my name is Alice."}, {"role": "assistant", "content": "Hi Alice, what sports do you like to play?"}, {"role": "user", "content": "I love playing badminton, football, and basketball. I'm quite athletic!"}, {"role": "assistant", "content": "That's great! Alice seems to enjoy both individual sports like badminton and team sports like football and basketball."}, {"role": "user", "content": "Sometimes, I also draw and sketch in my free time."}, {"role": "assistant", "content": "That's cool! I'm sure you're good at it."}]# Add memories with default categoriesclient.add(messages, user_id='alice', async_mode=False)
You can verify the defaults are active by checking: