virlow-mcp 3.14.6 → 3.14.7
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 -4
- package/package.json +4 -4
package/dist/cli.js
CHANGED
|
@@ -18,6 +18,33 @@ var ApiError = class extends Error {
|
|
|
18
18
|
this.name = "ApiError";
|
|
19
19
|
}
|
|
20
20
|
};
|
|
21
|
+
function describeErrorBody(data, fallback) {
|
|
22
|
+
if (typeof data !== "object" || data === null)
|
|
23
|
+
return fallback;
|
|
24
|
+
const d = data;
|
|
25
|
+
const raw = d.error ?? d.message;
|
|
26
|
+
if (raw === void 0 || raw === null)
|
|
27
|
+
return fallback;
|
|
28
|
+
if (typeof raw === "string")
|
|
29
|
+
return raw;
|
|
30
|
+
const issues = raw.issues;
|
|
31
|
+
if (Array.isArray(issues)) {
|
|
32
|
+
const lines = issues.map((issue) => {
|
|
33
|
+
const i = issue;
|
|
34
|
+
const path5 = Array.isArray(i.path) && i.path.length > 0 ? i.path.join(".") : "";
|
|
35
|
+
const message = typeof i.message === "string" ? i.message : "invalid";
|
|
36
|
+
return path5 ? `${path5}: ${message}` : message;
|
|
37
|
+
}).filter((line) => line.length > 0);
|
|
38
|
+
if (lines.length > 0)
|
|
39
|
+
return lines.join("; ");
|
|
40
|
+
}
|
|
41
|
+
try {
|
|
42
|
+
const text = JSON.stringify(raw);
|
|
43
|
+
return text.length > 300 ? `${text.slice(0, 297)}...` : text;
|
|
44
|
+
} catch {
|
|
45
|
+
return fallback;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
21
48
|
var VirlowApi = class {
|
|
22
49
|
baseUrl;
|
|
23
50
|
tokens = null;
|
|
@@ -47,8 +74,7 @@ var VirlowApi = class {
|
|
|
47
74
|
return void 0;
|
|
48
75
|
const data = await res.json().catch(() => ({}));
|
|
49
76
|
if (!res.ok) {
|
|
50
|
-
|
|
51
|
-
throw new ApiError(res.status, d.error ?? d.message ?? res.statusText);
|
|
77
|
+
throw new ApiError(res.status, describeErrorBody(data, res.statusText));
|
|
52
78
|
}
|
|
53
79
|
return data;
|
|
54
80
|
}
|
|
@@ -917,7 +943,7 @@ async function ensureNamespace(api, tree, name) {
|
|
|
917
943
|
}
|
|
918
944
|
|
|
919
945
|
// ../../packages/mcp-core/dist/memories.js
|
|
920
|
-
var SYNC_PAGE_LIMIT =
|
|
946
|
+
var SYNC_PAGE_LIMIT = 50;
|
|
921
947
|
var round3 = (n) => Math.round(n * 1e3) / 1e3;
|
|
922
948
|
var MemoryStore = class {
|
|
923
949
|
api;
|
|
@@ -1953,7 +1979,7 @@ function startUnlockServer(api, vault, opts = {}) {
|
|
|
1953
1979
|
}
|
|
1954
1980
|
|
|
1955
1981
|
// src/version.ts
|
|
1956
|
-
var VERSION = true ? "3.14.
|
|
1982
|
+
var VERSION = true ? "3.14.7" : "dev";
|
|
1957
1983
|
|
|
1958
1984
|
// src/server.ts
|
|
1959
1985
|
function defaultEmbeddingCacheDir() {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "virlow-mcp",
|
|
3
|
-
"version": "3.14.
|
|
3
|
+
"version": "3.14.7",
|
|
4
4
|
"description": "Local MCP server for Virlow Secure Notes: end-to-end-encrypted AI memories and notes for Cursor, Claude, Codex, and any MCP client.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -34,9 +34,9 @@
|
|
|
34
34
|
"esbuild": "^0.25.0",
|
|
35
35
|
"typescript": "^5.8.0",
|
|
36
36
|
"vitest": "^3.0.0",
|
|
37
|
-
"@batalabs/virlow-
|
|
38
|
-
"@batalabs/virlow-
|
|
39
|
-
"@batalabs/virlow-
|
|
37
|
+
"@batalabs/virlow-memory": "3.14.7",
|
|
38
|
+
"@batalabs/virlow-mcp-core": "3.14.7",
|
|
39
|
+
"@batalabs/virlow-crypto": "3.14.7"
|
|
40
40
|
},
|
|
41
41
|
"scripts": {
|
|
42
42
|
"build": "node build.mjs",
|