@batalabs/virlow-mcp-core 3.11.7 → 3.11.9
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/cjs/notes.d.ts +4 -0
- package/dist/cjs/notes.js +41 -3
- package/dist/notes.d.ts +4 -0
- package/dist/notes.d.ts.map +1 -1
- package/dist/notes.js +41 -3
- package/dist/notes.js.map +1 -1
- package/package.json +3 -3
package/dist/cjs/notes.d.ts
CHANGED
|
@@ -92,6 +92,10 @@ export declare class NotesService {
|
|
|
92
92
|
* flip the switch in the app at any moment and the next tool call must
|
|
93
93
|
* respect it. */
|
|
94
94
|
private exposure;
|
|
95
|
+
/** Throws unless `folderId` is exposed to MCP. Every method that reads or
|
|
96
|
+
* mutates a specific note (by id) must call this — knowing a note's id is
|
|
97
|
+
* not consent to bypass the "Expose to MCP" folder switch. */
|
|
98
|
+
private requireExposed;
|
|
95
99
|
createFolder(name: string, parentId?: string | null): Promise<{
|
|
96
100
|
id: string;
|
|
97
101
|
}>;
|
package/dist/cjs/notes.js
CHANGED
|
@@ -72,9 +72,7 @@ class NotesService {
|
|
|
72
72
|
// Reading by exact id is still a read: the switch says the assistant may
|
|
73
73
|
// not read this folder, and knowing the id does not change that.
|
|
74
74
|
const exposure = await this.exposure();
|
|
75
|
-
|
|
76
|
-
throw new Error(`Note ${id} is in a folder that is not exposed to MCP. Turn on "Expose to MCP" in that folder's settings in the Virlow app to read it here.`);
|
|
77
|
-
}
|
|
75
|
+
this.requireExposed(exposure, row.folderId, id);
|
|
78
76
|
const { title, content } = await this.decryptRow(key, row);
|
|
79
77
|
return { id: row.id, title, content, folderId: row.folderId };
|
|
80
78
|
}
|
|
@@ -101,6 +99,8 @@ class NotesService {
|
|
|
101
99
|
return this.enqueue(async () => {
|
|
102
100
|
const key = this.requireSession();
|
|
103
101
|
const existingRow = await this.api.getNote(id);
|
|
102
|
+
const exposure = await this.exposure();
|
|
103
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
104
104
|
const current = await this.decryptRow(key, existingRow);
|
|
105
105
|
const title = changes.title ?? current.title;
|
|
106
106
|
const content = changes.content ?? current.content;
|
|
@@ -119,6 +119,10 @@ class NotesService {
|
|
|
119
119
|
async searchNotes(query, limit = 20) {
|
|
120
120
|
const key = this.requireSession();
|
|
121
121
|
const q = query.toLowerCase();
|
|
122
|
+
// Computed once for the whole scan (not per-row): consistent with
|
|
123
|
+
// listNotes/readNote, this is what keeps folders the user has not opened
|
|
124
|
+
// to AI tools out of search results too.
|
|
125
|
+
const exposure = await this.exposure();
|
|
122
126
|
const results = [];
|
|
123
127
|
let scanned = 0;
|
|
124
128
|
let total = 0;
|
|
@@ -129,6 +133,8 @@ class NotesService {
|
|
|
129
133
|
for (const row of notes) {
|
|
130
134
|
if (row.hidden === true)
|
|
131
135
|
continue;
|
|
136
|
+
if (!exposure.allows(row.folderId))
|
|
137
|
+
continue;
|
|
132
138
|
if (scanned >= exports.SEARCH_SCAN_CAP)
|
|
133
139
|
break scan;
|
|
134
140
|
scanned++;
|
|
@@ -149,18 +155,42 @@ class NotesService {
|
|
|
149
155
|
}
|
|
150
156
|
async moveNote(id, folderId) {
|
|
151
157
|
this.requireSession();
|
|
158
|
+
const existingRow = await this.api.getNote(id);
|
|
159
|
+
const exposure = await this.exposure();
|
|
160
|
+
// Moving a note the assistant cannot already see would be a write to a
|
|
161
|
+
// folder it has no business touching. Moving it *into* a closed folder is
|
|
162
|
+
// also refused: the destination check exists for the opposite direction
|
|
163
|
+
// (open source, closed destination is just filing and stays out of any
|
|
164
|
+
// exposure the user can see) — the case we can't allow is closed source,
|
|
165
|
+
// open destination, which would relocate a hidden note somewhere it
|
|
166
|
+
// suddenly shows up in list/search/read. Moving to the root (`null`) is
|
|
167
|
+
// exempt from the destination check: root is never exposed either way,
|
|
168
|
+
// so it can only ever reduce what's visible, never leak it.
|
|
169
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
170
|
+
if (folderId !== null) {
|
|
171
|
+
this.requireExposed(exposure, folderId, id);
|
|
172
|
+
}
|
|
152
173
|
await this.api.updateNote(id, { folderId });
|
|
153
174
|
}
|
|
154
175
|
async setStar(id, starred) {
|
|
155
176
|
this.requireSession();
|
|
177
|
+
const existingRow = await this.api.getNote(id);
|
|
178
|
+
const exposure = await this.exposure();
|
|
179
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
156
180
|
await this.api.updateNote(id, { starred });
|
|
157
181
|
}
|
|
158
182
|
async archiveNote(id, archived) {
|
|
159
183
|
this.requireSession();
|
|
184
|
+
const existingRow = await this.api.getNote(id);
|
|
185
|
+
const exposure = await this.exposure();
|
|
186
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
160
187
|
await this.api.updateNote(id, { archived });
|
|
161
188
|
}
|
|
162
189
|
async trashNote(id) {
|
|
163
190
|
this.requireSession();
|
|
191
|
+
const existingRow = await this.api.getNote(id);
|
|
192
|
+
const exposure = await this.exposure();
|
|
193
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
164
194
|
await this.api.updateNote(id, { deleted: true });
|
|
165
195
|
}
|
|
166
196
|
async listFolders() {
|
|
@@ -182,6 +212,14 @@ class NotesService {
|
|
|
182
212
|
const { folders } = await this.api.listFolders();
|
|
183
213
|
return (0, exposure_js_1.computeExposure)(folders);
|
|
184
214
|
}
|
|
215
|
+
/** Throws unless `folderId` is exposed to MCP. Every method that reads or
|
|
216
|
+
* mutates a specific note (by id) must call this — knowing a note's id is
|
|
217
|
+
* not consent to bypass the "Expose to MCP" folder switch. */
|
|
218
|
+
requireExposed(exposure, folderId, id) {
|
|
219
|
+
if (!exposure.allows(folderId)) {
|
|
220
|
+
throw new Error(`Note ${id} is in a folder that is not exposed to MCP. Turn on "Expose to MCP" in that folder's settings in the Virlow app to access it here.`);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
185
223
|
async createFolder(name, parentId) {
|
|
186
224
|
this.requireSession();
|
|
187
225
|
const folder = await this.api.createFolder(name, parentId);
|
package/dist/notes.d.ts
CHANGED
|
@@ -92,6 +92,10 @@ export declare class NotesService {
|
|
|
92
92
|
* flip the switch in the app at any moment and the next tool call must
|
|
93
93
|
* respect it. */
|
|
94
94
|
private exposure;
|
|
95
|
+
/** Throws unless `folderId` is exposed to MCP. Every method that reads or
|
|
96
|
+
* mutates a specific note (by id) must call this — knowing a note's id is
|
|
97
|
+
* not consent to bypass the "Expose to MCP" folder switch. */
|
|
98
|
+
private requireExposed;
|
|
95
99
|
createFolder(name: string, parentId?: string | null): Promise<{
|
|
96
100
|
id: string;
|
|
97
101
|
}>;
|
package/dist/notes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notes.d.ts","sourceRoot":"","sources":["../src/notes.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,KAAK,EAAsB,SAAS,EAAE,MAAM,UAAU,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC;;yEAEyE;AACzE,eAAO,MAAM,eAAe,MAAM,CAAC;AAYnC,qBAAa,YAAY;IAoBrB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IApBxB;;sEAEkE;IAClE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsC;IAEnE;;;yEAGqE;IACrE,OAAO,CAAC,KAAK,CAAK;IAElB;;;;gFAI4E;IAC5E,OAAO,CAAC,aAAa,CAAuC;gBAGzC,GAAG,EAAE,SAAS,EACd,KAAK,EAAE,KAAK;IAK/B,OAAO,CAAC,UAAU;IAKZ,SAAS,CAAC,MAAM,EAAE;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC;QACV,KAAK,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,OAAO,EAAE,OAAO,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC1G,UAAU,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;QAC1E;;wBAEgB;QAChB,QAAQ,EAAE;YAAE,eAAe,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;QACvD,QAAQ,EAAE,QAAQ,CAAC;KACpB,CAAC;IAiCI,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"notes.d.ts","sourceRoot":"","sources":["../src/notes.ts"],"names":[],"mappings":"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"}
|
package/dist/notes.js
CHANGED
|
@@ -69,9 +69,7 @@ export class NotesService {
|
|
|
69
69
|
// Reading by exact id is still a read: the switch says the assistant may
|
|
70
70
|
// not read this folder, and knowing the id does not change that.
|
|
71
71
|
const exposure = await this.exposure();
|
|
72
|
-
|
|
73
|
-
throw new Error(`Note ${id} is in a folder that is not exposed to MCP. Turn on "Expose to MCP" in that folder's settings in the Virlow app to read it here.`);
|
|
74
|
-
}
|
|
72
|
+
this.requireExposed(exposure, row.folderId, id);
|
|
75
73
|
const { title, content } = await this.decryptRow(key, row);
|
|
76
74
|
return { id: row.id, title, content, folderId: row.folderId };
|
|
77
75
|
}
|
|
@@ -98,6 +96,8 @@ export class NotesService {
|
|
|
98
96
|
return this.enqueue(async () => {
|
|
99
97
|
const key = this.requireSession();
|
|
100
98
|
const existingRow = await this.api.getNote(id);
|
|
99
|
+
const exposure = await this.exposure();
|
|
100
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
101
101
|
const current = await this.decryptRow(key, existingRow);
|
|
102
102
|
const title = changes.title ?? current.title;
|
|
103
103
|
const content = changes.content ?? current.content;
|
|
@@ -116,6 +116,10 @@ export class NotesService {
|
|
|
116
116
|
async searchNotes(query, limit = 20) {
|
|
117
117
|
const key = this.requireSession();
|
|
118
118
|
const q = query.toLowerCase();
|
|
119
|
+
// Computed once for the whole scan (not per-row): consistent with
|
|
120
|
+
// listNotes/readNote, this is what keeps folders the user has not opened
|
|
121
|
+
// to AI tools out of search results too.
|
|
122
|
+
const exposure = await this.exposure();
|
|
119
123
|
const results = [];
|
|
120
124
|
let scanned = 0;
|
|
121
125
|
let total = 0;
|
|
@@ -126,6 +130,8 @@ export class NotesService {
|
|
|
126
130
|
for (const row of notes) {
|
|
127
131
|
if (row.hidden === true)
|
|
128
132
|
continue;
|
|
133
|
+
if (!exposure.allows(row.folderId))
|
|
134
|
+
continue;
|
|
129
135
|
if (scanned >= SEARCH_SCAN_CAP)
|
|
130
136
|
break scan;
|
|
131
137
|
scanned++;
|
|
@@ -146,18 +152,42 @@ export class NotesService {
|
|
|
146
152
|
}
|
|
147
153
|
async moveNote(id, folderId) {
|
|
148
154
|
this.requireSession();
|
|
155
|
+
const existingRow = await this.api.getNote(id);
|
|
156
|
+
const exposure = await this.exposure();
|
|
157
|
+
// Moving a note the assistant cannot already see would be a write to a
|
|
158
|
+
// folder it has no business touching. Moving it *into* a closed folder is
|
|
159
|
+
// also refused: the destination check exists for the opposite direction
|
|
160
|
+
// (open source, closed destination is just filing and stays out of any
|
|
161
|
+
// exposure the user can see) — the case we can't allow is closed source,
|
|
162
|
+
// open destination, which would relocate a hidden note somewhere it
|
|
163
|
+
// suddenly shows up in list/search/read. Moving to the root (`null`) is
|
|
164
|
+
// exempt from the destination check: root is never exposed either way,
|
|
165
|
+
// so it can only ever reduce what's visible, never leak it.
|
|
166
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
167
|
+
if (folderId !== null) {
|
|
168
|
+
this.requireExposed(exposure, folderId, id);
|
|
169
|
+
}
|
|
149
170
|
await this.api.updateNote(id, { folderId });
|
|
150
171
|
}
|
|
151
172
|
async setStar(id, starred) {
|
|
152
173
|
this.requireSession();
|
|
174
|
+
const existingRow = await this.api.getNote(id);
|
|
175
|
+
const exposure = await this.exposure();
|
|
176
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
153
177
|
await this.api.updateNote(id, { starred });
|
|
154
178
|
}
|
|
155
179
|
async archiveNote(id, archived) {
|
|
156
180
|
this.requireSession();
|
|
181
|
+
const existingRow = await this.api.getNote(id);
|
|
182
|
+
const exposure = await this.exposure();
|
|
183
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
157
184
|
await this.api.updateNote(id, { archived });
|
|
158
185
|
}
|
|
159
186
|
async trashNote(id) {
|
|
160
187
|
this.requireSession();
|
|
188
|
+
const existingRow = await this.api.getNote(id);
|
|
189
|
+
const exposure = await this.exposure();
|
|
190
|
+
this.requireExposed(exposure, existingRow.folderId, id);
|
|
161
191
|
await this.api.updateNote(id, { deleted: true });
|
|
162
192
|
}
|
|
163
193
|
async listFolders() {
|
|
@@ -179,6 +209,14 @@ export class NotesService {
|
|
|
179
209
|
const { folders } = await this.api.listFolders();
|
|
180
210
|
return computeExposure(folders);
|
|
181
211
|
}
|
|
212
|
+
/** Throws unless `folderId` is exposed to MCP. Every method that reads or
|
|
213
|
+
* mutates a specific note (by id) must call this — knowing a note's id is
|
|
214
|
+
* not consent to bypass the "Expose to MCP" folder switch. */
|
|
215
|
+
requireExposed(exposure, folderId, id) {
|
|
216
|
+
if (!exposure.allows(folderId)) {
|
|
217
|
+
throw new Error(`Note ${id} is in a folder that is not exposed to MCP. Turn on "Expose to MCP" in that folder's settings in the Virlow app to access it here.`);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
182
220
|
async createFolder(name, parentId) {
|
|
183
221
|
this.requireSession();
|
|
184
222
|
const folder = await this.api.createFolder(name, parentId);
|
package/dist/notes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notes.js","sourceRoot":"","sources":["../src/notes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"notes.js","sourceRoot":"","sources":["../src/notes.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@batalabs/virlow-mcp-core",
|
|
3
|
-
"version": "3.11.
|
|
3
|
+
"version": "3.11.9",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Virlow MCP connector core: encrypted note and memory access, folder exposure, and the memories opt-in. Shared by the local virlow-mcp CLI and the hosted connector.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"yaml": ">=2.8.3 <3",
|
|
21
|
-
"@batalabs/virlow-
|
|
22
|
-
"@batalabs/virlow-
|
|
21
|
+
"@batalabs/virlow-memory": "3.11.9",
|
|
22
|
+
"@batalabs/virlow-crypto": "3.11.9"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@types/node": "^22.10.0",
|