traqr-memory-mcp 0.2.13 → 0.2.15
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/tools.d.ts.map +1 -1
- package/dist/tools.js +21 -7
- package/dist/tools.js.map +1 -1
- package/dist/tools.test.d.ts +23 -0
- package/dist/tools.test.d.ts.map +1 -0
- package/dist/tools.test.js +88 -0
- package/dist/tools.test.js.map +1 -0
- package/package.json +2 -1
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAiDxE,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAiDxE,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,QAkd9C"}
|
package/dist/tools.js
CHANGED
|
@@ -118,9 +118,13 @@ export function registerTools(server) {
|
|
|
118
118
|
}
|
|
119
119
|
});
|
|
120
120
|
// --- memory_read ---
|
|
121
|
-
server.tool('memory_read', 'Expand a memory by ID. Shows full content, metadata, version history, and related memories.', {
|
|
121
|
+
server.tool('memory_read', 'Expand a memory by ID. Shows full content, metadata, version history, and related memories.', {
|
|
122
|
+
memoryId: z.string().uuid().describe('UUID of the memory'),
|
|
123
|
+
accessLevel: z.enum(['exploration', 'standard', 'privileged', 'admin']).optional()
|
|
124
|
+
.describe('Caller tier ceiling; over-tier rows return not-found. Omit = unfiltered.'),
|
|
125
|
+
}, async ({ memoryId, accessLevel }) => {
|
|
122
126
|
try {
|
|
123
|
-
const memory = await getMemory(memoryId);
|
|
127
|
+
const memory = await getMemory(memoryId, accessLevel ? { accessLevel: accessLevel } : undefined);
|
|
124
128
|
if (!memory)
|
|
125
129
|
return { content: [{ type: 'text', text: `Memory ${memoryId} not found` }] };
|
|
126
130
|
// TD-817: an explicit expansion is the citation signal. Guarded —
|
|
@@ -170,10 +174,12 @@ export function registerTools(server) {
|
|
|
170
174
|
server.tool('memory_browse', 'Navigate memories by facet. No args = domain counts. +domain = categories. +category = summaries. Zero embedding cost.', {
|
|
171
175
|
domain: z.string().optional(),
|
|
172
176
|
category: categoryEnum.optional(),
|
|
173
|
-
|
|
177
|
+
accessLevel: z.enum(['exploration', 'standard', 'privileged', 'admin']).optional()
|
|
178
|
+
.describe('Caller tier ceiling; over-tier summaries are dropped. Omit = unfiltered.'),
|
|
179
|
+
}, async ({ domain, category, accessLevel }) => {
|
|
174
180
|
try {
|
|
175
181
|
const db = getVectorDB();
|
|
176
|
-
const data = await db.browse({ domain, category });
|
|
182
|
+
const data = await db.browse({ domain, category, ...(accessLevel ? { accessLevel: accessLevel } : {}) });
|
|
177
183
|
if (!domain && !category) {
|
|
178
184
|
// Return domain counts
|
|
179
185
|
const counts = {};
|
|
@@ -336,10 +342,18 @@ export function registerTools(server) {
|
|
|
336
342
|
category: categoryEnum.optional().describe('Override auto-category for corrected memory'),
|
|
337
343
|
tags: z.array(controlledTagEnum).optional().describe('Override auto-tags'),
|
|
338
344
|
confidence: z.number().min(0).max(1).default(0.9),
|
|
339
|
-
|
|
345
|
+
accessLevel: z.enum(['exploration', 'standard', 'privileged', 'admin']).optional()
|
|
346
|
+
.describe('Agent access tier. Gates the read of the memory being corrected: an over-tier target redacts as not-found (TD-883/884 parity). Default: no ceiling.'),
|
|
347
|
+
}, async ({ wrongMemoryId, correctedContent, reason, category, tags, confidence, accessLevel }) => {
|
|
340
348
|
try {
|
|
341
|
-
// 1. Verify the wrong memory exists
|
|
342
|
-
|
|
349
|
+
// 1. Verify the wrong memory exists.
|
|
350
|
+
// TD-887: thread the classification ceiling into the read. memory_correct
|
|
351
|
+
// echoes wrongMemory.summary back to the caller (step 6 below); without a
|
|
352
|
+
// ceiling that is a metadata-disclosure surface the TD-883/884 read-arc
|
|
353
|
+
// never swept. getMemory(accessLevel) redacts an over-tier target as null
|
|
354
|
+
// → falls into the not-found branch → no summary leaks. No accessLevel →
|
|
355
|
+
// fail-safe pass-through (byte-identical to pre-TD-887).
|
|
356
|
+
const wrongMemory = await getMemory(wrongMemoryId, accessLevel ? { accessLevel: accessLevel } : undefined);
|
|
343
357
|
if (!wrongMemory) {
|
|
344
358
|
return { content: [{ type: 'text', text: `Memory ${wrongMemoryId} not found. Cannot correct a non-existent memory.` }] };
|
|
345
359
|
}
|
package/dist/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* memory_correct accessLevel-forwarding contract (TD-887).
|
|
3
|
+
*
|
|
4
|
+
* The fix threads the caller's accessLevel into the getMemory() read of the
|
|
5
|
+
* memory being corrected, so an over-tier target redacts as not-found (getById,
|
|
6
|
+
* TD-883) and its summary is never echoed back. The SECURITY OUTCOME is a
|
|
7
|
+
* composition of two halves, each tested where it lives:
|
|
8
|
+
* 1. getById(over-tier) → null — TD-883 (classification-ceiling.test.ts)
|
|
9
|
+
* 2. memory_correct forwards accessLevel — THIS test
|
|
10
|
+
* So this guard pins (2): the exact wiring the fix adds. It mirrors the CONTRACT
|
|
11
|
+
* half of TD-885's integration test — assert the arg is passed through, via a
|
|
12
|
+
* fake, with no DB. Revert the wiring (getMemory(id) with no opts) and the
|
|
13
|
+
* "accessLevel forwarded" assertion flips to FAIL.
|
|
14
|
+
*
|
|
15
|
+
* Hermetic: EMBEDDING_PROVIDER=none + a fake provider whose getById records the
|
|
16
|
+
* opts it receives and returns null, short-circuiting memory_correct to its
|
|
17
|
+
* not-found branch (no store/archive path, no DB). Uses the setVectorDB seam
|
|
18
|
+
* (TD-885) now re-exported from @traqr/memory.
|
|
19
|
+
*
|
|
20
|
+
* Run: npx tsx packages/memory-mcp/src/tools.test.ts
|
|
21
|
+
*/
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=tools.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.test.d.ts","sourceRoot":"","sources":["../src/tools.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* memory_correct accessLevel-forwarding contract (TD-887).
|
|
3
|
+
*
|
|
4
|
+
* The fix threads the caller's accessLevel into the getMemory() read of the
|
|
5
|
+
* memory being corrected, so an over-tier target redacts as not-found (getById,
|
|
6
|
+
* TD-883) and its summary is never echoed back. The SECURITY OUTCOME is a
|
|
7
|
+
* composition of two halves, each tested where it lives:
|
|
8
|
+
* 1. getById(over-tier) → null — TD-883 (classification-ceiling.test.ts)
|
|
9
|
+
* 2. memory_correct forwards accessLevel — THIS test
|
|
10
|
+
* So this guard pins (2): the exact wiring the fix adds. It mirrors the CONTRACT
|
|
11
|
+
* half of TD-885's integration test — assert the arg is passed through, via a
|
|
12
|
+
* fake, with no DB. Revert the wiring (getMemory(id) with no opts) and the
|
|
13
|
+
* "accessLevel forwarded" assertion flips to FAIL.
|
|
14
|
+
*
|
|
15
|
+
* Hermetic: EMBEDDING_PROVIDER=none + a fake provider whose getById records the
|
|
16
|
+
* opts it receives and returns null, short-circuiting memory_correct to its
|
|
17
|
+
* not-found branch (no store/archive path, no DB). Uses the setVectorDB seam
|
|
18
|
+
* (TD-885) now re-exported from @traqr/memory.
|
|
19
|
+
*
|
|
20
|
+
* Run: npx tsx packages/memory-mcp/src/tools.test.ts
|
|
21
|
+
*/
|
|
22
|
+
process.env.EMBEDDING_PROVIDER = 'none';
|
|
23
|
+
import { registerTools } from './tools.js';
|
|
24
|
+
import { setVectorDB, resetVectorDB } from '@traqr/memory';
|
|
25
|
+
let passed = 0;
|
|
26
|
+
let failed = 0;
|
|
27
|
+
function assert(label, cond) {
|
|
28
|
+
if (cond) {
|
|
29
|
+
console.log(` PASS ${label}`);
|
|
30
|
+
passed++;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
console.log(` FAIL ${label}`);
|
|
34
|
+
failed++;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// Capture the tool handlers registerTools() wires onto the server.
|
|
38
|
+
const handlers = new Map();
|
|
39
|
+
const fakeServer = {
|
|
40
|
+
tool(name, _desc, _schema, handler) {
|
|
41
|
+
handlers.set(name, handler);
|
|
42
|
+
},
|
|
43
|
+
};
|
|
44
|
+
registerTools(fakeServer);
|
|
45
|
+
// Fake provider: record the opts getById receives, then return null so
|
|
46
|
+
// memory_correct short-circuits to "not found" (never touches store/archive/DB).
|
|
47
|
+
let lastGetByIdOpts = 'UNSET';
|
|
48
|
+
const fakeProvider = {
|
|
49
|
+
async getById(_id, opts) {
|
|
50
|
+
lastGetByIdOpts = opts;
|
|
51
|
+
return null;
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
console.log('\n--- memory_correct accessLevel-forwarding contract (TD-887) ---');
|
|
55
|
+
const correct = handlers.get('memory_correct');
|
|
56
|
+
assert('memory_correct tool is registered', typeof correct === 'function');
|
|
57
|
+
if (correct) {
|
|
58
|
+
// Case 1: caller passes accessLevel → it must reach getById verbatim.
|
|
59
|
+
setVectorDB(fakeProvider);
|
|
60
|
+
lastGetByIdOpts = 'UNSET';
|
|
61
|
+
const res1 = await correct({
|
|
62
|
+
wrongMemoryId: 'r1',
|
|
63
|
+
correctedContent: 'x',
|
|
64
|
+
reason: 'y',
|
|
65
|
+
confidence: 0.9,
|
|
66
|
+
accessLevel: 'exploration',
|
|
67
|
+
});
|
|
68
|
+
resetVectorDB();
|
|
69
|
+
const opts1 = lastGetByIdOpts;
|
|
70
|
+
assert('accessLevel forwarded to getById (the wiring this PR adds)', opts1?.accessLevel === 'exploration');
|
|
71
|
+
assert('over-tier target → not-found (read redacted before any mutation)', res1.content[0].text.includes('not found'));
|
|
72
|
+
// Case 2: no accessLevel → fail-safe pass-through (getById gets undefined = no ceiling).
|
|
73
|
+
setVectorDB(fakeProvider);
|
|
74
|
+
lastGetByIdOpts = 'UNSET';
|
|
75
|
+
await correct({ wrongMemoryId: 'r1', correctedContent: 'x', reason: 'y', confidence: 0.9 });
|
|
76
|
+
resetVectorDB();
|
|
77
|
+
assert('no accessLevel → getById receives undefined (byte-identical fail-safe)', lastGetByIdOpts === undefined);
|
|
78
|
+
}
|
|
79
|
+
console.log(`\n${'='.repeat(50)}`);
|
|
80
|
+
console.log(`Results: ${passed} passed, ${failed} failed`);
|
|
81
|
+
if (failed > 0) {
|
|
82
|
+
console.log('MEMORY_CORRECT FORWARDING CONTRACT FAILED');
|
|
83
|
+
process.exit(1);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
console.log('All memory_correct forwarding-contract tests passed!');
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=tools.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.test.js","sourceRoot":"","sources":["../src/tools.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "traqr-memory-mcp",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.15",
|
|
4
4
|
"description": "Memory-as-a-service MCP server for AI agents. 11 tools, Postgres + pgvector, multi-strategy retrieval. Works with Claude Code, Cursor, Codex, and any MCP client.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
],
|
|
24
24
|
"scripts": {
|
|
25
25
|
"build": "tsc",
|
|
26
|
+
"test": "tsx src/tools.test.ts",
|
|
26
27
|
"start": "node dist/index.js"
|
|
27
28
|
},
|
|
28
29
|
"dependencies": {
|