
Cogmemai
This is persistent memory for AI coding assistants that actually benchmarks at the top of the field: 95.10% on LongMemEval, 91% on LoCoMo. It exposes 35 MCP tools for saving memories, recalling by topic or semantic search, extracting principles from patterns, and auto-capturing coding sessions without requiring the AI to remember to save. Runs in cloud mode for full semantic search and team sync, local mode for offline-only setups, or hybrid for unreliable networks. Ships with quantum-safe encryption by default. Works across Claude Code, Cursor, Windsurf, Cline, and anything MCP-compatible. Reach for it when you're tired of re-explaining architectural decisions every session or watching your AI suggest approaches you already rejected three hours ago.
- GitHub stars
- 7
- tools
- 33
- auth
- Secret needed
- transport
- STDIO, HTTP
- env var
- 1
- last updated
- Oct 1, 2026
Tools
33 toolsPublic tool metadata for what this MCP can expose to an agent.
save_memoryStore a developer memory (fact, preference, decision, architecture detail). Memories persist across all Claude Code sessions and are available in future conversations.9 params
Store a developer memory (fact, preference, decision, architecture detail). Memories persist across all Claude Code sessions and are available in future conversations.
categorystringcontentstringimportanceintegermemory_typestringscopestringglobal · project · teamdefault: projectsubjectstringtagsarrayteam_idintegerttlstringsave_ruleSave a mandatory rule that will ALWAYS be followed in every session. Rules bypass scoring and decay — they are injected into every conversation, every time. Use for absolute requirements like "NEVER do X" or "ALWAYS do Y".5 params
Save a mandatory rule that will ALWAYS be followed in every session. Rules bypass scoring and decay — they are injected into every conversation, every time. Use for absolute requirements like "NEVER do X" or "ALWAYS do Y".
categorystringcontentstringscopestringglobal · projectdefault: projectsubjectstringtagsarraylist_rulesList all mandatory rules for the current project and/or globally. Rules are always-on memories that surface in every session.1 params
List all mandatory rules for the current project and/or globally. Rules are always-on memories that surface in every session.
scopestringall · project · globaldefault: alldelete_ruleDelete a mandatory rule by its memory ID. Use list_rules to find the ID first.1 params
Delete a mandatory rule by its memory ID. Use list_rules to find the ID first.
memory_idintegerrecall_memoriesSearch stored memories using semantic search. Returns memories ranked by relevance, importance, and recency. Use this to find relevant context from past sessions.10 params
Search stored memories using semantic search. Returns memories ranked by relevance, importance, and recency. Use this to find relevant context from past sessions.
categorystringcontext_typestringdebugging · planning · reviewingimportance_minintegerlimitintegermemory_typestringidentity · preference · architecture · decision · bug · dependencyquerystringscopestringglobal · project · alldefault: allsynthesizebooleantagstringteam_idintegerextract_memoriesExtract memories from a conversation exchange using AI. Send the developer message and assistant response, and the server identifies facts worth remembering (architecture decisions, preferences, bug fixes, etc.).3 params
Extract memories from a conversation exchange using AI. Send the developer message and assistant response, and the server identifies facts worth remembering (architecture decisions, preferences, bug fixes, etc.).
assistant_responsestringprevious_contextstringuser_messagestringget_project_contextLoad top memories for the current project plus relevant global memories. Use at the start of a session to get full context from previous sessions. Optionally pass context to get memories most relevant to your current task.7 params
Load top memories for the current project plus relevant global memories. Use at the start of a session to get full context from previous sessions. Optionally pass context to get memories most relevant to your current task.
compactbooleancontextstringcontext_typestringdebugging · planning · reviewing · generalinclude_globalbooleanlimitintegerproject_idstringteam_idintegerlist_memoriesList stored memories with optional filters by type, category, scope, or project.9 params
List stored memories with optional filters by type, category, scope, or project.
categorystringimportance_minintegerlimitintegermemory_typestringidentity · preference · architecture · decision · bug · dependencyoffsetintegerscopestringglobal · project · alldefault: allsort_bystringimportance · updated · created · referenced · least_useddefault: importancetagstringuntypedbooleandelete_memoryDelete a specific memory by its ID. This is permanent.1 params
Delete a specific memory by its ID. This is permanent.
memory_idintegerupdate_memoryUpdate an existing memory's content, importance, or scope.8 params
Update an existing memory's content, importance, or scope.
categorystringcontentstringimportanceintegermemory_idintegermemory_typestringidentity · preference · architecture · decision · bug · dependencyscopestringglobal · projectsubjectstringtagsarraybulk_deleteDelete multiple memories at once by their IDs. Maximum 100 IDs per call. This is permanent.1 params
Delete multiple memories at once by their IDs. Maximum 100 IDs per call. This is permanent.
idsarraybulk_updateUpdate multiple memories at once. Each item needs a memory_id and fields to update. Maximum 50 items per call.1 params
Update multiple memories at once. Each item needs a memory_id and fields to update. Maximum 50 items per call.
updatesarrayget_usageGet current usage statistics — memory count, extractions this month, tier info, projects.
Get current usage statistics — memory count, extractions this month, tier info, projects.
No parameter schema in public metadata yet.
export_memoriesExport all memories as JSON. Use this to back up memories or transfer them to another project.
Export all memories as JSON. Use this to back up memories or transfer them to another project.
No parameter schema in public metadata yet.
import_memoriesBulk import memories from a JSON array. Each memory needs at minimum a content field. Deduplication is applied automatically.1 params
Bulk import memories from a JSON array. Each memory needs at minimum a content field. Deduplication is applied automatically.
memoriesstringingest_documentExtract memories from a document by splitting it into chunks and processing each one. Great for onboarding — feed in READMEs, architecture docs, or API specs to quickly build project context.2 params
Extract memories from a document by splitting it into chunks and processing each one. Great for onboarding — feed in READMEs, architecture docs, or API specs to quickly build project context.
document_typestringtextstringsave_session_summarySave a summary of the current coding session. Captures what was accomplished, decisions made, and next steps. Stored as a session_summary memory for future reference.1 params
Save a summary of the current coding session. Captures what was accomplished, decisions made, and next steps. Stored as a session_summary memory for future reference.
summarystringlist_tagsList all tags in use across your memories, with counts. Use this to see what threads/groups exist and find related memories by tag.
List all tags in use across your memories, with counts. Use this to see what threads/groups exist and find related memories by tag.
No parameter schema in public metadata yet.
link_memoriesConnect two related memories with a named relationship. Use this to build a knowledge graph — e.g., linking a bug fix to the architecture decision that caused it, or connecting a preference to the pattern it led to.3 params
Connect two related memories with a named relationship. Use this to build a knowledge graph — e.g., linking a bug fix to the architecture decision that caused it, or connecting a preference to the pattern it led to.
memory_idintegerrelated_memory_idintegerrelationshipstringled_to · contradicts · extends · relatedget_memory_linksView all memories linked to a specific memory. Returns the relationship type and full memory details for each connection. Use this to explore the knowledge graph around a memory.1 params
View all memories linked to a specific memory. Returns the relationship type and full memory details for each connection. Use this to explore the knowledge graph around a memory.
memory_idintegerget_memory_versionsView the edit history of a memory. Shows all previous versions with timestamps and what changed. Useful for understanding how a decision or fact evolved over time.1 params
View the edit history of a memory. Shows all previous versions with timestamps and what changed. Useful for understanding how a decision or fact evolved over time.
memory_idintegerget_analyticsGet a memory health dashboard with insights: most recalled memories, never-recalled memories, stale memories, growth trends, and breakdowns by type and category. Use this to identify cleanup opportunities and understand memory usage patterns.1 params
Get a memory health dashboard with insights: most recalled memories, never-recalled memories, stale memories, growth trends, and breakdowns by type and category. Use this to identify cleanup opportunities and understand memory usage patterns.
project_idstringpromote_memoryPromote a project-scoped memory to global scope so it applies across all projects. Use this when you discover a preference or pattern that should be universal — e.g., "user prefers tabs over spaces" or "always use Bun instead of npm".1 params
Promote a project-scoped memory to global scope so it applies across all projects. Use this when you discover a preference or pattern that should be universal — e.g., "user prefers tabs over spaces" or "always use Bun instead of npm".
memory_idintegerconsolidate_memoriesConsolidate related memories into fewer, richer memories. Finds clusters of memories sharing the same subject (3+ memories required), then uses AI to synthesize each cluster into 1-2 comprehensive facts. Originals are archived (not deleted) with full version history. Use dry_r...4 params
Consolidate related memories into fewer, richer memories. Finds clusters of memories sharing the same subject (3+ memories required), then uses AI to synthesize each cluster into 1-2 comprehensive facts. Originals are archived (not deleted) with full version history. Use dry_r...
categorystringdry_runbooleanmemory_typestringidentity · preference · architecture · decision · bug · dependencysubjectstringsave_taskCreate a task that persists across sessions. Tasks are tracked with status (pending, in_progress, done, blocked) and priority (high, medium, low). Use this to maintain continuity on multi-session work.4 params
Create a task that persists across sessions. Tasks are tracked with status (pending, in_progress, done, blocked) and priority (high, medium, low). Use this to maintain continuity on multi-session work.
descriptionstringprioritystringhigh · medium · lowdefault: mediumstatusstringpending · in_progress · done · blockeddefault: pendingtitlestringget_tasksGet tasks for the current project. Returns tasks filtered by status — defaults to showing pending and in_progress tasks. Use at session start to pick up where you left off.2 params
Get tasks for the current project. Returns tasks filtered by status — defaults to showing pending and in_progress tasks. Use at session start to pick up where you left off.
include_donebooleanstatusstringpending · in_progress · done · blocked · alldefault: allupdate_taskUpdate a task's status, title, description, or priority. Use this to mark tasks as in_progress, done, or blocked as you work.5 params
Update a task's status, title, description, or priority. Use this to mark tasks as in_progress, done, or blocked as you work.
descriptionstringprioritystringhigh · medium · lowstatusstringpending · in_progress · done · blockedtask_idintegertitlestringsave_correctionSave a correction pattern — what went wrong and what the right approach is. These are surfaced automatically when similar situations arise in future sessions, helping avoid repeated mistakes.4 params
Save a correction pattern — what went wrong and what the right approach is. These are surfaced automatically when similar situations arise in future sessions, helping avoid repeated mistakes.
contextstringright_approachstringscopestringglobal · projectdefault: projectwrong_approachstringset_reminderSet a reminder that surfaces automatically at the start of your next session. Use for follow-ups, things to check, or deferred work. Reminders auto-archive after being shown.2 params
Set a reminder that surfaces automatically at the start of your next session. Use for follow-ups, things to check, or deferred work. Reminders auto-archive after being shown.
contentstringttlstringget_stale_memoriesFind memories that may be outdated based on age and access patterns. Returns memories that haven't been recalled or updated recently, so you can review, update, or delete them.2 params
Find memories that may be outdated based on age and access patterns. Returns memories that haven't been recalled or updated recently, so you can review, update, or delete them.
days_thresholdintegerlimitintegerget_file_changesShow what files changed since your last session. Compares the current git state to a snapshot saved when your previous session ended. Helps you understand what happened between sessions.
Show what files changed since your last session. Compares the current git state to a snapshot saved when your previous session ended. Helps you understand what happened between sessions.
No parameter schema in public metadata yet.
feedback_memorySignal whether a recalled memory was useful or irrelevant. Helps improve future recall quality over time. Use after recalling memories to indicate which were helpful vs noise.2 params
Signal whether a recalled memory was useful or irrelevant. Helps improve future recall quality over time. Use after recalling memories to indicate which were helpful vs noise.
memory_idintegersignalstringuseful · irrelevantgenerate_skillsManually trigger skill generation from your corrections, preferences, and patterns. Skills are behavioral directives that auto-improve how the AI works with you. CogmemAi also generates skills automatically when enough evidence accumulates — this tool lets you trigger it manua...3 params
Manually trigger skill generation from your corrections, preferences, and patterns. Skills are behavioral directives that auto-improve how the AI works with you. CogmemAi also generates skills automatically when enough evidence accumulates — this tool lets you trigger it manua...
dry_runbooleanproject_idstringsubjectstringSponsors
Configuration
COGMEMAI_API_KEY*secretYour CogmemAi API key from hifriendbot.com/developer/
Readme
CogmemAi: Safe, Persistent Memory for Any Ai System
CogmemAi: The Safe, Persistent Memory That Keeps Ai in Line
It remembers what matters, stops any action that breaks the rules you set before it happens, and checks what your Ai did against what you asked. For assistants, agents, robots, vehicles and code.
CogmemAi demo: your Ai assistant remembers your project across sessions
Details
- Repository
- github.com/hifriendbot/cogmemai-mcp
- Category
- AI & LLM Tools
- Package
cogmemai-mcp- Transport
- STDIO, HTTP
- Auth
- Required
- Registry
- MCP registry, active