@aeriondyseti/vector-memory-mcp 1.1.0-dev.5 → 2.0.0-rc
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -4
- package/package.json +12 -18
- package/scripts/migrate-from-lancedb.ts +56 -0
- package/scripts/smoke-test.ts +699 -0
- package/scripts/test-runner.ts +11 -1
- package/src/db/connection.ts +18 -4
- package/src/db/conversation.repository.ts +164 -78
- package/src/db/memory.repository.ts +180 -168
- package/src/db/migrations.ts +70 -0
- package/src/db/sqlite-utils.ts +78 -0
- package/src/http/server.ts +40 -35
- package/src/index.ts +33 -3
- package/src/mcp/server.ts +2 -1
- package/src/migration.ts +254 -0
- package/dist/package.json +0 -71
- package/dist/scripts/test-runner.d.ts +0 -9
- package/dist/scripts/test-runner.d.ts.map +0 -1
- package/dist/scripts/test-runner.js +0 -61
- package/dist/scripts/test-runner.js.map +0 -1
- package/dist/scripts/warmup.d.ts +0 -8
- package/dist/scripts/warmup.d.ts.map +0 -1
- package/dist/scripts/warmup.js +0 -61
- package/dist/scripts/warmup.js.map +0 -1
- package/dist/src/config/index.d.ts +0 -41
- package/dist/src/config/index.d.ts.map +0 -1
- package/dist/src/config/index.js +0 -75
- package/dist/src/config/index.js.map +0 -1
- package/dist/src/db/connection.d.ts +0 -3
- package/dist/src/db/connection.d.ts.map +0 -1
- package/dist/src/db/connection.js +0 -10
- package/dist/src/db/connection.js.map +0 -1
- package/dist/src/db/conversation.repository.d.ts +0 -26
- package/dist/src/db/conversation.repository.d.ts.map +0 -1
- package/dist/src/db/conversation.repository.js +0 -72
- package/dist/src/db/conversation.repository.js.map +0 -1
- package/dist/src/db/conversation.schema.d.ts +0 -4
- package/dist/src/db/conversation.schema.d.ts.map +0 -1
- package/dist/src/db/conversation.schema.js +0 -15
- package/dist/src/db/conversation.schema.js.map +0 -1
- package/dist/src/db/lancedb-utils.d.ts +0 -45
- package/dist/src/db/lancedb-utils.d.ts.map +0 -1
- package/dist/src/db/lancedb-utils.js +0 -106
- package/dist/src/db/lancedb-utils.js.map +0 -1
- package/dist/src/db/memory.repository.d.ts +0 -40
- package/dist/src/db/memory.repository.d.ts.map +0 -1
- package/dist/src/db/memory.repository.js +0 -183
- package/dist/src/db/memory.repository.js.map +0 -1
- package/dist/src/db/schema.d.ts +0 -7
- package/dist/src/db/schema.d.ts.map +0 -1
- package/dist/src/db/schema.js +0 -19
- package/dist/src/db/schema.js.map +0 -1
- package/dist/src/http/mcp-transport.d.ts +0 -19
- package/dist/src/http/mcp-transport.d.ts.map +0 -1
- package/dist/src/http/mcp-transport.js +0 -191
- package/dist/src/http/mcp-transport.js.map +0 -1
- package/dist/src/http/server.d.ts +0 -13
- package/dist/src/http/server.d.ts.map +0 -1
- package/dist/src/http/server.js +0 -224
- package/dist/src/http/server.js.map +0 -1
- package/dist/src/index.d.ts +0 -3
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -68
- package/dist/src/index.js.map +0 -1
- package/dist/src/mcp/handlers.d.ts +0 -15
- package/dist/src/mcp/handlers.d.ts.map +0 -1
- package/dist/src/mcp/handlers.js +0 -313
- package/dist/src/mcp/handlers.js.map +0 -1
- package/dist/src/mcp/server.d.ts +0 -5
- package/dist/src/mcp/server.d.ts.map +0 -1
- package/dist/src/mcp/server.js +0 -22
- package/dist/src/mcp/server.js.map +0 -1
- package/dist/src/mcp/tools.d.ts +0 -13
- package/dist/src/mcp/tools.d.ts.map +0 -1
- package/dist/src/mcp/tools.js +0 -352
- package/dist/src/mcp/tools.js.map +0 -1
- package/dist/src/services/conversation.service.d.ts +0 -38
- package/dist/src/services/conversation.service.d.ts.map +0 -1
- package/dist/src/services/conversation.service.js +0 -252
- package/dist/src/services/conversation.service.js.map +0 -1
- package/dist/src/services/embeddings.service.d.ts +0 -12
- package/dist/src/services/embeddings.service.d.ts.map +0 -1
- package/dist/src/services/embeddings.service.js +0 -37
- package/dist/src/services/embeddings.service.js.map +0 -1
- package/dist/src/services/memory.service.d.ts +0 -40
- package/dist/src/services/memory.service.d.ts.map +0 -1
- package/dist/src/services/memory.service.js +0 -258
- package/dist/src/services/memory.service.js.map +0 -1
- package/dist/src/services/parsers/claude-code.parser.d.ts +0 -8
- package/dist/src/services/parsers/claude-code.parser.d.ts.map +0 -1
- package/dist/src/services/parsers/claude-code.parser.js +0 -191
- package/dist/src/services/parsers/claude-code.parser.js.map +0 -1
- package/dist/src/services/parsers/types.d.ts +0 -9
- package/dist/src/services/parsers/types.d.ts.map +0 -1
- package/dist/src/services/parsers/types.js +0 -2
- package/dist/src/services/parsers/types.js.map +0 -1
- package/dist/src/types/conversation.d.ts +0 -99
- package/dist/src/types/conversation.d.ts.map +0 -1
- package/dist/src/types/conversation.js +0 -2
- package/dist/src/types/conversation.js.map +0 -1
- package/dist/src/types/memory.d.ts +0 -30
- package/dist/src/types/memory.d.ts.map +0 -1
- package/dist/src/types/memory.js +0 -18
- package/dist/src/types/memory.js.map +0 -1
- package/src/db/conversation.schema.ts +0 -33
- package/src/db/lancedb-utils.ts +0 -125
- package/src/db/schema.ts +0 -38
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> Semantic memory storage for AI assistants. Store decisions, patterns, and context that persists across sessions.
|
|
4
4
|
|
|
5
|
-
A local-first MCP server that provides vector-based memory storage. Uses local embeddings and
|
|
5
|
+
A local-first MCP server that provides vector-based memory storage. Uses local embeddings and SQLite with sqlite-vec for fast, private semantic search — all in a single file.
|
|
6
6
|
|
|
7
7
|
[](https://opensource.org/licenses/MIT)
|
|
8
8
|
[](https://www.npmjs.com/package/@aeriondyseti/vector-memory-mcp)
|
|
@@ -11,10 +11,11 @@ A local-first MCP server that provides vector-based memory storage. Uses local e
|
|
|
11
11
|
|
|
12
12
|
## Features
|
|
13
13
|
|
|
14
|
-
- **Local & Private** - All embeddings generated locally, data stored in
|
|
15
|
-
- **Semantic Search** -
|
|
14
|
+
- **Local & Private** - All embeddings generated locally, data stored in a single SQLite file
|
|
15
|
+
- **Semantic Search** - Hybrid vector + full-text search with intent-based ranking
|
|
16
16
|
- **Batch Operations** - Store, update, delete, and retrieve multiple memories at once
|
|
17
17
|
- **Session Waypoints** - Save and restore project context between sessions
|
|
18
|
+
- **Conversation History** - Index and search Claude Code session transcripts
|
|
18
19
|
- **MCP Native** - Standard protocol, works with any MCP-compatible client
|
|
19
20
|
|
|
20
21
|
---
|
|
@@ -113,6 +114,23 @@ CLI flags:
|
|
|
113
114
|
|
|
114
115
|
---
|
|
115
116
|
|
|
117
|
+
## Migrating from 1.x (LanceDB)
|
|
118
|
+
|
|
119
|
+
Version 2.0 replaced LanceDB with SQLite (sqlite-vec) for storage. If you have existing data from 1.x, the server will detect it automatically and prompt you to migrate:
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
vector-memory-mcp migrate
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
This reads your LanceDB directory, writes a new SQLite file, and prints instructions to swap them. Your original data is preserved until you manually remove it.
|
|
126
|
+
|
|
127
|
+
**What changed:**
|
|
128
|
+
- Storage: LanceDB directory (~845 files) → single `.db` file
|
|
129
|
+
- Dependencies: 223MB (`@lancedb/lancedb` + `apache-arrow`) → 24KB (`sqlite-vec`)
|
|
130
|
+
- Runtime: Node.js support dropped, Bun required (for `bun:sqlite`)
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
116
134
|
## Development
|
|
117
135
|
|
|
118
136
|
```bash
|
|
@@ -139,4 +157,4 @@ MIT - see [LICENSE](LICENSE)
|
|
|
139
157
|
|
|
140
158
|
---
|
|
141
159
|
|
|
142
|
-
Built with [MCP SDK](https://github.com/modelcontextprotocol/typescript-sdk), [
|
|
160
|
+
Built with [MCP SDK](https://github.com/modelcontextprotocol/typescript-sdk), [sqlite-vec](https://github.com/asg017/sqlite-vec), and [Transformers.js](https://huggingface.co/docs/transformers.js)
|
package/package.json
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aeriondyseti/vector-memory-mcp",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0-rc",
|
|
4
4
|
"description": "A zero-configuration RAG memory server for MCP clients",
|
|
5
5
|
"type": "module",
|
|
6
|
-
"main": "
|
|
6
|
+
"main": "src/index.ts",
|
|
7
7
|
"bin": {
|
|
8
|
-
"vector-memory-mcp": "
|
|
8
|
+
"vector-memory-mcp": "src/index.ts"
|
|
9
9
|
},
|
|
10
10
|
"files": [
|
|
11
|
-
"dist",
|
|
12
11
|
"src",
|
|
13
12
|
"scripts",
|
|
14
13
|
"README.md",
|
|
@@ -24,11 +23,8 @@
|
|
|
24
23
|
},
|
|
25
24
|
"homepage": "https://github.com/aeriondyseti/vector-memory-mcp#readme",
|
|
26
25
|
"scripts": {
|
|
27
|
-
"start": "
|
|
28
|
-
"start:bun": "bun run src/index.ts",
|
|
26
|
+
"start": "bun run src/index.ts",
|
|
29
27
|
"dev": "bun --watch run src/index.ts",
|
|
30
|
-
"build": "tsc",
|
|
31
|
-
"prebuild": "rm -rf dist",
|
|
32
28
|
"typecheck": "bunx tsc --noEmit",
|
|
33
29
|
"test": "bun run scripts/test-runner.ts",
|
|
34
30
|
"test:raw": "bun test --preload ./tests/preload.ts",
|
|
@@ -36,36 +32,34 @@
|
|
|
36
32
|
"test:coverage": "bun test --preload ./tests/preload.ts --coverage",
|
|
37
33
|
"benchmark": "bun test tests/benchmark.test.ts --preload ./tests/preload.ts",
|
|
38
34
|
"test:preload": "bun run tests/preload.ts",
|
|
35
|
+
"smoke": "bun run scripts/smoke-test.ts",
|
|
39
36
|
"warmup": "bun run scripts/warmup.ts",
|
|
40
37
|
"postinstall": "bun run scripts/warmup.ts",
|
|
41
|
-
"prepublishOnly": "
|
|
38
|
+
"prepublishOnly": "bunx tsc --noEmit"
|
|
42
39
|
},
|
|
43
40
|
"keywords": [
|
|
44
41
|
"mcp",
|
|
45
42
|
"memory",
|
|
46
43
|
"rag",
|
|
47
44
|
"embeddings",
|
|
48
|
-
"
|
|
45
|
+
"sqlite-vec"
|
|
49
46
|
],
|
|
50
47
|
"license": "MIT",
|
|
51
48
|
"dependencies": {
|
|
52
|
-
"@hono/node-server": "^1.19.9",
|
|
53
49
|
"@huggingface/transformers": "^3.8.0",
|
|
54
|
-
"@lancedb/lancedb": "^0.
|
|
50
|
+
"@lancedb/lancedb": "^0.26.2",
|
|
55
51
|
"@modelcontextprotocol/sdk": "^1.0.0",
|
|
52
|
+
"apache-arrow": "^21.1.0",
|
|
56
53
|
"arg": "^5.0.2",
|
|
57
|
-
"hono": "^4.11.3"
|
|
54
|
+
"hono": "^4.11.3",
|
|
55
|
+
"sqlite-vec": "^0.1.6"
|
|
58
56
|
},
|
|
59
57
|
"devDependencies": {
|
|
60
58
|
"@types/bun": "latest",
|
|
61
59
|
"typescript": "^5.0.0"
|
|
62
60
|
},
|
|
63
61
|
"trustedDependencies": [
|
|
64
|
-
"onnxruntime-node",
|
|
65
62
|
"protobufjs",
|
|
66
63
|
"sharp"
|
|
67
|
-
]
|
|
68
|
-
"overrides": {
|
|
69
|
-
"onnxruntime-node": "1.23.2"
|
|
70
|
-
}
|
|
64
|
+
]
|
|
71
65
|
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
#!/usr/bin/env bun
|
|
2
|
+
/**
|
|
3
|
+
* Standalone migration script: LanceDB → SQLite (sqlite-vec)
|
|
4
|
+
*
|
|
5
|
+
* This is a thin wrapper around src/migration.ts for direct invocation.
|
|
6
|
+
* The preferred way to migrate is `vector-memory-mcp migrate`.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* bun scripts/migrate-from-lancedb.ts [--source <lancedb-dir>] [--target <sqlite-file>]
|
|
10
|
+
*
|
|
11
|
+
* Defaults:
|
|
12
|
+
* --source .vector-memory/memories.db (the old LanceDB directory)
|
|
13
|
+
* --target .vector-memory/memories.db.sqlite (new SQLite file)
|
|
14
|
+
*
|
|
15
|
+
* @deprecated Use `vector-memory-mcp migrate` instead. This script will be
|
|
16
|
+
* removed in the next major version.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import { migrate, formatMigrationSummary } from "../src/migration.js";
|
|
20
|
+
|
|
21
|
+
function parseArgs(): { source: string; target: string } {
|
|
22
|
+
const args = process.argv.slice(2);
|
|
23
|
+
let source = ".vector-memory/memories.db";
|
|
24
|
+
let target = ".vector-memory/memories.db.sqlite";
|
|
25
|
+
|
|
26
|
+
for (let i = 0; i < args.length; i++) {
|
|
27
|
+
if (args[i] === "--source" && args[i + 1]) source = args[++i];
|
|
28
|
+
else if (args[i] === "--target" && args[i + 1]) target = args[++i];
|
|
29
|
+
else if (args[i] === "--help" || args[i] === "-h") {
|
|
30
|
+
console.log(`
|
|
31
|
+
Usage: bun scripts/migrate-from-lancedb.ts [options]
|
|
32
|
+
|
|
33
|
+
Prefer: vector-memory-mcp migrate
|
|
34
|
+
|
|
35
|
+
Options:
|
|
36
|
+
--source <path> LanceDB directory (default: .vector-memory/memories.db)
|
|
37
|
+
--target <path> SQLite output file (default: .vector-memory/memories.db.sqlite)
|
|
38
|
+
--help Show this help
|
|
39
|
+
`);
|
|
40
|
+
process.exit(0);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return { source, target };
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
async function main() {
|
|
48
|
+
const { source, target } = parseArgs();
|
|
49
|
+
const result = await migrate({ source, target });
|
|
50
|
+
console.error(formatMigrationSummary(source, target, result));
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
main().catch((err) => {
|
|
54
|
+
console.error("❌ Migration failed:", err.message ?? err);
|
|
55
|
+
process.exit(1);
|
|
56
|
+
});
|