nusus-mcp 0.2.0 → 0.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/dist/index.js +26 -20
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -3,11 +3,19 @@ import { Server } from "@modelcontextprotocol/server";
|
|
|
3
3
|
import { serveStdio } from "@modelcontextprotocol/server/stdio";
|
|
4
4
|
import { NususError } from "nusus";
|
|
5
5
|
import { createTurathClient } from "nusus/turath";
|
|
6
|
-
const
|
|
6
|
+
const isInteger = (value) => typeof value === "number" && Number.isInteger(value);
|
|
7
|
+
const isString = (value) => typeof value === "string";
|
|
8
|
+
const positiveInteger = (args, key) => {
|
|
7
9
|
const value = args[key];
|
|
8
|
-
if (value === undefined
|
|
10
|
+
if (value === undefined)
|
|
9
11
|
return undefined;
|
|
10
|
-
if (!
|
|
12
|
+
if (!isInteger(value) || value < 1)
|
|
13
|
+
throw new NususError("INVALID_ARGUMENT", `${key} must be a positive integer`);
|
|
14
|
+
return value;
|
|
15
|
+
};
|
|
16
|
+
const requiredPositiveInteger = (args, key) => {
|
|
17
|
+
const value = positiveInteger(args, key);
|
|
18
|
+
if (value === undefined)
|
|
11
19
|
throw new NususError("INVALID_ARGUMENT", `${key} must be a positive integer`);
|
|
12
20
|
return value;
|
|
13
21
|
};
|
|
@@ -15,17 +23,16 @@ const nonNegativeInteger = (args, key) => {
|
|
|
15
23
|
const value = args[key];
|
|
16
24
|
if (value === undefined)
|
|
17
25
|
return undefined;
|
|
18
|
-
if (!
|
|
26
|
+
if (!isInteger(value) || value < 0)
|
|
19
27
|
throw new NususError("INVALID_ARGUMENT", `${key} must be a non-negative integer`);
|
|
20
28
|
return value;
|
|
21
29
|
};
|
|
22
30
|
const stringArgument = (args, key) => {
|
|
23
31
|
const value = args[key];
|
|
24
|
-
if (
|
|
32
|
+
if (value === undefined || !isString(value))
|
|
25
33
|
throw new NususError("INVALID_ARGUMENT", `${key} must be a string`);
|
|
26
34
|
return value;
|
|
27
35
|
};
|
|
28
|
-
const optional = (values) => Object.fromEntries(Object.entries(values).filter(([, value]) => value !== undefined));
|
|
29
36
|
const baseUrl = process.env.NUSUS_TURATH_BASE_URL;
|
|
30
37
|
const turath = createTurathClient(baseUrl ? { baseUrl } : {});
|
|
31
38
|
const tools = [
|
|
@@ -111,38 +118,37 @@ const runTool = async (name, args) => {
|
|
|
111
118
|
case "find_books": {
|
|
112
119
|
const authorId = positiveInteger(args, "authorId");
|
|
113
120
|
const categoryId = positiveInteger(args, "categoryId");
|
|
114
|
-
return turath.findBooks(stringArgument(args, "query"),
|
|
121
|
+
return turath.findBooks(stringArgument(args, "query"), {
|
|
115
122
|
authorIds: authorId === undefined ? undefined : [authorId],
|
|
116
123
|
categoryIds: categoryId === undefined ? undefined : [categoryId],
|
|
117
124
|
limit: positiveInteger(args, "limit"),
|
|
118
|
-
})
|
|
125
|
+
});
|
|
119
126
|
}
|
|
120
127
|
case "find_authors":
|
|
121
|
-
return turath.findAuthors(stringArgument(args, "query"),
|
|
128
|
+
return turath.findAuthors(stringArgument(args, "query"), { limit: positiveInteger(args, "limit") });
|
|
122
129
|
case "retrieve": {
|
|
123
130
|
const bookId = positiveInteger(args, "bookId");
|
|
124
131
|
const authorId = positiveInteger(args, "authorId");
|
|
125
132
|
const categoryId = positiveInteger(args, "categoryId");
|
|
126
|
-
const
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
scope: Object.keys(scope).length ? scope : undefined,
|
|
133
|
+
const bookIds = bookId === undefined ? undefined : [bookId];
|
|
134
|
+
const authorIds = authorId === undefined ? undefined : [authorId];
|
|
135
|
+
const categoryIds = categoryId === undefined ? undefined : [categoryId];
|
|
136
|
+
const scope = bookIds || authorIds || categoryIds ? { bookIds, authorIds, categoryIds } : undefined;
|
|
137
|
+
return turath.retrieve(stringArgument(args, "query"), {
|
|
138
|
+
scope,
|
|
133
139
|
maxPassages: positiveInteger(args, "maxPassages"),
|
|
134
140
|
maxCharsPerPassage: positiveInteger(args, "maxCharsPerPassage"),
|
|
135
141
|
pagesBefore: nonNegativeInteger(args, "pagesBefore"),
|
|
136
142
|
pagesAfter: nonNegativeInteger(args, "pagesAfter"),
|
|
137
|
-
})
|
|
143
|
+
});
|
|
138
144
|
}
|
|
139
145
|
case "get_context":
|
|
140
|
-
return turath.getContextByPage(
|
|
146
|
+
return turath.getContextByPage(requiredPositiveInteger(args, "bookId"), requiredPositiveInteger(args, "pageId"), {
|
|
141
147
|
pagesBefore: nonNegativeInteger(args, "pagesBefore"),
|
|
142
148
|
pagesAfter: nonNegativeInteger(args, "pagesAfter"),
|
|
143
|
-
})
|
|
149
|
+
});
|
|
144
150
|
case "get_book":
|
|
145
|
-
return turath.getBook(
|
|
151
|
+
return turath.getBook(requiredPositiveInteger(args, "bookId"));
|
|
146
152
|
default:
|
|
147
153
|
throw new NususError("INVALID_ARGUMENT", `Unknown tool: ${name}`);
|
|
148
154
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAa,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;
|
|
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": "nusus-mcp",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Local MCP stdio server for Nusus and Turath",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"turath",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"@modelcontextprotocol/server": "^2.0.0",
|
|
45
|
-
"nusus": "^0.7.
|
|
45
|
+
"nusus": "^0.7.1"
|
|
46
46
|
},
|
|
47
47
|
"engines": {
|
|
48
48
|
"node": ">=20"
|