@datafrog-io/n2n-memory 1.2.0 → 1.2.1
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/CHANGELOG.md
CHANGED
|
@@ -6,22 +6,26 @@
|
|
|
6
6
|
|
|
7
7
|
All notable changes to this project will be documented in this file.
|
|
8
8
|
|
|
9
|
-
## [1.2.
|
|
9
|
+
## [1.2.1] - 2026-01-12
|
|
10
10
|
|
|
11
11
|
### Added
|
|
12
|
+
- **Structured JSON Tool Responses**:
|
|
13
|
+
- Upgraded all tool responses from plain text to structured JSON.
|
|
14
|
+
- Added `status`, `message`, and `_protocol` metadata fields for better machine readability.
|
|
15
|
+
- **Dynamic N2N-SYNC Protocol Reminders**:
|
|
16
|
+
- Implemented automatic injection of `[N2N-SYNC]` protocol reminders into `nextSteps`.
|
|
17
|
+
- Embedded protocol hints in tool metadata to guide AI assistants toward better synchronization habits.
|
|
12
18
|
- **Similarity-Based Observation Deduplication**:
|
|
13
19
|
- New `similarity.ts` utility module with Jaccard similarity, Levenshtein distance, and containment detection algorithms.
|
|
14
20
|
- `addEntities()` and `addObservations()` now use intelligent deduplication instead of exact-match `Set` deduplication.
|
|
15
21
|
- Automatically keeps the longer (more detailed) observation when duplicates are detected.
|
|
16
22
|
- Prevents redundant entries like "version 2.4.1" and "version 2.4.1 is the current release" from coexisting.
|
|
17
|
-
|
|
18
23
|
- **Fuzzy Search with Relevance Ranking**:
|
|
19
24
|
- `n2n_search` tool now supports fuzzy matching by default.
|
|
20
25
|
- New optional parameters: `fuzzy` (boolean) and `minScore` (0-1 threshold).
|
|
21
26
|
- Search results are ranked by relevance score (highest first).
|
|
22
27
|
- Handles typos via Levenshtein similarity.
|
|
23
28
|
- Supports word-level partial matching and semantic similarity via Jaccard index.
|
|
24
|
-
|
|
25
29
|
- **New Unit Tests**:
|
|
26
30
|
- Comprehensive test suite for all similarity functions (`similarity.test.ts`).
|
|
27
31
|
- 99 tests passing.
|
|
@@ -169,11 +169,33 @@ export class MemoryService {
|
|
|
169
169
|
});
|
|
170
170
|
}
|
|
171
171
|
// --- Combined Operations ---
|
|
172
|
+
/**
|
|
173
|
+
* Protocol reminder prefix for nextSteps.
|
|
174
|
+
* Used to inject and identify protocol reminders in context.
|
|
175
|
+
*/
|
|
176
|
+
static PROTOCOL_PREFIX = "[N2N-SYNC]";
|
|
177
|
+
static PROTOCOL_REMINDER = `${MemoryService.PROTOCOL_PREFIX} Before 'git commit': call n2n_update_context to sync your progress.`;
|
|
178
|
+
/**
|
|
179
|
+
* Injects protocol reminder into nextSteps if not already present.
|
|
180
|
+
* Preserves user-defined nextSteps while ensuring protocol visibility.
|
|
181
|
+
*/
|
|
182
|
+
injectProtocolReminder(context) {
|
|
183
|
+
const hasProtocolReminder = context.nextSteps.some(step => step.startsWith(MemoryService.PROTOCOL_PREFIX));
|
|
184
|
+
if (!hasProtocolReminder) {
|
|
185
|
+
return {
|
|
186
|
+
...context,
|
|
187
|
+
nextSteps: [MemoryService.PROTOCOL_REMINDER, ...context.nextSteps]
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
return context;
|
|
191
|
+
}
|
|
172
192
|
async getCompleteState(projectPath, options = {}) {
|
|
173
|
-
const [graph,
|
|
193
|
+
const [graph, rawContext] = await Promise.all([
|
|
174
194
|
this.getGraph(projectPath),
|
|
175
195
|
this.getContext(projectPath)
|
|
176
196
|
]);
|
|
197
|
+
// Inject protocol reminder into context.nextSteps
|
|
198
|
+
const context = this.injectProtocolReminder(rawContext);
|
|
177
199
|
const totalEntityCount = graph.entities.length;
|
|
178
200
|
const offset = options.offset || 0;
|
|
179
201
|
const limit = options.limit || totalEntityCount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-service.js","sourceRoot":"","sources":["../../src/core/memory-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"memory-service.js","sourceRoot":"","sources":["../../src/core/memory-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,27 @@ import { MemoryService } from "../core/memory-service.js";
|
|
|
5
5
|
import { MemoryManager } from "../core/memory-manager.js";
|
|
6
6
|
import { findProjectRoot } from "../utils/path-utils.js";
|
|
7
7
|
import { z } from "zod";
|
|
8
|
+
/**
|
|
9
|
+
* N2N-SYNC Protocol reminders embedded in tool responses.
|
|
10
|
+
* These are visible to ALL AI assistants regardless of client.
|
|
11
|
+
*/
|
|
12
|
+
const PROTOCOL = {
|
|
13
|
+
AFTER_READ: {
|
|
14
|
+
action: "MEMORY_LOADED",
|
|
15
|
+
reminder: "Before 'git commit': call n2n_update_context to sync your progress.",
|
|
16
|
+
policy: "Update memory when you learn new facts about this project."
|
|
17
|
+
},
|
|
18
|
+
AFTER_WRITE: {
|
|
19
|
+
action: "MEMORY_UPDATED",
|
|
20
|
+
reminder: "Remember to call n2n_update_context before 'git commit'.",
|
|
21
|
+
tip: "Use n2n_read_graph at session start to restore context."
|
|
22
|
+
},
|
|
23
|
+
AFTER_CONTEXT_UPDATE: {
|
|
24
|
+
action: "CONTEXT_SYNCED",
|
|
25
|
+
reminder: "Context saved. You may now proceed with 'git commit'.",
|
|
26
|
+
tip: "Call n2n_read_graph in your next session to restore this context."
|
|
27
|
+
}
|
|
28
|
+
};
|
|
8
29
|
/**
|
|
9
30
|
* Handlers object containing the core logic for each tool/resource.
|
|
10
31
|
*/
|
|
@@ -57,7 +78,12 @@ export const Handlers = {
|
|
|
57
78
|
if (typeof root !== 'string')
|
|
58
79
|
return root;
|
|
59
80
|
await MemoryService.getInstance().addEntities(root, parsed.entities);
|
|
60
|
-
|
|
81
|
+
const response = {
|
|
82
|
+
status: "success",
|
|
83
|
+
message: `Added ${parsed.entities.length} entities to root: ${root}`,
|
|
84
|
+
_protocol: PROTOCOL.AFTER_WRITE
|
|
85
|
+
};
|
|
86
|
+
return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] };
|
|
61
87
|
},
|
|
62
88
|
async addObservations(args) {
|
|
63
89
|
const parsed = Schemas.AddObservationsSchema.parse(args);
|
|
@@ -65,7 +91,12 @@ export const Handlers = {
|
|
|
65
91
|
if (typeof root !== 'string')
|
|
66
92
|
return root;
|
|
67
93
|
const addedCount = await MemoryService.getInstance().addObservations(root, parsed.observations);
|
|
68
|
-
|
|
94
|
+
const response = {
|
|
95
|
+
status: "success",
|
|
96
|
+
message: `Added ${addedCount} observation fragments to root: ${root}`,
|
|
97
|
+
_protocol: PROTOCOL.AFTER_WRITE
|
|
98
|
+
};
|
|
99
|
+
return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] };
|
|
69
100
|
},
|
|
70
101
|
async createRelations(args) {
|
|
71
102
|
const parsed = Schemas.CreateRelationsSchema.parse(args);
|
|
@@ -73,7 +104,12 @@ export const Handlers = {
|
|
|
73
104
|
if (typeof root !== 'string')
|
|
74
105
|
return root;
|
|
75
106
|
await MemoryService.getInstance().createRelations(root, parsed.relations);
|
|
76
|
-
|
|
107
|
+
const response = {
|
|
108
|
+
status: "success",
|
|
109
|
+
message: `Created ${parsed.relations.length} relations in root: ${root}`,
|
|
110
|
+
_protocol: PROTOCOL.AFTER_WRITE
|
|
111
|
+
};
|
|
112
|
+
return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] };
|
|
77
113
|
},
|
|
78
114
|
async readGraph(args) {
|
|
79
115
|
const parsed = Schemas.ReadGraphSchema.parse(args);
|
|
@@ -85,7 +121,12 @@ export const Handlers = {
|
|
|
85
121
|
limit: parsed.limit,
|
|
86
122
|
offset: parsed.offset
|
|
87
123
|
});
|
|
88
|
-
|
|
124
|
+
// Embed protocol reminder in response (visible to all AI assistants)
|
|
125
|
+
const response = {
|
|
126
|
+
...state,
|
|
127
|
+
_protocol: PROTOCOL.AFTER_READ
|
|
128
|
+
};
|
|
129
|
+
return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] };
|
|
89
130
|
},
|
|
90
131
|
async getGraphSummary(args) {
|
|
91
132
|
const parsed = Schemas.GetGraphSummarySchema.parse(args);
|
|
@@ -105,7 +146,12 @@ export const Handlers = {
|
|
|
105
146
|
return root;
|
|
106
147
|
const { projectPath: _, confirmNewProjectRoot: __, ...updates } = parsed;
|
|
107
148
|
await MemoryService.getInstance().updateContext(root, updates);
|
|
108
|
-
|
|
149
|
+
const response = {
|
|
150
|
+
status: "success",
|
|
151
|
+
message: `Project context (hot-state) updated for root: ${root}`,
|
|
152
|
+
_protocol: PROTOCOL.AFTER_CONTEXT_UPDATE
|
|
153
|
+
};
|
|
154
|
+
return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] };
|
|
109
155
|
},
|
|
110
156
|
async search(args) {
|
|
111
157
|
const parsed = Schemas.SearchSchema.parse(args);
|
|
@@ -126,7 +172,12 @@ export const Handlers = {
|
|
|
126
172
|
if (typeof root !== 'string')
|
|
127
173
|
return root;
|
|
128
174
|
const deletedCount = await MemoryService.getInstance().deleteEntities(root, parsed.entityNames);
|
|
129
|
-
|
|
175
|
+
const response = {
|
|
176
|
+
status: "success",
|
|
177
|
+
message: `Deleted ${deletedCount} entities from root: ${root}`,
|
|
178
|
+
_protocol: PROTOCOL.AFTER_WRITE
|
|
179
|
+
};
|
|
180
|
+
return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] };
|
|
130
181
|
},
|
|
131
182
|
async deleteObservations(args) {
|
|
132
183
|
const parsed = Schemas.DeleteObservationsSchema.parse(args);
|
|
@@ -134,7 +185,12 @@ export const Handlers = {
|
|
|
134
185
|
if (typeof root !== 'string')
|
|
135
186
|
return root;
|
|
136
187
|
const deletedCount = await MemoryService.getInstance().deleteObservations(root, parsed.deletions);
|
|
137
|
-
|
|
188
|
+
const response = {
|
|
189
|
+
status: "success",
|
|
190
|
+
message: `Deleted ${deletedCount} observations from root: ${root}`,
|
|
191
|
+
_protocol: PROTOCOL.AFTER_WRITE
|
|
192
|
+
};
|
|
193
|
+
return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] };
|
|
138
194
|
},
|
|
139
195
|
async deleteRelations(args) {
|
|
140
196
|
const parsed = Schemas.DeleteRelationsSchema.parse(args);
|
|
@@ -142,7 +198,12 @@ export const Handlers = {
|
|
|
142
198
|
if (typeof root !== 'string')
|
|
143
199
|
return root;
|
|
144
200
|
const deletedCount = await MemoryService.getInstance().deleteRelations(root, parsed.relations);
|
|
145
|
-
|
|
201
|
+
const response = {
|
|
202
|
+
status: "success",
|
|
203
|
+
message: `Deleted ${deletedCount} relations from root: ${root}`,
|
|
204
|
+
_protocol: PROTOCOL.AFTER_WRITE
|
|
205
|
+
};
|
|
206
|
+
return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] };
|
|
146
207
|
},
|
|
147
208
|
async openNodes(args) {
|
|
148
209
|
const parsed = Schemas.OpenNodesSchema.parse(args);
|
|
@@ -158,7 +219,11 @@ export const Handlers = {
|
|
|
158
219
|
if (typeof root !== 'string')
|
|
159
220
|
return root;
|
|
160
221
|
const filePath = await MemoryManager.exportToMarkdown(root, parsed.outputPath);
|
|
161
|
-
|
|
222
|
+
const response = {
|
|
223
|
+
status: "success",
|
|
224
|
+
message: `Exported knowledge graph to ${filePath}`,
|
|
225
|
+
};
|
|
226
|
+
return { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] };
|
|
162
227
|
},
|
|
163
228
|
async readResource(uriString) {
|
|
164
229
|
const uri = new URL(uriString);
|
|
@@ -167,7 +232,7 @@ export const Handlers = {
|
|
|
167
232
|
}
|
|
168
233
|
const projectPath = uri.searchParams.get("path");
|
|
169
234
|
if (!projectPath) {
|
|
170
|
-
throw new McpError(ErrorCode.InvalidParams, "
|
|
235
|
+
throw new McpError(ErrorCode.InvalidParams, "Project path query parameter 'path' is required. Use mcp://memory/graph?path=/your/project/path");
|
|
171
236
|
}
|
|
172
237
|
// Resources are tricky since they don't take extra arguments.
|
|
173
238
|
// We assume resource reading is for established projects.
|
|
@@ -207,7 +272,11 @@ export const Handlers = {
|
|
|
207
272
|
return {
|
|
208
273
|
content: [{
|
|
209
274
|
type: "text",
|
|
210
|
-
text:
|
|
275
|
+
text: JSON.stringify({
|
|
276
|
+
status: "error",
|
|
277
|
+
type: "validation_error",
|
|
278
|
+
message: `Validation Error: ${error.issues.map(i => `${i.path.join('.')}: ${i.message}`).join(', ')}`
|
|
279
|
+
}, null, 2)
|
|
211
280
|
}],
|
|
212
281
|
isError: true,
|
|
213
282
|
};
|
|
@@ -215,12 +284,26 @@ export const Handlers = {
|
|
|
215
284
|
const message = error instanceof Error ? error.message : String(error);
|
|
216
285
|
if (message.startsWith("Directory Not Recognized as a Project")) {
|
|
217
286
|
return {
|
|
218
|
-
content: [{
|
|
287
|
+
content: [{
|
|
288
|
+
type: "text",
|
|
289
|
+
text: JSON.stringify({
|
|
290
|
+
status: "error",
|
|
291
|
+
type: "project_recognition_error",
|
|
292
|
+
message: `Project Requirement Error: ${message}`
|
|
293
|
+
}, null, 2)
|
|
294
|
+
}],
|
|
219
295
|
isError: true,
|
|
220
296
|
};
|
|
221
297
|
}
|
|
222
298
|
return {
|
|
223
|
-
content: [{
|
|
299
|
+
content: [{
|
|
300
|
+
type: "text",
|
|
301
|
+
text: JSON.stringify({
|
|
302
|
+
status: "error",
|
|
303
|
+
type: "execution_error",
|
|
304
|
+
message: `Execution Error: ${message}`
|
|
305
|
+
}, null, 2)
|
|
306
|
+
}],
|
|
224
307
|
isError: true,
|
|
225
308
|
};
|
|
226
309
|
}
|
|
@@ -229,9 +312,15 @@ export const Handlers = {
|
|
|
229
312
|
return {
|
|
230
313
|
resources: [{
|
|
231
314
|
uri: "mcp://memory/graph",
|
|
232
|
-
name: "Project Knowledge Graph & Context",
|
|
233
|
-
description: "The complete knowledge graph and active project context.",
|
|
315
|
+
name: "Project Knowledge Graph & Context (Legacy Support)",
|
|
316
|
+
description: "The complete knowledge graph and active project context (Requires path parameter).",
|
|
234
317
|
mimeType: "application/json",
|
|
318
|
+
}],
|
|
319
|
+
resourceTemplates: [{
|
|
320
|
+
uriTemplate: "mcp://memory/graph?path={path}",
|
|
321
|
+
name: "Project Knowledge Graph & Context",
|
|
322
|
+
description: "Get the complete graph and active context for a specific project path.",
|
|
323
|
+
mimeType: "application/json"
|
|
235
324
|
}]
|
|
236
325
|
};
|
|
237
326
|
},
|
|
@@ -243,12 +332,42 @@ export const Handlers = {
|
|
|
243
332
|
* Registers all tools and resources to the provided McpServer instance.
|
|
244
333
|
*/
|
|
245
334
|
export function registerAll(server) {
|
|
246
|
-
server.tool("n2n_add_entities", Schemas.AddEntitiesSchema.shape, (args) =>
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
335
|
+
server.tool("n2n_add_entities", Schemas.AddEntitiesSchema.shape, async (args) => {
|
|
336
|
+
await server.server.sendLoggingMessage({
|
|
337
|
+
level: "info",
|
|
338
|
+
data: `Processing n2n_add_entities for path: ${args.projectPath}`,
|
|
339
|
+
});
|
|
340
|
+
return await Handlers.addEntities(args);
|
|
341
|
+
});
|
|
342
|
+
server.tool("n2n_add_observations", Schemas.AddObservationsSchema.shape, async (args) => {
|
|
343
|
+
await server.server.sendLoggingMessage({
|
|
344
|
+
level: "info",
|
|
345
|
+
data: `Processing n2n_add_observations for path: ${args.projectPath}`,
|
|
346
|
+
});
|
|
347
|
+
return await Handlers.addObservations(args);
|
|
348
|
+
});
|
|
349
|
+
server.tool("n2n_create_relations", Schemas.CreateRelationsSchema.shape, async (args) => {
|
|
350
|
+
await server.server.sendLoggingMessage({
|
|
351
|
+
level: "info",
|
|
352
|
+
data: `Processing n2n_create_relations for path: ${args.projectPath}`,
|
|
353
|
+
});
|
|
354
|
+
return await Handlers.createRelations(args);
|
|
355
|
+
});
|
|
356
|
+
server.tool("n2n_read_graph", Schemas.ReadGraphSchema.shape, async (args) => {
|
|
357
|
+
await server.server.sendLoggingMessage({
|
|
358
|
+
level: "info",
|
|
359
|
+
data: `Reading graph for path: ${args.projectPath}`,
|
|
360
|
+
});
|
|
361
|
+
return await Handlers.readGraph(args);
|
|
362
|
+
});
|
|
250
363
|
server.tool("n2n_get_graph_summary", Schemas.GetGraphSummarySchema.shape, (args) => Handlers.getGraphSummary(args));
|
|
251
|
-
server.tool("n2n_update_context", Schemas.UpdateContextSchema.shape, (args) =>
|
|
364
|
+
server.tool("n2n_update_context", Schemas.UpdateContextSchema.shape, async (args) => {
|
|
365
|
+
await server.server.sendLoggingMessage({
|
|
366
|
+
level: "info",
|
|
367
|
+
data: `Updating context for path: ${args.projectPath}`,
|
|
368
|
+
});
|
|
369
|
+
return await Handlers.updateContext(args);
|
|
370
|
+
});
|
|
252
371
|
server.tool("n2n_search", Schemas.SearchSchema.shape, (args) => Handlers.search(args));
|
|
253
372
|
server.tool("n2n_delete_entities", Schemas.DeleteEntitiesSchema.shape, (args) => Handlers.deleteEntities(args));
|
|
254
373
|
server.tool("n2n_delete_observations", Schemas.DeleteObservationsSchema.shape, (args) => Handlers.deleteObservations(args));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-handlers.js","sourceRoot":"","sources":["../../src/handlers/mcp-handlers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-handlers.js","sourceRoot":"","sources":["../../src/handlers/mcp-handlers.ts"],"names":[],"mappings":"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"}
|