@baitong-dev/todo-mcp 0.0.3 → 0.0.5
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/index.js +11 -52
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,57 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
4
|
};
|
|
38
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
6
|
const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
|
|
40
7
|
const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
|
|
41
|
-
const fs = __importStar(require("fs"));
|
|
42
8
|
const path_1 = __importDefault(require("path"));
|
|
43
9
|
const zod_1 = __importDefault(require("zod"));
|
|
44
10
|
const todowrite_txt_1 = __importDefault(require("../todowrite.txt"));
|
|
45
11
|
const todoread_txt_1 = __importDefault(require("../todoread.txt"));
|
|
46
12
|
const mcp_helpers_1 = require("@baitong-dev/mcp-helpers");
|
|
47
13
|
const MCP_NAME = 'Todo MCP';
|
|
48
|
-
const MCP_VERSION = '0.0.
|
|
49
|
-
function
|
|
50
|
-
|
|
51
|
-
if (!fs.existsSync(dir)) {
|
|
52
|
-
fs.mkdirSync(dir, { recursive: true });
|
|
53
|
-
}
|
|
54
|
-
return dir;
|
|
14
|
+
const MCP_VERSION = '0.0.5';
|
|
15
|
+
function createTodoTempFile(sessionID) {
|
|
16
|
+
return path_1.default.join(mcp_helpers_1.MCP_HOME_DIR, 'temp', 'baitong-tools', 'todos', `todos-${sessionID}.json`);
|
|
55
17
|
}
|
|
56
18
|
const server = new mcp_js_1.McpServer({
|
|
57
19
|
name: MCP_NAME,
|
|
@@ -77,28 +39,25 @@ const todoInfo = zod_1.default
|
|
|
77
39
|
* @param sessionId The session ID to update the todo list for
|
|
78
40
|
* @param todos The updated todo list
|
|
79
41
|
*/
|
|
80
|
-
function setTodoList(sessionId, todos) {
|
|
81
|
-
|
|
82
|
-
fs.writeFileSync(path_1.default.join(todoDir, `todos-${sessionId}.json`), JSON.stringify(todos));
|
|
42
|
+
async function setTodoList(sessionId, todos) {
|
|
43
|
+
await mcp_helpers_1.Filesystem.writeJson(createTodoTempFile(sessionId), todos);
|
|
83
44
|
}
|
|
84
45
|
/**
|
|
85
46
|
* Get the todo list for a session
|
|
86
47
|
* @param sessionId The session ID to read the todo list for
|
|
87
48
|
* @returns The todo list for the session
|
|
88
49
|
*/
|
|
89
|
-
function getTodoList(sessionId) {
|
|
90
|
-
|
|
91
|
-
const todos = fs.readFileSync(path_1.default.join(todoDir, `todos-${sessionId}.json`), 'utf-8');
|
|
92
|
-
return JSON.parse(todos);
|
|
50
|
+
async function getTodoList(sessionId) {
|
|
51
|
+
return mcp_helpers_1.Filesystem.readJson(createTodoTempFile(sessionId)).catch(() => []);
|
|
93
52
|
}
|
|
94
53
|
server.registerTool('todowrite', {
|
|
95
54
|
description: todowrite_txt_1.default,
|
|
96
55
|
inputSchema: zod_1.default.object({
|
|
97
56
|
todos: zod_1.default.array(todoInfo).describe('The updated todo list'),
|
|
98
|
-
toolInfo: mcp_helpers_1.
|
|
57
|
+
toolInfo: mcp_helpers_1.ToolInfoSchema
|
|
99
58
|
})
|
|
100
59
|
}, async (args) => {
|
|
101
|
-
setTodoList(args.toolInfo.sessionId, args.todos);
|
|
60
|
+
await setTodoList(args.toolInfo.sessionId, args.todos);
|
|
102
61
|
const todos = args.todos;
|
|
103
62
|
const result = {
|
|
104
63
|
title: `${todos.filter(x => x.status !== 'completed').length} todos`,
|
|
@@ -115,10 +74,10 @@ server.registerTool('todowrite', {
|
|
|
115
74
|
server.registerTool('todoread', {
|
|
116
75
|
description: todoread_txt_1.default,
|
|
117
76
|
inputSchema: zod_1.default.object({
|
|
118
|
-
toolInfo: mcp_helpers_1.
|
|
77
|
+
toolInfo: mcp_helpers_1.ToolInfoSchema
|
|
119
78
|
})
|
|
120
79
|
}, async (args) => {
|
|
121
|
-
const todos = getTodoList(args.toolInfo.sessionId);
|
|
80
|
+
const todos = await getTodoList(args.toolInfo.sessionId);
|
|
122
81
|
const result = {
|
|
123
82
|
title: `${todos.filter(x => x.status !== 'completed').length} todos`,
|
|
124
83
|
todos
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@baitong-dev/todo-mcp",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"bin": {
|
|
6
6
|
"@baitong-dev/todo-mcp": "./dist/index.js"
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
21
21
|
"zod": "^4.3.4",
|
|
22
|
-
"@baitong-dev/mcp-helpers": "0.0.
|
|
22
|
+
"@baitong-dev/mcp-helpers": "0.0.7"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"typescript": "^5.9.2"
|