@hu14/memos-mcp 1.0.0 → 1.0.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/README.md +4 -2
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +112 -43
- package/dist/index.js.map +1 -0
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -12,13 +12,13 @@ A Model Context Protocol (MCP) server for interacting with [Memos](https://useme
|
|
|
12
12
|
## Installation
|
|
13
13
|
|
|
14
14
|
```bash
|
|
15
|
-
npm install -g memos-mcp
|
|
15
|
+
npm install -g @hu14/memos-mcp
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
Or run directly with npx:
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
|
-
npx memos-mcp
|
|
21
|
+
npx @hu14/memos-mcp
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
## Configuration
|
|
@@ -108,6 +108,8 @@ Or for local development:
|
|
|
108
108
|
- **`create_tag`** - Create a new tag
|
|
109
109
|
- `name`: Tag name (without # prefix)
|
|
110
110
|
|
|
111
|
+
**Returns**: Tag name in success message
|
|
112
|
+
|
|
111
113
|
- **`delete_tag`** - Delete a tag
|
|
112
114
|
- `name`: Tag name (e.g., `tags/ideas`)
|
|
113
115
|
|
package/dist/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
|
|
2
|
+
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
3
|
+
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
4
|
+
import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
5
|
+
import { z } from "zod";
|
|
7
6
|
// Environment configuration
|
|
8
7
|
const MEMOS_API_URL = process.env.MEMOS_API_URL || "http://localhost:5230";
|
|
9
8
|
const MEMOS_API_TOKEN = process.env.MEMOS_API_TOKEN;
|
|
@@ -15,9 +14,9 @@ if (!MEMOS_API_TOKEN) {
|
|
|
15
14
|
async function memosApi(path, options = {}) {
|
|
16
15
|
const url = `${MEMOS_API_URL}${path}`;
|
|
17
16
|
const headers = {
|
|
18
|
-
|
|
17
|
+
Authorization: `Bearer ${MEMOS_API_TOKEN}`,
|
|
19
18
|
"Content-Type": "application/json",
|
|
20
|
-
...options.headers,
|
|
19
|
+
...(options.headers || {}),
|
|
21
20
|
};
|
|
22
21
|
const response = await fetch(url, { ...options, headers });
|
|
23
22
|
if (!response.ok) {
|
|
@@ -29,6 +28,40 @@ async function memosApi(path, options = {}) {
|
|
|
29
28
|
}
|
|
30
29
|
return response.json();
|
|
31
30
|
}
|
|
31
|
+
// Zod schemas for validation
|
|
32
|
+
const ListMemosSchema = z.object({
|
|
33
|
+
filter: z.string().optional(),
|
|
34
|
+
limit: z.number().default(10),
|
|
35
|
+
offset: z.number().default(0),
|
|
36
|
+
sort: z.string().default("create_time desc"),
|
|
37
|
+
});
|
|
38
|
+
const GetMemoSchema = z.object({
|
|
39
|
+
name: z.string(),
|
|
40
|
+
});
|
|
41
|
+
const CreateMemoSchema = z.object({
|
|
42
|
+
content: z.string(),
|
|
43
|
+
visibility: z.enum(["PRIVATE", "PROTECTED", "PUBLIC"]).default("PRIVATE"),
|
|
44
|
+
tags: z.array(z.string()).default([]),
|
|
45
|
+
});
|
|
46
|
+
const UpdateMemoSchema = z.object({
|
|
47
|
+
name: z.string(),
|
|
48
|
+
content: z.string().optional(),
|
|
49
|
+
visibility: z.enum(["PRIVATE", "PROTECTED", "PUBLIC"]).optional(),
|
|
50
|
+
tags: z.array(z.string()).optional(),
|
|
51
|
+
});
|
|
52
|
+
const DeleteMemoSchema = z.object({
|
|
53
|
+
name: z.string(),
|
|
54
|
+
});
|
|
55
|
+
const ListTagsSchema = z.object({
|
|
56
|
+
creator: z.string().optional(),
|
|
57
|
+
limit: z.number().default(100),
|
|
58
|
+
});
|
|
59
|
+
const CreateTagSchema = z.object({
|
|
60
|
+
name: z.string(),
|
|
61
|
+
});
|
|
62
|
+
const DeleteTagSchema = z.object({
|
|
63
|
+
name: z.string(),
|
|
64
|
+
});
|
|
32
65
|
// Tool definitions
|
|
33
66
|
const TOOLS = [
|
|
34
67
|
{
|
|
@@ -39,7 +72,7 @@ const TOOLS = [
|
|
|
39
72
|
properties: {
|
|
40
73
|
filter: {
|
|
41
74
|
type: "string",
|
|
42
|
-
description:
|
|
75
|
+
description: 'Filter expression (e.g., \'creator == "users/1"\', \'tag == "ideas"\')',
|
|
43
76
|
},
|
|
44
77
|
limit: {
|
|
45
78
|
type: "number",
|
|
@@ -187,17 +220,21 @@ const TOOLS = [
|
|
|
187
220
|
},
|
|
188
221
|
},
|
|
189
222
|
];
|
|
190
|
-
// Tool handlers
|
|
191
223
|
async function handleListMemos(args) {
|
|
224
|
+
const parsed = ListMemosSchema.parse(args);
|
|
192
225
|
const params = new URLSearchParams();
|
|
193
|
-
if (
|
|
194
|
-
params.append("filter",
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
if (
|
|
200
|
-
params.append("
|
|
226
|
+
if (parsed.filter) {
|
|
227
|
+
params.append("filter", parsed.filter);
|
|
228
|
+
}
|
|
229
|
+
if (parsed.limit) {
|
|
230
|
+
params.append("pageSize", parsed.limit.toString());
|
|
231
|
+
}
|
|
232
|
+
if (parsed.offset) {
|
|
233
|
+
params.append("offset", parsed.offset.toString());
|
|
234
|
+
}
|
|
235
|
+
if (parsed.sort) {
|
|
236
|
+
params.append("orderBy", parsed.sort);
|
|
237
|
+
}
|
|
201
238
|
const result = await memosApi(`/api/v1/memos?${params.toString()}`);
|
|
202
239
|
return {
|
|
203
240
|
content: [
|
|
@@ -209,7 +246,10 @@ async function handleListMemos(args) {
|
|
|
209
246
|
};
|
|
210
247
|
}
|
|
211
248
|
async function handleGetMemo(args) {
|
|
212
|
-
const
|
|
249
|
+
const parsed = GetMemoSchema.parse(args);
|
|
250
|
+
// Ensure name is properly encoded for URL
|
|
251
|
+
const encodedName = encodeURIComponent(parsed.name);
|
|
252
|
+
const result = await memosApi(`/api/v1/${encodedName}`);
|
|
213
253
|
return {
|
|
214
254
|
content: [
|
|
215
255
|
{
|
|
@@ -220,10 +260,11 @@ async function handleGetMemo(args) {
|
|
|
220
260
|
};
|
|
221
261
|
}
|
|
222
262
|
async function handleCreateMemo(args) {
|
|
263
|
+
const parsed = CreateMemoSchema.parse(args);
|
|
223
264
|
const body = {
|
|
224
|
-
content:
|
|
225
|
-
visibility:
|
|
226
|
-
tags:
|
|
265
|
+
content: parsed.content,
|
|
266
|
+
visibility: parsed.visibility,
|
|
267
|
+
tags: parsed.tags,
|
|
227
268
|
};
|
|
228
269
|
const result = await memosApi("/api/v1/memos", {
|
|
229
270
|
method: "POST",
|
|
@@ -239,14 +280,17 @@ async function handleCreateMemo(args) {
|
|
|
239
280
|
};
|
|
240
281
|
}
|
|
241
282
|
async function handleUpdateMemo(args) {
|
|
283
|
+
const parsed = UpdateMemoSchema.parse(args);
|
|
284
|
+
// Build update body with only provided fields
|
|
242
285
|
const body = {};
|
|
243
|
-
if (
|
|
244
|
-
body.content =
|
|
245
|
-
if (
|
|
246
|
-
body.visibility =
|
|
247
|
-
if (
|
|
248
|
-
body.tags =
|
|
249
|
-
const
|
|
286
|
+
if (parsed.content !== undefined)
|
|
287
|
+
body.content = parsed.content;
|
|
288
|
+
if (parsed.visibility !== undefined)
|
|
289
|
+
body.visibility = parsed.visibility;
|
|
290
|
+
if (parsed.tags !== undefined)
|
|
291
|
+
body.tags = parsed.tags;
|
|
292
|
+
const encodedName = encodeURIComponent(parsed.name);
|
|
293
|
+
const result = await memosApi(`/api/v1/${encodedName}`, {
|
|
250
294
|
method: "PATCH",
|
|
251
295
|
body: JSON.stringify(body),
|
|
252
296
|
});
|
|
@@ -260,24 +304,31 @@ async function handleUpdateMemo(args) {
|
|
|
260
304
|
};
|
|
261
305
|
}
|
|
262
306
|
async function handleDeleteMemo(args) {
|
|
263
|
-
|
|
307
|
+
const parsed = DeleteMemoSchema.parse(args);
|
|
308
|
+
const encodedName = encodeURIComponent(parsed.name);
|
|
309
|
+
await memosApi(`/api/v1/${encodedName}`, {
|
|
264
310
|
method: "DELETE",
|
|
265
311
|
});
|
|
312
|
+
// Extract ID for user-friendly message
|
|
313
|
+
const id = parsed.name.split("/").pop() || parsed.name;
|
|
266
314
|
return {
|
|
267
315
|
content: [
|
|
268
316
|
{
|
|
269
317
|
type: "text",
|
|
270
|
-
text: `Memo ${
|
|
318
|
+
text: `Memo ${id} deleted successfully.`,
|
|
271
319
|
},
|
|
272
320
|
],
|
|
273
321
|
};
|
|
274
322
|
}
|
|
275
323
|
async function handleListTags(args) {
|
|
324
|
+
const parsed = ListTagsSchema.parse(args);
|
|
276
325
|
const params = new URLSearchParams();
|
|
277
|
-
if (
|
|
278
|
-
params.append("filter", `creator == "${
|
|
279
|
-
|
|
280
|
-
|
|
326
|
+
if (parsed.creator) {
|
|
327
|
+
params.append("filter", `creator == "${parsed.creator}"`);
|
|
328
|
+
}
|
|
329
|
+
if (parsed.limit) {
|
|
330
|
+
params.append("pageSize", parsed.limit.toString());
|
|
331
|
+
}
|
|
281
332
|
const result = await memosApi(`/api/v1/tags?${params.toString()}`);
|
|
282
333
|
return {
|
|
283
334
|
content: [
|
|
@@ -289,8 +340,9 @@ async function handleListTags(args) {
|
|
|
289
340
|
};
|
|
290
341
|
}
|
|
291
342
|
async function handleCreateTag(args) {
|
|
343
|
+
const parsed = CreateTagSchema.parse(args);
|
|
292
344
|
const body = {
|
|
293
|
-
name:
|
|
345
|
+
name: parsed.name,
|
|
294
346
|
};
|
|
295
347
|
const result = await memosApi("/api/v1/tags", {
|
|
296
348
|
method: "POST",
|
|
@@ -300,37 +352,41 @@ async function handleCreateTag(args) {
|
|
|
300
352
|
content: [
|
|
301
353
|
{
|
|
302
354
|
type: "text",
|
|
303
|
-
text: `Tag created successfully:\n${JSON.stringify(result, null, 2)}`,
|
|
355
|
+
text: `Tag "${parsed.name}" created successfully:\n${JSON.stringify(result, null, 2)}`,
|
|
304
356
|
},
|
|
305
357
|
],
|
|
306
358
|
};
|
|
307
359
|
}
|
|
308
360
|
async function handleDeleteTag(args) {
|
|
309
|
-
|
|
361
|
+
const parsed = DeleteTagSchema.parse(args);
|
|
362
|
+
const encodedName = encodeURIComponent(parsed.name);
|
|
363
|
+
await memosApi(`/api/v1/${encodedName}`, {
|
|
310
364
|
method: "DELETE",
|
|
311
365
|
});
|
|
366
|
+
// Extract tag name for user-friendly message
|
|
367
|
+
const tagName = parsed.name.split("/").pop() || parsed.name;
|
|
312
368
|
return {
|
|
313
369
|
content: [
|
|
314
370
|
{
|
|
315
371
|
type: "text",
|
|
316
|
-
text: `Tag ${
|
|
372
|
+
text: `Tag "${tagName}" deleted successfully.`,
|
|
317
373
|
},
|
|
318
374
|
],
|
|
319
375
|
};
|
|
320
376
|
}
|
|
321
377
|
// Main server
|
|
322
|
-
const server = new
|
|
378
|
+
const server = new Server({
|
|
323
379
|
name: "memos-mcp",
|
|
324
|
-
version: "1.0.
|
|
380
|
+
version: "1.0.1",
|
|
325
381
|
}, {
|
|
326
382
|
capabilities: {
|
|
327
383
|
tools: {},
|
|
328
384
|
},
|
|
329
385
|
});
|
|
330
|
-
server.setRequestHandler(
|
|
386
|
+
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
331
387
|
return { tools: TOOLS };
|
|
332
388
|
});
|
|
333
|
-
server.setRequestHandler(
|
|
389
|
+
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
334
390
|
const { name, arguments: args } = request.params;
|
|
335
391
|
try {
|
|
336
392
|
switch (name) {
|
|
@@ -355,6 +411,18 @@ server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
|
|
|
355
411
|
}
|
|
356
412
|
}
|
|
357
413
|
catch (error) {
|
|
414
|
+
if (error instanceof z.ZodError) {
|
|
415
|
+
const issues = error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; ");
|
|
416
|
+
return {
|
|
417
|
+
content: [
|
|
418
|
+
{
|
|
419
|
+
type: "text",
|
|
420
|
+
text: `Validation error: ${issues}`,
|
|
421
|
+
},
|
|
422
|
+
],
|
|
423
|
+
isError: true,
|
|
424
|
+
};
|
|
425
|
+
}
|
|
358
426
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
359
427
|
return {
|
|
360
428
|
content: [
|
|
@@ -369,7 +437,7 @@ server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
|
|
|
369
437
|
});
|
|
370
438
|
// Start server
|
|
371
439
|
async function main() {
|
|
372
|
-
const transport = new
|
|
440
|
+
const transport = new StdioServerTransport();
|
|
373
441
|
await server.connect(transport);
|
|
374
442
|
console.error("Memos MCP server running on stdio");
|
|
375
443
|
}
|
|
@@ -377,3 +445,4 @@ main().catch((error) => {
|
|
|
377
445
|
console.error("Fatal error:", error);
|
|
378
446
|
process.exit(1);
|
|
379
447
|
});
|
|
448
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hu14/memos-mcp",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "MCP server for Memos - A lightweight, open-source memo hub",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
"scripts": {
|
|
15
15
|
"build": "tsc",
|
|
16
16
|
"start": "node dist/index.js",
|
|
17
|
-
"dev": "npm run build && npm run start"
|
|
17
|
+
"dev": "npm run build && npm run start",
|
|
18
|
+
"prepublishOnly": "npm run build"
|
|
18
19
|
},
|
|
19
20
|
"keywords": [
|
|
20
21
|
"mcp",
|
|
@@ -22,7 +23,7 @@
|
|
|
22
23
|
"model-context-protocol"
|
|
23
24
|
],
|
|
24
25
|
"author": "",
|
|
25
|
-
"license": "
|
|
26
|
+
"license": "MIT",
|
|
26
27
|
"engines": {
|
|
27
28
|
"node": ">=18"
|
|
28
29
|
},
|