bulk_delete
Delete multiple memories at once by their IDs. Maximum 100 IDs per call. This is permanent.
Keep decisions, corrections, rules and tasks in a store that survives the end of a session, and pull the relevant ones back before the assistant repeats a suggestion that was already rejected.
LABSCO SUMMARY
Most of the surface is upkeep rather than storage: get_analytics separates the memories that keep getting recalled from those that never have, consolidate_memories folds clusters into synthesised facts while archiving the originals with version history, and feedback_memory feeds the ranking back. The heavier tools are model passes rather than lookups — extract_memories, ingest_document, consolidate_memories, generate_skills and extract_principles all run over your content, and get_usage reports extractions this month against a tier, so that work is metered. Rules are the deliberate exception to the ranking: they are injected into every conversation regardless of score or decay.
A hosted memory service behind 37 tools, holding facts, rules, tasks and corrections for a project and returning them to later sessions.
A CogmemAi account and its key in COGMEMAI_API_KEY. get_file_changes compares against git state, so it wants the project under version control.
One command plus a key — npx cogmemai-mcp setup, then supply credentials
USE CASES
Load the project's top memories, read the tasks that were left open, and see which files moved while you were away.
Check prior context before the suggestion is made, and record the corrections so the same wrong turn surfaces automatically next time.
Feed the README and architecture docs in as memories, let an exchange be mined for the facts it settled, and check what came out.
Find what is never recalled or has gone stale, fold overlapping entries into single facts, and clear the rest in one call.
Save it as a rule rather than a memory, so it is injected into every conversation instead of competing for recall, and review the set later.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
bulk_deleteDelete multiple memories at once by their IDs. Maximum 100 IDs per call. This is permanent.
bulk_updateUpdate multiple memories at once. Each item needs a memory_id and fields to update. Maximum 50 items per call.
consolidate_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_run=true to preview without making changes. Great for cleaning up memory clutter after many sessions.
delete_memoryMove a memory to the trash by its ID. Trashed memories are hidden from recall and restorable with restore_memory for 30 days, then purged permanently.
delete_ruleDelete a mandatory rule by its memory ID. Use list_rules to find the ID first.
export_memoriesExport all memories as JSON. Use this to back up memories or transfer them to another project.
extract_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.).
extract_principlesAnalyze memory clusters and extract underlying factual principles or patterns. Principles are observations about your project — "this codebase tends to have X" — not behavioral instructions (those are skills). Use dry_run to preview candidates first.
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.
generate_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 manually or preview candidates.
get_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.
get_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.
get_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.
get_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.
get_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.
get_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.
get_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.
get_usageGet current usage statistics — memory count, extractions this month, tier info, projects.
import_memoriesBulk import memories from a JSON array. Each memory needs at minimum a content field. Deduplication is applied automatically.
ingest_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.
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.
list_memoriesList stored memories with optional filters by type, category, scope, or project.
list_rulesList all mandatory rules for the current project and/or globally. Rules are always-on memories that surface in every session.
list_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_trashList trashed (deleted) memories, newest first, with days remaining before each is purged permanently. Restore any of them with restore_memory.
preflightProactive recall. Call this BEFORE making any suggestion, recommendation, or action plan. Sends the topic to a fast keyword search and returns any relevant prior context: previous attempts, decisions, contacts, evaluations. This prevents suggesting things that were already tried, rejected, or completed. Fast and cheap, use liberally.
promote_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".
recall_memoriesSearch stored memories using semantic search. Returns memories ranked by relevance, importance, and recency. Use this to find relevant context from past sessions.
restore_memoryRestore a trashed (deleted) memory by its ID. Works within 30 days of deletion, before the trash is purged. Use list_trash to find restorable memories.
save_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.
save_memoryStore a developer memory (fact, preference, decision, architecture detail). Memories persist across all Claude Code sessions and are available in future conversations.
save_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".
save_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.
save_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.
set_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.
update_memoryUpdate an existing memory's content, importance, or scope.
update_taskUpdate a task's status, title, description, or priority. Use this to mark tasks as in_progress, done, or blocked as you work.
BEFORE YOU INSTALL
37 tools when we connected. restore_memory and list_trash, the undo path for delete_memory and bulk_delete, are available but not in the documentation's list of 35.
CONTEXT COST
Rated by the size of the 37 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
npx cogmemai-mcp setuphttps://hifriendbot.com/mcp/Add this hosted endpoint to your MCP client using the credentials listed under Requirements.
{
"mcpServers": {
"cogmemai": {
"command": "cogmemai-mcp",
"env": {
"COGMEMAI_API_KEY": "<YOUR_COGMEMAI_API_KEY>"
}
}
}
}The bare cogmemai-mcp command needs the package installed globally: npx cogmemai-mcp setup does that for you, or run npm install -g cogmemai-mcp.
{
"mcpServers": {
"cogmemai": {
"command": "npx",
"args": [
"-y",
"cogmemai-mcp"
],
"env": {
"COGMEMAI_API_KEY": "<YOUR_COGMEMAI_API_KEY>"
}
}
}
}{
"mcpServers": [
{
"name": "cogmemai",
"command": "npx",
"args": [
"-y",
"cogmemai-mcp"
],
"env": {
"COGMEMAI_API_KEY": "<YOUR_COGMEMAI_API_KEY>"
}
}
]
}Endpoint: https://hifriendbot.com/mcp/
Auth: Bearer token — your cm_ API key