@slorenzot/memento-mcp-server 0.2.1 → 0.3.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.
package/README.md CHANGED
@@ -33,11 +33,14 @@ const server = new MCPServer('./data/memento.db');
33
33
 
34
34
  ### Shell/Bun
35
35
  ```bash
36
- # Ejecutar servidor MCP (usualmente llamado por clientes MCP)
37
- npm run --package @slorenzot/memento-mcp-server start
36
+ # Ejecutar servidor MCP (recomendado)
37
+ npx -p @slorenzot/memento-mcp-server
38
38
 
39
- # O usando npx
40
- npx -p @slorenzot/memento-mcp-server node mcp.js
39
+ # O usando bunx (si está instalado globalmente)
40
+ bunx @slorenzot/memento-mcp-server
41
+
42
+ # Usar con variable de entorno para base de datos personalizada
43
+ MEMENTO_DB_PATH=/custom/path/database.db npx -p @slorenzot/memento-mcp-server
41
44
  ```
42
45
 
43
46
  ## 🔧 API Esencial
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js ADDED
@@ -0,0 +1,316 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
5
+ const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
6
+ const zod_1 = require("zod");
7
+ let observations = [];
8
+ let sessions = [];
9
+ let nextObsId = 1;
10
+ let nextSessionId = 1;
11
+ let activeSession = null;
12
+ function generateUUID() {
13
+ return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
14
+ const r = (Math.random() * 16) | 0;
15
+ const v = c === "x" ? r : (r & 0x3) | 0x8;
16
+ return v.toString(16);
17
+ });
18
+ }
19
+ // ============================================
20
+ // MCP SERVER
21
+ // ============================================
22
+ const server = new mcp_js_1.McpServer({
23
+ name: "memento-mcp-server",
24
+ version: "0.3.0",
25
+ });
26
+ // ============================================
27
+ // TOOLS
28
+ // ============================================
29
+ server.tool("mem_save", "Save an observation to memory. Types: decision, bug, discovery, note.", {
30
+ title: zod_1.z.string().describe("Title of the observation"),
31
+ content: zod_1.z.string().describe("Content of the observation"),
32
+ type: zod_1.z
33
+ .enum(["decision", "bug", "discovery", "note"])
34
+ .optional()
35
+ .describe("Type of observation (default: note)"),
36
+ topic_key: zod_1.z.string().optional().describe("Topic key for grouping"),
37
+ project_id: zod_1.z.string().optional().describe("Project identifier"),
38
+ metadata: zod_1.z.record(zod_1.z.unknown()).optional().describe("Additional metadata"),
39
+ }, async ({ title, content, type, topic_key, project_id, metadata }) => {
40
+ const sessionId = activeSession
41
+ ? activeSession.id
42
+ : (() => {
43
+ const s = {
44
+ id: nextSessionId++,
45
+ uuid: generateUUID(),
46
+ projectId: project_id || "default",
47
+ startedAt: new Date().toISOString(),
48
+ endedAt: null,
49
+ metadata: {},
50
+ };
51
+ sessions.push(s);
52
+ activeSession = s;
53
+ return s.id;
54
+ })();
55
+ const obs = {
56
+ id: nextObsId++,
57
+ uuid: generateUUID(),
58
+ sessionId,
59
+ title,
60
+ content,
61
+ type: type || "note",
62
+ topicKey: topic_key || null,
63
+ projectId: project_id || "default",
64
+ createdAt: new Date().toISOString(),
65
+ metadata: metadata || {},
66
+ };
67
+ observations.push(obs);
68
+ return {
69
+ content: [
70
+ {
71
+ type: "text",
72
+ text: JSON.stringify({ id: obs.id, uuid: obs.uuid, success: true }, null, 2),
73
+ },
74
+ ],
75
+ };
76
+ });
77
+ server.tool("mem_search", "Search observations using text matching.", {
78
+ query: zod_1.z.string().optional().describe("Search query"),
79
+ type: zod_1.z.enum(["decision", "bug", "discovery", "note"]).optional(),
80
+ project_id: zod_1.z.string().optional(),
81
+ topic_key: zod_1.z.string().optional(),
82
+ limit: zod_1.z.number().optional(),
83
+ offset: zod_1.z.number().optional(),
84
+ }, async ({ query, type, project_id, topic_key, limit, offset }) => {
85
+ let filtered = [...observations];
86
+ if (query) {
87
+ const q = query.toLowerCase();
88
+ filtered = filtered.filter((o) => o.title.toLowerCase().includes(q) ||
89
+ o.content.toLowerCase().includes(q));
90
+ }
91
+ if (type)
92
+ filtered = filtered.filter((o) => o.type === type);
93
+ if (project_id)
94
+ filtered = filtered.filter((o) => o.projectId === project_id);
95
+ if (topic_key)
96
+ filtered = filtered.filter((o) => o.topicKey === topic_key);
97
+ const off = offset || 0;
98
+ const lim = limit || 20;
99
+ return {
100
+ content: [
101
+ {
102
+ type: "text",
103
+ text: JSON.stringify({
104
+ observations: filtered.slice(off, off + lim),
105
+ total: filtered.length,
106
+ }, null, 2),
107
+ },
108
+ ],
109
+ };
110
+ });
111
+ server.tool("mem_get_observation", "Get a specific observation by ID.", {
112
+ id: zod_1.z.number().describe("Observation ID"),
113
+ }, async ({ id }) => {
114
+ const obs = observations.find((o) => o.id === id);
115
+ if (!obs)
116
+ throw new Error(`Observation ${id} not found`);
117
+ return {
118
+ content: [{ type: "text", text: JSON.stringify(obs, null, 2) }],
119
+ };
120
+ });
121
+ server.tool("mem_update", "Update an existing observation.", {
122
+ id: zod_1.z.number().describe("Observation ID"),
123
+ title: zod_1.z.string().optional(),
124
+ content: zod_1.z.string().optional(),
125
+ type: zod_1.z.enum(["decision", "bug", "discovery", "note"]).optional(),
126
+ topic_key: zod_1.z.string().optional(),
127
+ }, async ({ id, title, content, type, topic_key }) => {
128
+ const idx = observations.findIndex((o) => o.id === id);
129
+ if (idx === -1)
130
+ throw new Error(`Observation ${id} not found`);
131
+ if (title)
132
+ observations[idx].title = title;
133
+ if (content)
134
+ observations[idx].content = content;
135
+ if (type)
136
+ observations[idx].type = type;
137
+ if (topic_key)
138
+ observations[idx].topicKey = topic_key;
139
+ return {
140
+ content: [
141
+ {
142
+ type: "text",
143
+ text: JSON.stringify({ id: observations[idx].id, success: true }, null, 2),
144
+ },
145
+ ],
146
+ };
147
+ });
148
+ server.tool("mem_delete", "Delete an observation.", {
149
+ id: zod_1.z.number().describe("Observation ID"),
150
+ }, async ({ id }) => {
151
+ const idx = observations.findIndex((o) => o.id === id);
152
+ if (idx === -1)
153
+ throw new Error(`Observation ${id} not found`);
154
+ observations.splice(idx, 1);
155
+ return {
156
+ content: [
157
+ {
158
+ type: "text",
159
+ text: JSON.stringify({ id, success: true }, null, 2),
160
+ },
161
+ ],
162
+ };
163
+ });
164
+ server.tool("mem_session_start", "Start a new memory session.", {
165
+ project_id: zod_1.z.string().describe("Project identifier"),
166
+ metadata: zod_1.z.record(zod_1.z.unknown()).optional(),
167
+ }, async ({ project_id, metadata }) => {
168
+ const s = {
169
+ id: nextSessionId++,
170
+ uuid: generateUUID(),
171
+ projectId: project_id,
172
+ startedAt: new Date().toISOString(),
173
+ endedAt: null,
174
+ metadata: metadata || {},
175
+ };
176
+ sessions.push(s);
177
+ activeSession = s;
178
+ return {
179
+ content: [
180
+ {
181
+ type: "text",
182
+ text: JSON.stringify({ id: s.id, uuid: s.uuid, success: true }, null, 2),
183
+ },
184
+ ],
185
+ };
186
+ });
187
+ server.tool("mem_session_end", "End the current active session.", {}, async () => {
188
+ if (!activeSession)
189
+ throw new Error("No active session");
190
+ activeSession.endedAt = new Date().toISOString();
191
+ const ended = { ...activeSession };
192
+ activeSession = null;
193
+ return {
194
+ content: [
195
+ {
196
+ type: "text",
197
+ text: JSON.stringify({ id: ended.id, uuid: ended.uuid, endedAt: ended.endedAt, success: true }, null, 2),
198
+ },
199
+ ],
200
+ };
201
+ });
202
+ server.tool("mem_list_sessions", "List all sessions.", {
203
+ project_id: zod_1.z.string().optional(),
204
+ limit: zod_1.z.number().optional(),
205
+ }, async ({ project_id, limit }) => {
206
+ let filtered = [...sessions];
207
+ if (project_id)
208
+ filtered = filtered.filter((s) => s.projectId === project_id);
209
+ const lim = limit || 20;
210
+ return {
211
+ content: [
212
+ {
213
+ type: "text",
214
+ text: JSON.stringify({ sessions: filtered.slice(0, lim), total: filtered.length }, null, 2),
215
+ },
216
+ ],
217
+ };
218
+ });
219
+ server.tool("mem_get_session", "Get a specific session by ID.", {
220
+ id: zod_1.z.number().describe("Session ID"),
221
+ }, async ({ id }) => {
222
+ const s = sessions.find((s) => s.id === id);
223
+ if (!s)
224
+ throw new Error(`Session ${id} not found`);
225
+ return {
226
+ content: [{ type: "text", text: JSON.stringify(s, null, 2) }],
227
+ };
228
+ });
229
+ server.tool("mem_timeline", "Get chronological timeline of observations.", {
230
+ project_id: zod_1.z.string().optional(),
231
+ limit: zod_1.z.number().optional(),
232
+ offset: zod_1.z.number().optional(),
233
+ }, async ({ project_id, limit, offset }) => {
234
+ let filtered = [...observations];
235
+ if (project_id)
236
+ filtered = filtered.filter((o) => o.projectId === project_id);
237
+ filtered.sort((a, b) => new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime());
238
+ const off = offset || 0;
239
+ const lim = limit || 20;
240
+ return {
241
+ content: [
242
+ {
243
+ type: "text",
244
+ text: JSON.stringify({ observations: filtered.slice(off, off + lim), total: filtered.length }, null, 2),
245
+ },
246
+ ],
247
+ };
248
+ });
249
+ server.tool("mem_stats", "Get memory statistics.", {}, async () => {
250
+ const byType = {};
251
+ const byProject = {};
252
+ for (const o of observations) {
253
+ byType[o.type] = (byType[o.type] || 0) + 1;
254
+ byProject[o.projectId] = (byProject[o.projectId] || 0) + 1;
255
+ }
256
+ return {
257
+ content: [
258
+ {
259
+ type: "text",
260
+ text: JSON.stringify({
261
+ totalObservations: observations.length,
262
+ totalSessions: sessions.length,
263
+ byType,
264
+ byProject,
265
+ activeSession: activeSession
266
+ ? { id: activeSession.id, projectId: activeSession.projectId }
267
+ : null,
268
+ }, null, 2),
269
+ },
270
+ ],
271
+ };
272
+ });
273
+ server.tool("mem_health", "Check system health.", {}, async () => {
274
+ return {
275
+ content: [
276
+ {
277
+ type: "text",
278
+ text: JSON.stringify({
279
+ status: "healthy",
280
+ version: "0.3.0",
281
+ storage: "in-memory",
282
+ observations: observations.length,
283
+ sessions: sessions.length,
284
+ }, null, 2),
285
+ },
286
+ ],
287
+ };
288
+ });
289
+ server.tool("mem_config", "Get server configuration.", {}, async () => {
290
+ return {
291
+ content: [
292
+ {
293
+ type: "text",
294
+ text: JSON.stringify({
295
+ name: "memento-mcp-server",
296
+ version: "0.3.0",
297
+ storage: "in-memory",
298
+ tools: 13,
299
+ }, null, 2),
300
+ },
301
+ ],
302
+ };
303
+ });
304
+ // ============================================
305
+ // START SERVER
306
+ // ============================================
307
+ async function main() {
308
+ const transport = new stdio_js_1.StdioServerTransport();
309
+ await server.connect(transport);
310
+ console.error("Memento MCP Server v0.3.0 started");
311
+ }
312
+ main().catch((err) => {
313
+ console.error("Fatal error:", err);
314
+ process.exit(1);
315
+ });
316
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAEA,oEAAoE;AACpE,wEAAiF;AACjF,6BAAwB;AA4BxB,IAAI,YAAY,GAAkB,EAAE,CAAC;AACrC,IAAI,QAAQ,GAAc,EAAE,CAAC;AAC7B,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,IAAI,aAAa,GAAG,CAAC,CAAC;AACtB,IAAI,aAAa,GAAmB,IAAI,CAAC;AAEzC,SAAS,YAAY;IACnB,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;QACnE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC1C,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,+CAA+C;AAC/C,aAAa;AACb,+CAA+C;AAE/C,MAAM,MAAM,GAAG,IAAI,kBAAS,CAAC;IAC3B,IAAI,EAAE,oBAAoB;IAC1B,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,+CAA+C;AAC/C,QAAQ;AACR,+CAA+C;AAE/C,MAAM,CAAC,IAAI,CACT,UAAU,EACV,uEAAuE,EACvE;IACE,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACtD,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC1D,IAAI,EAAE,OAAC;SACJ,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;SAC9C,QAAQ,EAAE;SACV,QAAQ,CAAC,qCAAqC,CAAC;IAClD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACnE,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IAChE,QAAQ,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;CAC3E,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE;IAClE,MAAM,SAAS,GAAG,aAAa;QAC7B,CAAC,CAAC,aAAa,CAAC,EAAE;QAClB,CAAC,CAAC,CAAC,GAAG,EAAE;YACJ,MAAM,CAAC,GAAY;gBACjB,EAAE,EAAE,aAAa,EAAE;gBACnB,IAAI,EAAE,YAAY,EAAE;gBACpB,SAAS,EAAE,UAAU,IAAI,SAAS;gBAClC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,EAAE;aACb,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,aAAa,GAAG,CAAC,CAAC;YAClB,OAAO,CAAC,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,GAAG,GAAgB;QACvB,EAAE,EAAE,SAAS,EAAE;QACf,IAAI,EAAE,YAAY,EAAE;QACpB,SAAS;QACT,KAAK;QACL,OAAO;QACP,IAAI,EAAE,IAAI,IAAI,MAAM;QACpB,QAAQ,EAAE,SAAS,IAAI,IAAI;QAC3B,SAAS,EAAE,UAAU,IAAI,SAAS;QAClC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,QAAQ,EAAE,QAAQ,IAAI,EAAE;KACzB,CAAC;IACF,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEvB,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAC7C,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,0CAA0C,EAC1C;IACE,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;IACrD,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACjE,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;IAC9D,IAAI,QAAQ,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;IACjC,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAC9B,QAAQ,GAAG,QAAQ,CAAC,MAAM,CACxB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CACtC,CAAC;IACJ,CAAC;IACD,IAAI,IAAI;QAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC7D,IAAI,UAAU;QACZ,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC;IAChE,IAAI,SAAS;QACX,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;IAE9D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC;IACxB,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE,CAAC;IAExB,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;oBACE,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC;oBAC5C,KAAK,EAAE,QAAQ,CAAC,MAAM;iBACvB,EACD,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,mCAAmC,EACnC;IACE,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;CAC1C,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IACf,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAClD,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IACzD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KAChE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,iCAAiC,EACjC;IACE,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACzC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACjE,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;IAChD,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACvD,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAC/D,IAAI,KAAK;QAAE,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;IAC3C,IAAI,OAAO;QAAE,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;IACjD,IAAI,IAAI;QAAE,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;IACxC,IAAI,SAAS;QAAE,YAAY,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,SAAS,CAAC;IACtD,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,EAAE,EAAE,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAC3C,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,wBAAwB,EACxB;IACE,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;CAC1C,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IACf,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACvD,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAC/D,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAC5B,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;aACrD;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,6BAA6B,EAC7B;IACE,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IACrD,QAAQ,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC3C,EACD,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE;IACjC,MAAM,CAAC,GAAY;QACjB,EAAE,EAAE,aAAa,EAAE;QACnB,IAAI,EAAE,YAAY,EAAE;QACpB,SAAS,EAAE,UAAU;QACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,QAAQ,IAAI,EAAE;KACzB,CAAC;IACF,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,aAAa,GAAG,CAAC,CAAC;IAClB,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EACzC,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,iCAAiC,EACjC,EAAE,EACF,KAAK,IAAI,EAAE;IACT,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzD,aAAa,CAAC,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACjD,MAAM,KAAK,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;IACnC,aAAa,GAAG,IAAI,CAAC;IACrB,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EACzE,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,oBAAoB,EACpB;IACE,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,EACD,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;IAC9B,IAAI,QAAQ,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;IAC7B,IAAI,UAAU;QAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE,CAAC;IACxB,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,EAC5D,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,+BAA+B,EAC/B;IACE,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;CACtC,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IACf,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IACnD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KAC9D,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,cAAc,EACd,6CAA6C,EAC7C;IACE,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,EACD,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;IACtC,IAAI,QAAQ,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;IACjC,IAAI,UAAU;QAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC;IAC9E,QAAQ,CAAC,IAAI,CACX,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAC5E,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC;IACxB,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE,CAAC;IACxB,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB,EAAE,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,EACxE,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,WAAW,EACX,wBAAwB,EACxB,EAAE,EACF,KAAK,IAAI,EAAE;IACT,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,MAAM,SAAS,GAA2B,EAAE,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3C,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;oBACE,iBAAiB,EAAE,YAAY,CAAC,MAAM;oBACtC,aAAa,EAAE,QAAQ,CAAC,MAAM;oBAC9B,MAAM;oBACN,SAAS;oBACT,aAAa,EAAE,aAAa;wBAC1B,CAAC,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,SAAS,EAAE;wBAC9D,CAAC,CAAC,IAAI;iBACT,EACD,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,sBAAsB,EACtB,EAAE,EACF,KAAK,IAAI,EAAE;IACT,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;oBACE,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,OAAO;oBAChB,OAAO,EAAE,WAAW;oBACpB,YAAY,EAAE,YAAY,CAAC,MAAM;oBACjC,QAAQ,EAAE,QAAQ,CAAC,MAAM;iBAC1B,EACD,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,2BAA2B,EAC3B,EAAE,EACF,KAAK,IAAI,EAAE;IACT,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;oBACE,IAAI,EAAE,oBAAoB;oBAC1B,OAAO,EAAE,OAAO;oBAChB,OAAO,EAAE,WAAW;oBACpB,KAAK,EAAE,EAAE;iBACV,EACD,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,+CAA+C;AAC/C,eAAe;AACf,+CAA+C;AAE/C,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;AACrD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,22 +1,28 @@
1
1
  {
2
2
  "name": "@slorenzot/memento-mcp-server",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "MCP server implementation for Memento",
5
- "main": "./dist/index.js",
6
- "types": "./dist/index.d.ts",
5
+ "keywords": ["mcp", "memento", "memory", "model-context-protocol"],
6
+ "license": "CC-BY-NC-ND-4.0",
7
+ "author": "Soulberto Lorenzo",
8
+ "type": "commonjs",
9
+ "main": "dist/index.js",
10
+ "types": "dist/index.d.ts",
11
+ "bin": {
12
+ "memento-mcp": "dist/index.js"
13
+ },
7
14
  "scripts": {
8
- "dev": "bun run src/index.ts",
9
- "build": "bun tsc --declaration --declarationMap --outDir ./dist",
10
- "start": "node mcp.js",
11
- "test": "bun test",
12
- "typecheck": "bun tsc --noEmit"
15
+ "build": "tsc",
16
+ "start": "node dist/index.js",
17
+ "dev": "tsc --watch",
18
+ "prepare": "npm run build"
13
19
  },
14
20
  "dependencies": {
15
- "@slorenzot/memento-core": "^0.1.3",
16
- "@modelcontextprotocol/sdk": "^0.4.0",
21
+ "@modelcontextprotocol/sdk": "^1.25.1",
17
22
  "zod": "^3.22.4"
18
23
  },
19
24
  "devDependencies": {
20
- "bun-types": "^1.3.11"
25
+ "@types/node": "^20.11.0",
26
+ "typescript": "^5.3.3"
21
27
  }
22
28
  }