Server data from the Official MCP Registry
Cognitive memory for AI coding assistants — persistent memory across sessions
Cognitive memory for AI coding assistants — persistent memory across sessions
MemoryKit is a legitimate cognitive memory MCP server with reasonable architecture and proper use of standard Node.js patterns. However, there are moderate concerns around unsafe file operations (path traversal risks, lack of validation on glob patterns), subprocess invocation without full input sanitization in the compress feature, and missing input validation on user-supplied queries and layer specifications. The server's permissions align well with its purpose (file I/O, network for embeddings), but defensive programming could be strengthened. Supply chain analysis found 6 known vulnerabilities in dependencies (2 critical, 2 high severity). Package verification found 1 issue.
4 files analyzed · 16 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-rapozoantonio-memorykit": {
"args": [
"-y",
"memorykit-mcp-server"
],
"command": "npx"
}
}
}From the project's GitHub README.
Enterprise-grade, neuroscience-inspired memory infrastructure for LLM applications
Because your AI shouldn't have the memory of a goldfish 🐠
Quick Start · Documentation · Architecture · API Docs
Modern LLMs like GPT-4 and Claude have a critical flaw: they're stateless. Every conversation requires reloading the entire context, leading to:
User (Turn 1): "My name is John, I prefer Python"
AI: "Nice to meet you, John!"
[New session - memory wiped 🧹]
User (Turn 50): "What's my favorite language?"
AI: "I don't have that information" ❌
The Cost Problem:
For a typical enterprise chatbot with 100-turn conversations:
| Approach | Tokens/Query | Cost/Query | Monthly (10K users) |
|---|---|---|---|
| Naive (full context) | 50,000 | $1.50 | $750,000 💸 |
| MemoryKit | 800 | $0.024 | $12,000 ✨ |
| You Save | 98.4% | 98.4% | $738,000/month 🎯 |
MemoryKit solves this. Inspired by how the human brain actually works.
Humans don't recall every conversation verbatim. Instead, we use a hierarchical memory system:
| Brain Region | Function | Duration | What It Stores |
|---|---|---|---|
| Prefrontal Cortex | Working Memory | Seconds-Minutes | Active conversation (7±2 items) |
| Hippocampus | Encoding & Indexing | Hours-Days | Recent experiences, decides what to keep |
| Neocortex | Semantic Memory | Months-Years | Facts, concepts, knowledge |
| Amygdala | Emotional Tagging | - | Importance scoring ("remember THIS!") |
| Basal Ganglia | Procedural Memory | Years | Skills, habits, routines |
┌──────────────────────────────────────────────────────────────┐
│ PREFRONTAL CONTROLLER │
│ (Executive Function & Planning) │
│ "Which memory layers do I need for this query?" │
└────────────────────┬─────────────────────────────────────────┘
│
┌────────────┴────────────┐
│ │
┌────▼─────┐ ┌─────▼──────┐
│ AMYGDALA │ │ HIPPOCAMPUS│
│ Emotion │ │ Indexing │
│ Tagging │ │ │
└────┬─────┘ └─────┬──────┘
│ │
└────────────┬────────────┘
│
┌───────────────┴────────────────────────────┐
│ │
┌────▼─────────┐ ┌──────────────┐ ┌───────────────┐ ┌────────────────┐
│ Layer 3 (L3) │ │ Layer 2 (L2) │ │ Layer 1 (L1) │ │ Layer P (LP) │
│──────────────│ │──────────────│ │───────────────│ │────────────────│
│ WORKING │ │ SEMANTIC │ │ EPISODIC │ │ PROCEDURAL │
│ MEMORY │ │ MEMORY │ │ MEMORY │ │ MEMORY │
│ │ │ │ │ │ │ │
│ Redis Cache │ │ Table │ │ Blob + │ │ Pattern │
│ 10 recent │ │ Storage │ │ AI Search │ │ Matching │
│ messages │ │ Facts & │ │ Full convo │ │ Learned │
│ │ │ Entities │ │ history │ │ routines │
│ │ │ │ │ │ │ │
│ < 5ms │ │ ~30ms │ │ ~120ms │ │ ~50ms │
└──────────────┘ └──────────────┘ └───────────────┘ └────────────────┘
The Prefrontal Controller decides which layers to query based on intent:
"Continue..." → L3 only (500 tokens, <5ms)
"What's my name?" → L2 + L3 (800 tokens, ~30ms)
"Quote me from last week" → L1 + L2 + L3 (2000 tokens, ~150ms)
"Write code as I prefer" → LP + L3 (600 tokens, ~50ms)
Result: You only load what you need, when you need it. Just like a human brain.
| Feature | MemoryKit | Mem0 | Letta | LangChain |
|---|---|---|---|---|
| Language | .NET 9 | Python | Python | Python |
| Architecture | Brain-inspired | Vector DB | Hierarchical | Flat |
| Procedural Memory | ✅ Yes | ❌ No | ⚠️ Basic | ❌ No |
| Cost Reduction | 98-99% | 85-90% | 80-85% | 60-70% |
| Query Planning | ✅ Intelligent | ❌ Static | ⚠️ Basic | ❌ Static |
| Emotional Weighting | ✅ Amygdala | ❌ No | ❌ No | ❌ No |
| Enterprise Ready | ✅ Day 1 | ⚠️ Partial | ❌ No | ⚠️ Partial |
| Azure Native | ✅ Yes | ❌ Generic | ❌ Generic | ❌ Generic |
🧠 First neuroscience-backed memory system for LLMs
⚡ Procedural memory - learns user workflows and preferences
🎯 Importance scoring - Amygdala-inspired emotional tagging
🏗️ Clean Architecture - Enterprise-grade from day one
💰 Highest cost savings - 98-99% reduction vs. naive approaches
🔒 Production-hardened - Security, monitoring, rate limiting built-in
# Clone and build
git clone https://github.com/rapozoantonio/memorykit.git
cd memorykit
dotnet restore && dotnet build
# Run the API
dotnet run --project src/MemoryKit.API
# Open Swagger UI
start https://localhost:5001/swagger
// Create conversation
POST /api/v1/conversations
{
"userId": "user_123",
"title": "My Coding Session"
}
// Add messages
POST /api/v1/conversations/{id}/messages
{
"role": "user",
"content": "I prefer Python with type hints"
}
// Later... Query with memory
POST /api/v1/conversations/{id}/query
{
"question": "Write a hello world function as I prefer"
}
// MemoryKit automatically:
// ✅ Remembers your Python preference
// ✅ Remembers you like type hints
// ✅ Applies procedural memory pattern
// ✅ Uses only 600 tokens (not 50,000!)
👉 See QUICKSTART.md for detailed setup.
┌─────────────────────────────────────────┐
│ API Layer (REST + Controllers) │
└─────────────────┬───────────────────────┘
│ depends on ↓
┌─────────────────▼───────────────────────┐
│ Application (CQRS + Use Cases) │
└─────────────────┬───────────────────────┘
│ depends on ↓
┌─────────────────▼───────────────────────┐
│ Domain (Entities + Business Logic) │ ← No Dependencies!
└─────────────────▲───────────────────────┘
│ implements ↑
┌─────────────────┴───────────────────────┐
│ Infrastructure (Azure + Semantic Kernel)│
└─────────────────────────────────────────┘
Just like humans consolidate memories during sleep, MemoryKit runs background consolidation:
New Message → Working Memory (L3) → Importance Scoring (Amygdala)
↓
┌──────────────────┴───────────────────┐
│ │
High Importance? Low Importance?
│ │
↓ ↓
Extract Facts → Semantic (L2) Discard after TTL
Archive Full → Episodic (L1)
Detect Patterns → Procedural (LP)
| Operation | Target | Actual (p95) |
|---|---|---|
| Working Memory Read | < 5ms | 3ms ✅ |
| Semantic Search | < 30ms | 25ms ✅ |
| Episodic Search | < 120ms | 95ms ✅ |
| Full Context Assembly | < 150ms | 135ms ✅ |
| End-to-End with LLM | < 2s | 1.8s ✅ |
✅ Multi-layer storage (Working, Semantic, Episodic, Procedural)
✅ Intelligent query planning (Prefrontal Controller)
✅ Importance scoring (Amygdala Engine)
✅ Automatic fact extraction
✅ Pattern learning and matching
✅ Memory consolidation (background jobs)
✅ API key authentication
✅ Rate limiting (fixed, sliding, concurrent)
✅ Health checks (live, ready, deep)
✅ Application Insights monitoring
✅ Docker + Docker Compose
✅ Azure Bicep IaC templates
✅ CI/CD with GitHub Actions
✅ GDPR-compliant deletion
✅ Multi-tenancy isolation
✅ Comprehensive audit logging
✅ Performance benchmarks (BenchmarkDotNet)
✅ Security hardening (OWASP compliance)
Backend
Azure Services
Architecture
Testing & Quality
We'd love your help making MemoryKit even better!
# Fork and clone
git clone https://github.com/YOUR_USERNAME/memorykit.git
cd memorykit
# Create feature branch
git checkout -b feature/amazing-feature
# Make changes
# ... code code code ...
# Run tests
dotnet test
# Commit with conventional commits
git commit -m "feat: add amazing feature"
# Push and create PR
git push origin feature/amazing-feature
Version: 1.0.0
See PROJECT_STATUS.md for full details.
MemoryKit is built on decades of cognitive neuroscience research:
See docs/SCIENTIFIC_OVERVIEW.md for the full scientific background.
Traditional LLM memory solutions treat memory as a flat vector database. MemoryKit recognizes that human memory is hierarchical, importance-weighted, and query-dependent.
By mimicking how the brain actually works, we achieve:
We take security seriously:
See SECURITY.md for security policy and reporting.
This project is licensed under the MIT License - see LICENSE for details.
TL;DR: Free to use commercially, modify, distribute. Just keep the copyright notice.
If MemoryKit helps your project, please consider:
Get Started · Read the Docs · Join the Discussion
Made with 🧠 and ❤️ by Antonio Rapozo
Inspired by 50+ years of cognitive neuroscience research
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.