@vivantel/virage-mcp 0.1.3 → 0.1.5
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/dist/cli.js +30 -7
- package/dist/cli.js.map +1 -1
- package/package.json +3 -3
package/dist/cli.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { watch } from "fs";
|
|
2
3
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
3
4
|
import { loadConfig, EmbeddingsDb, defaultEmbeddingsDb, } from "@vivantel/virage-core";
|
|
4
5
|
import { createMcpServer } from "./server.js";
|
|
@@ -9,19 +10,41 @@ if (configIdx === -1 || !process.argv[configIdx + 1]) {
|
|
|
9
10
|
}
|
|
10
11
|
const configPath = process.argv[configIdx + 1];
|
|
11
12
|
const cfg = await loadConfig(configPath);
|
|
12
|
-
const dbPath =
|
|
13
|
+
const dbPath = defaultEmbeddingsDb();
|
|
13
14
|
const db = new EmbeddingsDb(dbPath);
|
|
14
15
|
await cfg.vectorStore.initialize();
|
|
15
16
|
const ctx = { db, embedder: cfg.embedder, vectorStore: cfg.vectorStore };
|
|
16
17
|
const server = createMcpServer(ctx);
|
|
17
18
|
const transport = new StdioServerTransport();
|
|
18
19
|
await server.connect(transport);
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
// Watch the LanceDB directory (or any file-backed store) and reinitialize
|
|
21
|
+
// when the index is replaced by a fresh `virage index` run.
|
|
22
|
+
const lanceDbUri = cfg.vectorStore.uri;
|
|
23
|
+
if (lanceDbUri && !lanceDbUri.startsWith("db://") && !lanceDbUri.startsWith("https://")) {
|
|
24
|
+
let debounce = null;
|
|
25
|
+
try {
|
|
26
|
+
watch(lanceDbUri, { recursive: false }, () => {
|
|
27
|
+
if (debounce)
|
|
28
|
+
clearTimeout(debounce);
|
|
29
|
+
debounce = setTimeout(async () => {
|
|
30
|
+
try {
|
|
31
|
+
await cfg.vectorStore.initialize();
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
// non-fatal — next request will retry
|
|
35
|
+
}
|
|
36
|
+
}, 500);
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
// directory may not exist yet; skip watching
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
async function shutdown() {
|
|
44
|
+
await cfg.vectorStore.close?.();
|
|
24
45
|
db.close();
|
|
25
46
|
process.exit(0);
|
|
26
|
-
}
|
|
47
|
+
}
|
|
48
|
+
process.on("SIGINT", () => void shutdown());
|
|
49
|
+
process.on("SIGTERM", () => void shutdown());
|
|
27
50
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,UAAU,EACV,YAAY,EACZ,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACnD,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;IACrD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,2DAA2D,CAC5D,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AACD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;AAE/C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;AAEzC,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,UAAU,EACV,YAAY,EACZ,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACnD,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;IACrD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,2DAA2D,CAC5D,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AACD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;AAE/C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;AAEzC,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;AACrC,MAAM,EAAE,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;AACpC,MAAM,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;AAEnC,MAAM,GAAG,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;AACzE,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;AACpC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAEhC,0EAA0E;AAC1E,4DAA4D;AAC5D,MAAM,UAAU,GACd,GAAG,CAAC,WACL,CAAC,GAAG,CAAC;AACN,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;IACxF,IAAI,QAAQ,GAAyC,IAAI,CAAC;IAC1D,IAAI,CAAC;QACH,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE;YAC3C,IAAI,QAAQ;gBAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;YACrC,QAAQ,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;gBAC/B,IAAI,CAAC;oBACH,MAAM,GAAG,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;gBACrC,CAAC;gBAAC,MAAM,CAAC;oBACP,sCAAsC;gBACxC,CAAC;YACH,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,6CAA6C;IAC/C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ;IACrB,MAAM,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;IAChC,EAAE,CAAC,KAAK,EAAE,CAAC;IACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;AAC5C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vivantel/virage-mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "MCP stdio server for Virage RAG — search and inspect your index from AI assistants",
|
|
6
6
|
"author": "Vivantel",
|
|
@@ -52,13 +52,13 @@
|
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@modelcontextprotocol/sdk": "^1.12.0",
|
|
54
54
|
"zod": "^3.24.0",
|
|
55
|
-
"@vivantel/virage-core": "0.2.
|
|
55
|
+
"@vivantel/virage-core": "0.2.14"
|
|
56
56
|
},
|
|
57
57
|
"peerDependencies": {
|
|
58
58
|
"@vivantel/virage-core": "*"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
|
-
"@vivantel/virage-core": "0.2.
|
|
61
|
+
"@vivantel/virage-core": "0.2.14",
|
|
62
62
|
"@types/node": "^25.9.1",
|
|
63
63
|
"typescript": "^6.0.3",
|
|
64
64
|
"vitest": "^4.1.8"
|