memento-mcp-server 1.7.5 → 1.8.0

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.
@@ -5,6 +5,9 @@ import { z } from 'zod';
5
5
  import { BaseTool } from './base-tool.js';
6
6
  import { CommonSchemas } from './types.js';
7
7
  import { DatabaseUtils } from '../utils/database.js';
8
+ import { MemoryNeighborService } from '../services/memory-neighbor-service.js';
9
+ import { getVectorSearchEngine } from '../algorithms/vector-search-engine.js';
10
+ import { MemoryEmbeddingService } from '../services/memory-embedding-service.js';
8
11
  const RememberSchema = z.object({
9
12
  content: CommonSchemas.Content,
10
13
  type: CommonSchemas.MemoryType.default('episodic'),
@@ -63,20 +66,94 @@ export class RememberTool extends BaseTool {
63
66
  `, [id, type, content, importance, privacy_scope,
64
67
  tags ? JSON.stringify(tags) : null, source]);
65
68
  });
66
- // 메모리 저장 완료 후 임베딩 생성 (비동기, 실패해도 메모리 저장은 성공)
67
- if (context.services.embeddingService?.isAvailable()) {
68
- // 약간의 지연을 두어 트랜잭션이 완전히 커밋되도록 함
69
- setTimeout(() => {
70
- context.services.embeddingService.createAndStoreEmbedding(context.db, id, content, type)
71
- .then((result) => {
72
- if (result) {
73
- // 임베딩 생성 완료
69
+ // 메모리 저장 완료 후 임베딩 생성 및 인접 기억 갱신 (비동기, 실패해도 메모리 저장은 성공)
70
+ // 데이터베이스 참조를 미리 저장하여 비동기 콜백에서 안전하게 사용
71
+ const dbRef = context.db;
72
+ const embeddingServiceRef = context.services.embeddingService;
73
+ if (embeddingServiceRef?.isAvailable() && dbRef) {
74
+ // 비동기 작업을 별도로 실행 (fire-and-forget 패턴)
75
+ // 메모리 저장 응답은 즉시 반환하고, 임베딩/인접 기억 갱신은 백그라운드에서 처리
76
+ (async () => {
77
+ try {
78
+ // 트랜잭션이 완전히 커밋되도록 짧은 지연
79
+ await new Promise(resolve => setTimeout(resolve, 100));
80
+ // 데이터베이스 연결이 여전히 유효한지 확인 (간단한 쿼리로 테스트)
81
+ // DatabaseUtils.get은 동기 함수이지만, 비동기 컨텍스트에서 안전하게 실행하기 위해 Promise로 감싸서 await
82
+ try {
83
+ await new Promise((resolve, reject) => {
84
+ try {
85
+ DatabaseUtils.get(dbRef, 'SELECT 1');
86
+ resolve();
87
+ }
88
+ catch (error) {
89
+ reject(error);
90
+ }
91
+ });
74
92
  }
75
- })
76
- .catch((error) => {
77
- console.warn(`⚠️ 임베딩 생성 실패 (${id}):`, error.message);
93
+ catch (dbError) {
94
+ this.logWarning('데이터베이스 연결이 유효하지 않아 임베딩 생성을 건너뜁니다', {
95
+ memory_id: id,
96
+ error: dbError instanceof Error ? dbError.message : String(dbError)
97
+ });
98
+ return;
99
+ }
100
+ // 임베딩 생성
101
+ const embeddingResult = await embeddingServiceRef.createAndStoreEmbedding(dbRef, id, content, type);
102
+ if (embeddingResult) {
103
+ // PRD 3.1-3.3: 인접 기억 갱신
104
+ try {
105
+ // 데이터베이스 연결 재확인
106
+ // DatabaseUtils.get은 동기 함수이지만, 비동기 컨텍스트에서 안전하게 실행하기 위해 Promise로 감싸서 await
107
+ try {
108
+ await new Promise((resolve, reject) => {
109
+ try {
110
+ DatabaseUtils.get(dbRef, 'SELECT 1');
111
+ resolve();
112
+ }
113
+ catch (error) {
114
+ reject(error);
115
+ }
116
+ });
117
+ }
118
+ catch (dbError) {
119
+ this.logWarning('데이터베이스 연결이 유효하지 않아 인접 기억 갱신을 건너뜁니다', {
120
+ memory_id: id,
121
+ error: dbError instanceof Error ? dbError.message : String(dbError)
122
+ });
123
+ return;
124
+ }
125
+ const vectorSearchEngine = getVectorSearchEngine();
126
+ const neighborService = new MemoryNeighborService(vectorSearchEngine, embeddingServiceRef);
127
+ neighborService.setDatabase(dbRef);
128
+ // 인접 기억 갱신 (기본 유사도 임계값: 0.8)
129
+ const neighborIds = await neighborService.updateNeighborsForNewMemory(id, 0.8);
130
+ if (neighborIds.length > 0) {
131
+ this.logInfo('인접 기억 갱신 완료', {
132
+ memory_id: id,
133
+ neighbor_count: neighborIds.length
134
+ });
135
+ }
136
+ }
137
+ catch (error) {
138
+ // 인접 기억 갱신 실패해도 메모리 저장은 성공했으므로 경고만 출력
139
+ this.logWarning(`인접 기억 갱신 실패 (${id})`, {
140
+ error: error instanceof Error ? error.message : String(error)
141
+ });
142
+ }
143
+ }
144
+ }
145
+ catch (error) {
146
+ // 임베딩 생성 실패해도 메모리 저장은 성공했으므로 경고만 출력
147
+ this.logWarning(`임베딩 생성 실패 (${id})`, {
148
+ error: error instanceof Error ? error.message : String(error)
149
+ });
150
+ }
151
+ })().catch((error) => {
152
+ // 예상치 못한 에러 처리
153
+ this.logWarning(`백그라운드 작업 실패 (${id})`, {
154
+ error: error instanceof Error ? error.message : String(error)
78
155
  });
79
- }, 100); // 100ms 지연
156
+ });
80
157
  }
81
158
  return this.createSuccessResult({
82
159
  memory_id: id,
@@ -1 +1 @@
1
- {"version":3,"file":"remember-tool.js","sourceRoot":"","sources":["../../src/tools/remember-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remember-tool.js","sourceRoot":"","sources":["../../src/tools/remember-tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,OAAO,EAAE,aAAa,CAAC,OAAO;IAC9B,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC;IAClD,IAAI,EAAE,aAAa,CAAC,IAAI;IACxB,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC;IACjD,MAAM,EAAE,aAAa,CAAC,MAAM;IAC5B,aAAa,EAAE,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC;CAC7D,CAAC,CAAC;AAEH,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACxC;QACE,KAAK,CACH,UAAU,EACV,eAAe,EACf;YACE,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE;gBAClD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC;oBACvD,WAAW,EAAE,OAAO;oBACpB,OAAO,EAAE,UAAU;iBACpB;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EAAE,OAAO;iBACrB;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE,CAAC;oBACV,WAAW,EAAE,WAAW;oBACxB,OAAO,EAAE,GAAG;iBACb;gBACD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE;gBAC7C,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC;oBACnC,WAAW,EAAE,UAAU;oBACvB,OAAO,EAAE,SAAS;iBACnB;aACF;YACD,QAAQ,EAAE,CAAC,SAAS,CAAC;SACtB,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAW,EAAE,OAAoB;QAC5C,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEhG,eAAe;QACf,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAE/B,0BAA0B;QAC1B,MAAM,EAAE,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAE1E,IAAI,CAAC;YACH,mBAAmB;YACnB,MAAM,aAAa,CAAC,cAAc,CAAC,OAAO,CAAC,EAAG,EAAE,KAAK,IAAI,EAAE;gBACzD,MAAM,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAG,EAAE;;;SAGpC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa;oBAC5C,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;YACnD,CAAC,CAAC,CAAC;YAEH,uDAAuD;YACvD,sCAAsC;YACtC,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC;YACzB,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YAE9D,IAAI,mBAAmB,EAAE,WAAW,EAAE,IAAI,KAAK,EAAE,CAAC;gBAChD,sCAAsC;gBACtC,+CAA+C;gBAC/C,CAAC,KAAK,IAAI,EAAE;oBACV,IAAI,CAAC;wBACH,wBAAwB;wBACxB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;wBAEvD,uCAAuC;wBACvC,0EAA0E;wBAC1E,IAAI,CAAC;4BACH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gCAC1C,IAAI,CAAC;oCACH,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;oCACrC,OAAO,EAAE,CAAC;gCACZ,CAAC;gCAAC,OAAO,KAAK,EAAE,CAAC;oCACf,MAAM,CAAC,KAAK,CAAC,CAAC;gCAChB,CAAC;4BACH,CAAC,CAAC,CAAC;wBACL,CAAC;wBAAC,OAAO,OAAO,EAAE,CAAC;4BACjB,IAAI,CAAC,UAAU,CAAC,kCAAkC,EAAE;gCAClD,SAAS,EAAE,EAAE;gCACb,KAAK,EAAE,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;6BACpE,CAAC,CAAC;4BACH,OAAO;wBACT,CAAC;wBAED,SAAS;wBACT,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,uBAAuB,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;wBAEpG,IAAI,eAAe,EAAE,CAAC;4BACpB,wBAAwB;4BACxB,IAAI,CAAC;gCACH,gBAAgB;gCAChB,0EAA0E;gCAC1E,IAAI,CAAC;oCACH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;wCAC1C,IAAI,CAAC;4CACH,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;4CACrC,OAAO,EAAE,CAAC;wCACZ,CAAC;wCAAC,OAAO,KAAK,EAAE,CAAC;4CACf,MAAM,CAAC,KAAK,CAAC,CAAC;wCAChB,CAAC;oCACH,CAAC,CAAC,CAAC;gCACL,CAAC;gCAAC,OAAO,OAAO,EAAE,CAAC;oCACjB,IAAI,CAAC,UAAU,CAAC,oCAAoC,EAAE;wCACpD,SAAS,EAAE,EAAE;wCACb,KAAK,EAAE,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;qCACpE,CAAC,CAAC;oCACH,OAAO;gCACT,CAAC;gCAED,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;gCACnD,MAAM,eAAe,GAAG,IAAI,qBAAqB,CAC/C,kBAAkB,EAClB,mBAAmB,CACpB,CAAC;gCAEF,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gCAEnC,6BAA6B;gCAC7B,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,2BAA2B,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gCAE/E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oCAC3B,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;wCAC1B,SAAS,EAAE,EAAE;wCACb,cAAc,EAAE,WAAW,CAAC,MAAM;qCACnC,CAAC,CAAC;gCACL,CAAC;4BACH,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCACf,sCAAsC;gCACtC,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,GAAG,EAAE;oCACrC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iCAC9D,CAAC,CAAC;4BACL,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,oCAAoC;wBACpC,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,GAAG,EAAE;4BACnC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;yBAC9D,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACnB,eAAe;oBACf,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,GAAG,EAAE;wBACrC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBAC9D,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,IAAI,CAAC,mBAAmB,CAAC;gBAC9B,SAAS,EAAE,EAAE;gBACb,OAAO,EAAE,gBAAgB,EAAE,EAAE;gBAC7B,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,KAAK;aAC7E,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,+BAA+B;YAC/B,IAAK,KAAa,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBAC1C,IAAI,CAAC;oBACH,MAAM,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAChD,CAAC;gBAAC,OAAO,eAAe,EAAE,CAAC;oBACzB,eAAe;gBACjB,CAAC;YACH,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "memento-mcp-server",
3
- "version": "1.7.5",
3
+ "version": "1.8.0",
4
4
  "description": "AI Agent 기억 보조 MCP 서버 - 사람의 기억 구조를 모사한 스토리지+검색+요약+망각 메커니즘",
5
5
  "main": "dist/server/index.js",
6
6
  "type": "module",