Disimpan sebagai memori importance-1.0, tag identity โ tiap sesi menyapa The Coder lebih dulu ๐
Ingat fakta, keputusan, preferensi. Panggil lagi kapan saja. Rating pentingnya, satukan yang dobel!
Kasih dokumen โ dipecah & di-embed & disimpan di SQLite โ tanya apa saja, dapat bagian yang tepat.
Embedder hash lokal 1024-dim, node:sqlite bawaan. Tanpa cloud, tanpa key, tanpa tagihan ๐ธ
BM25 (FTS5) + vektor digabung pakai RRF. Presisi kata kunci, paham makna โ dua-duanya!
Mendukung opencode, Claude Desktop, Cursor, VS Code โ satu memori untuk semua teman MCP.
File gede ditolak (RAG_MAX_FILE_MB), path bisa di-batasi (RAG_ALLOWED_DIRS), dokumen dobel dideteksi.
npm install
npm test # 92 cek: unit + round-trip MCP
npm run build # kompilasi ke dist/
npm run cli -- stats # playground CLI
npx mcp-rag-memory # langsung jalan dari npm
Config MCP global โ ingat kamu di semua project.
claude_desktop_config.json โ mcpServers.
Settings โ MCP โ Add server. Trik yang sama jalan!
.vscode/mcp.json dengan "type": "stdio".
๐งฉ Tips: perintah sama di mana saja โ npx mcp-rag-memory setelah `npm install -g` / publish, atau node --import tsx <path>/src/mcp/rag-server.ts buat dev lokal. Ingat sekali, panggil di mana saja!
| Grup | Tool | Fungsi |
|---|---|---|
| Sistem | system_stats | Lokasi DB, backend embedding, jumlah dok/memori |
| RAG Input | rag_ingest_text | Simpan teks mentah (deteksi dobel otomatis) |
rag_ingest_file | Simpan sebuah file | |
rag_ingest_dir | Input satu folder penuh! | |
| RAG Cari | rag_search | Cari hybrid (BM25 + vektor), chunk terurut |
rag_retrieve | Blok konteks siap-suntik | |
| RAG Dokumen | rag_list_documents | Inventaris dokumen |
rag_delete_document | Hapus dokumen + chunk | |
| Memori | memory_remember | Simpan memori jangka panjang |
memory_recall | Cari memori semantik | |
memory_context | Blok ringkas untuk prompt | |
memory_list/get/update/forget | CRUD lengkap | |
memory_consolidate | Dedupe + promosi memori panas | |
memory_stats | Jumlah, token, rata-rata penting |
๐ช Data tersimpan di .rag-data/rag.sqlite (di-gitignore, memori tidak pernah ter-push!)
{
"mcp": {
"rag-memory": {
"type": "local",
"command": ["node", "--import", "tsx", "src/mcp/rag-server.ts"],
"cwd": "D:/Project/mcp-server",
"environment": { "RAG_DB_DIR": "D:/Project/mcp-server/.rag-data" }
}
}
}
{
"mcpServers": {
"rag-memory": {
"command": "node",
"args": ["--import", "tsx", "D:/Project/mcp-server/src/mcp/rag-server.ts"],
"env": { "RAG_DB_DIR": "D:/Project/mcp-server/.rag-data" }
}
}
}
| Variabel | Default | Guna |
|---|---|---|
RAG_DB_DIR | .rag-data | Lokasi penyimpanan SQLite |
SEARCH_MODE | hybrid | hybrid | vector | keyword |
EMBEDDING_PROVIDER | local | local (tanpa deps) | transformers |
RAG_MAX_FILE_MB | 10 | Batas ukuran file yang boleh di-ingest |
RAG_ALLOWED_DIRS | (bebas) | Daftar folder yang diizinkan: ; | , |
RAG_PRUNE | 0 | 1 = konsolidasi boleh hapus memori basi |
rag_ingest_*memory_remember
memory_contextrag_retrieve
Suntik konteks โ biar AI kamu makin cemerlang โจ