What's New in memory-mcp v2.5: From Python to TypeScript
If you found memory-mcp through an older article talking about Python, sentence transformers, and vector similarity search - that's the old version. Here's what changed and why.
TL;DR
memory-mcp v2.5 is a complete rewrite: Python → TypeScript, embeddings → FTS5, pip → npx. It's simpler, faster, and has zero external dependencies.
The Old Version (Pre-v2.0)
The original memory-mcp was built in Python with:
- Sentence transformers for embeddings
- Vector similarity search
- Python 3.8-3.12 required
- pip install workflow
- Heavy dependencies (PyTorch, transformers)
It worked, but had problems: slow startup, large memory footprint, complex installation, and embedding models that needed downloading.
The New Version (v2.5)
We completely rewrote memory-mcp with a different philosophy: simplicity over features.
| Aspect | Old (Python) | New (v2.5) |
|---|---|---|
| Language | Python 3.8+ | TypeScript |
| Search | Vector embeddings | FTS5 full-text |
| Storage | JSON files | SQLite |
| Install | pip + requirements | npx (one command) |
| Dependencies | PyTorch, transformers | MCP SDK + better-sqlite3 |
| Startup | 30+ seconds | <1 second |
| Embedding model | Required (500MB+) | None needed |
Why We Dropped Embeddings
Embeddings are powerful but overkill for most memory use cases. Here's why:
- Memory isn't search. You're not searching millions of documents - you're recalling dozens to hundreds of memories.
- Keywords work. FTS5 with BM25 ranking is fast and accurate for reasonable memory sizes.
- Simplicity wins. No model downloads, no GPU, no cold start.
For most users, "find memories about authentication" works perfectly with keyword search. If you truly need semantic search at scale, use a dedicated solution like Qdrant or Pinecone.
New Features in v2.5
- Token budgeting - Recall respects your context limits
- Auto-summarization - Long memories get summarized on store
- Entity extraction - Automatic tagging of people, projects, concepts
- Soft deletes - Audit trail preserved for debugging
- Hybrid relevance - Scoring combines recency + importance + frequency
Migration Guide
If you were using the old Python version:
- Export your memories from the old JSON files (optional - start fresh is fine)
- Uninstall the old Python package
- Install the new version:
npx @whenmoon-afk/memory-mcpOr add to your Claude Desktop config:
{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "@whenmoon-afk/memory-mcp"]
}
}
}Restart Claude Desktop. You now have three tools: memory_store, memory_recall, and memory_forget.
What's Next
We're building Substratia Pro with:
- Cloud sync across devices
- Memory dashboard to view/edit what AI remembers
- Automatic backups
- Team memory sharing