cas-parser-node-mcp 1.4.0 → 1.7.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.
Files changed (215) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +29 -147
  3. package/auth.d.mts +4 -0
  4. package/auth.d.mts.map +1 -0
  5. package/auth.d.ts +4 -0
  6. package/auth.d.ts.map +1 -0
  7. package/{headers.js → auth.js} +2 -2
  8. package/auth.js.map +1 -0
  9. package/{headers.mjs → auth.mjs} +2 -2
  10. package/auth.mjs.map +1 -0
  11. package/code-tool-types.d.mts +7 -7
  12. package/code-tool-types.d.mts.map +1 -1
  13. package/code-tool-types.d.ts +7 -7
  14. package/code-tool-types.d.ts.map +1 -1
  15. package/code-tool.d.mts +6 -3
  16. package/code-tool.d.mts.map +1 -1
  17. package/code-tool.d.ts +6 -3
  18. package/code-tool.d.ts.map +1 -1
  19. package/code-tool.js +86 -132
  20. package/code-tool.js.map +1 -1
  21. package/code-tool.mjs +86 -99
  22. package/code-tool.mjs.map +1 -1
  23. package/{tools/cas-generator/generate-cas-cas-generator.d.ts → docs-search-tool.d.mts} +17 -11
  24. package/docs-search-tool.d.mts.map +1 -0
  25. package/{tools/cas-generator/generate-cas-cas-generator.d.mts → docs-search-tool.d.ts} +17 -11
  26. package/docs-search-tool.d.ts.map +1 -0
  27. package/docs-search-tool.js +57 -0
  28. package/docs-search-tool.js.map +1 -0
  29. package/docs-search-tool.mjs +53 -0
  30. package/docs-search-tool.mjs.map +1 -0
  31. package/http.d.mts +9 -4
  32. package/http.d.mts.map +1 -1
  33. package/http.d.ts +9 -4
  34. package/http.d.ts.map +1 -1
  35. package/http.js +31 -34
  36. package/http.js.map +1 -1
  37. package/http.mjs +31 -34
  38. package/http.mjs.map +1 -1
  39. package/index.js +8 -40
  40. package/index.js.map +1 -1
  41. package/index.mjs +8 -40
  42. package/index.mjs.map +1 -1
  43. package/methods.d.mts +10 -0
  44. package/methods.d.mts.map +1 -0
  45. package/methods.d.ts +10 -0
  46. package/methods.d.ts.map +1 -0
  47. package/methods.js +167 -0
  48. package/methods.js.map +1 -0
  49. package/methods.mjs +163 -0
  50. package/methods.mjs.map +1 -0
  51. package/options.d.mts +5 -9
  52. package/options.d.mts.map +1 -1
  53. package/options.d.ts +5 -9
  54. package/options.d.ts.map +1 -1
  55. package/options.js +37 -362
  56. package/options.js.map +1 -1
  57. package/options.mjs +37 -362
  58. package/options.mjs.map +1 -1
  59. package/package.json +57 -79
  60. package/server.d.mts +5 -15
  61. package/server.d.mts.map +1 -1
  62. package/server.d.ts +5 -15
  63. package/server.d.ts.map +1 -1
  64. package/server.js +54 -87
  65. package/server.js.map +1 -1
  66. package/server.mjs +53 -82
  67. package/server.mjs.map +1 -1
  68. package/src/{headers.ts → auth.ts} +1 -1
  69. package/src/code-tool-types.ts +7 -5
  70. package/src/code-tool.ts +104 -117
  71. package/src/docs-search-tool.ts +65 -0
  72. package/src/http.ts +44 -40
  73. package/src/index.ts +9 -52
  74. package/src/methods.ts +188 -0
  75. package/src/options.ts +48 -384
  76. package/src/server.ts +63 -97
  77. package/src/stdio.ts +4 -4
  78. package/src/{tools/types.ts → types.ts} +13 -1
  79. package/src/util.ts +25 -0
  80. package/stdio.d.mts +1 -1
  81. package/stdio.d.mts.map +1 -1
  82. package/stdio.d.ts +1 -1
  83. package/stdio.d.ts.map +1 -1
  84. package/stdio.js +3 -3
  85. package/stdio.js.map +1 -1
  86. package/stdio.mjs +3 -3
  87. package/stdio.mjs.map +1 -1
  88. package/{tools/types.d.mts → types.d.mts} +2 -1
  89. package/types.d.mts.map +1 -0
  90. package/{tools/types.d.ts → types.d.ts} +2 -1
  91. package/types.d.ts.map +1 -0
  92. package/{tools/types.js → types.js} +12 -0
  93. package/types.js.map +1 -0
  94. package/{tools/types.mjs → types.mjs} +11 -0
  95. package/types.mjs.map +1 -0
  96. package/util.d.mts +4 -0
  97. package/util.d.mts.map +1 -0
  98. package/util.d.ts +4 -0
  99. package/util.d.ts.map +1 -0
  100. package/util.js +30 -0
  101. package/util.js.map +1 -0
  102. package/util.mjs +24 -0
  103. package/util.mjs.map +1 -0
  104. package/code-tool-paths.cjs +0 -6
  105. package/code-tool-paths.cjs.map +0 -1
  106. package/code-tool-paths.d.cts +0 -2
  107. package/code-tool-paths.d.cts.map +0 -1
  108. package/code-tool-worker.d.mts +0 -5
  109. package/code-tool-worker.d.mts.map +0 -1
  110. package/code-tool-worker.d.ts +0 -5
  111. package/code-tool-worker.d.ts.map +0 -1
  112. package/code-tool-worker.js +0 -45
  113. package/code-tool-worker.js.map +0 -1
  114. package/code-tool-worker.mjs +0 -40
  115. package/code-tool-worker.mjs.map +0 -1
  116. package/compat.d.mts +0 -58
  117. package/compat.d.mts.map +0 -1
  118. package/compat.d.ts +0 -58
  119. package/compat.d.ts.map +0 -1
  120. package/compat.js +0 -387
  121. package/compat.js.map +0 -1
  122. package/compat.mjs +0 -378
  123. package/compat.mjs.map +0 -1
  124. package/dynamic-tools.d.mts +0 -12
  125. package/dynamic-tools.d.mts.map +0 -1
  126. package/dynamic-tools.d.ts +0 -12
  127. package/dynamic-tools.d.ts.map +0 -1
  128. package/dynamic-tools.js +0 -135
  129. package/dynamic-tools.js.map +0 -1
  130. package/dynamic-tools.mjs +0 -132
  131. package/dynamic-tools.mjs.map +0 -1
  132. package/filtering.d.mts +0 -2
  133. package/filtering.d.mts.map +0 -1
  134. package/filtering.d.ts +0 -2
  135. package/filtering.d.ts.map +0 -1
  136. package/filtering.js +0 -20
  137. package/filtering.js.map +0 -1
  138. package/filtering.mjs +0 -13
  139. package/filtering.mjs.map +0 -1
  140. package/headers.d.mts +0 -4
  141. package/headers.d.mts.map +0 -1
  142. package/headers.d.ts +0 -4
  143. package/headers.d.ts.map +0 -1
  144. package/headers.js.map +0 -1
  145. package/headers.mjs.map +0 -1
  146. package/src/code-tool-paths.cts +0 -3
  147. package/src/code-tool-worker.ts +0 -46
  148. package/src/compat.ts +0 -483
  149. package/src/dynamic-tools.ts +0 -159
  150. package/src/filtering.ts +0 -14
  151. package/src/tools/cas-generator/generate-cas-cas-generator.ts +0 -67
  152. package/src/tools/cas-parser/cams-kfintech-cas-parser.ts +0 -47
  153. package/src/tools/cas-parser/cdsl-cas-parser.ts +0 -47
  154. package/src/tools/cas-parser/nsdl-cas-parser.ts +0 -47
  155. package/src/tools/cas-parser/smart-parse-cas-parser.ts +0 -47
  156. package/src/tools/index.ts +0 -79
  157. package/src/tools.ts +0 -1
  158. package/tools/cas-generator/generate-cas-cas-generator.d.mts.map +0 -1
  159. package/tools/cas-generator/generate-cas-cas-generator.d.ts.map +0 -1
  160. package/tools/cas-generator/generate-cas-cas-generator.js +0 -62
  161. package/tools/cas-generator/generate-cas-cas-generator.js.map +0 -1
  162. package/tools/cas-generator/generate-cas-cas-generator.mjs +0 -58
  163. package/tools/cas-generator/generate-cas-cas-generator.mjs.map +0 -1
  164. package/tools/cas-parser/cams-kfintech-cas-parser.d.mts +0 -45
  165. package/tools/cas-parser/cams-kfintech-cas-parser.d.mts.map +0 -1
  166. package/tools/cas-parser/cams-kfintech-cas-parser.d.ts +0 -45
  167. package/tools/cas-parser/cams-kfintech-cas-parser.d.ts.map +0 -1
  168. package/tools/cas-parser/cams-kfintech-cas-parser.js +0 -43
  169. package/tools/cas-parser/cams-kfintech-cas-parser.js.map +0 -1
  170. package/tools/cas-parser/cams-kfintech-cas-parser.mjs +0 -39
  171. package/tools/cas-parser/cams-kfintech-cas-parser.mjs.map +0 -1
  172. package/tools/cas-parser/cdsl-cas-parser.d.mts +0 -45
  173. package/tools/cas-parser/cdsl-cas-parser.d.mts.map +0 -1
  174. package/tools/cas-parser/cdsl-cas-parser.d.ts +0 -45
  175. package/tools/cas-parser/cdsl-cas-parser.d.ts.map +0 -1
  176. package/tools/cas-parser/cdsl-cas-parser.js +0 -43
  177. package/tools/cas-parser/cdsl-cas-parser.js.map +0 -1
  178. package/tools/cas-parser/cdsl-cas-parser.mjs +0 -39
  179. package/tools/cas-parser/cdsl-cas-parser.mjs.map +0 -1
  180. package/tools/cas-parser/nsdl-cas-parser.d.mts +0 -45
  181. package/tools/cas-parser/nsdl-cas-parser.d.mts.map +0 -1
  182. package/tools/cas-parser/nsdl-cas-parser.d.ts +0 -45
  183. package/tools/cas-parser/nsdl-cas-parser.d.ts.map +0 -1
  184. package/tools/cas-parser/nsdl-cas-parser.js +0 -43
  185. package/tools/cas-parser/nsdl-cas-parser.js.map +0 -1
  186. package/tools/cas-parser/nsdl-cas-parser.mjs +0 -39
  187. package/tools/cas-parser/nsdl-cas-parser.mjs.map +0 -1
  188. package/tools/cas-parser/smart-parse-cas-parser.d.mts +0 -45
  189. package/tools/cas-parser/smart-parse-cas-parser.d.mts.map +0 -1
  190. package/tools/cas-parser/smart-parse-cas-parser.d.ts +0 -45
  191. package/tools/cas-parser/smart-parse-cas-parser.d.ts.map +0 -1
  192. package/tools/cas-parser/smart-parse-cas-parser.js +0 -43
  193. package/tools/cas-parser/smart-parse-cas-parser.js.map +0 -1
  194. package/tools/cas-parser/smart-parse-cas-parser.mjs +0 -39
  195. package/tools/cas-parser/smart-parse-cas-parser.mjs.map +0 -1
  196. package/tools/index.d.mts +0 -10
  197. package/tools/index.d.mts.map +0 -1
  198. package/tools/index.d.ts +0 -10
  199. package/tools/index.d.ts.map +0 -1
  200. package/tools/index.js +0 -63
  201. package/tools/index.js.map +0 -1
  202. package/tools/index.mjs +0 -56
  203. package/tools/index.mjs.map +0 -1
  204. package/tools/types.d.mts.map +0 -1
  205. package/tools/types.d.ts.map +0 -1
  206. package/tools/types.js.map +0 -1
  207. package/tools/types.mjs.map +0 -1
  208. package/tools.d.mts +0 -2
  209. package/tools.d.mts.map +0 -1
  210. package/tools.d.ts +0 -2
  211. package/tools.d.ts.map +0 -1
  212. package/tools.js +0 -18
  213. package/tools.js.map +0 -1
  214. package/tools.mjs +0 -2
  215. package/tools.mjs.map +0 -1
package/http.js CHANGED
@@ -7,43 +7,29 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.launchStreamableHTTPServer = exports.streamableHTTPApp = void 0;
8
8
  const streamableHttp_js_1 = require("@modelcontextprotocol/sdk/server/streamableHttp.js");
9
9
  const express_1 = __importDefault(require("express"));
10
- const v3_1 = require("zod-validation-error/v3");
11
- const options_1 = require("./options.js");
10
+ const morgan_1 = __importDefault(require("morgan"));
11
+ const morgan_body_1 = __importDefault(require("morgan-body"));
12
+ const auth_1 = require("./auth.js");
12
13
  const server_1 = require("./server.js");
13
- const headers_1 = require("./headers.js");
14
- const newServer = ({ clientOptions, mcpOptions: defaultMcpOptions, req, res, }) => {
15
- const server = (0, server_1.newMcpServer)();
16
- let mcpOptions;
14
+ const newServer = async ({ clientOptions, mcpOptions, req, res, }) => {
15
+ const server = await (0, server_1.newMcpServer)();
17
16
  try {
18
- mcpOptions = (0, options_1.parseQueryOptions)(defaultMcpOptions, req.query);
19
- }
20
- catch (error) {
21
- res.status(400).json({
22
- jsonrpc: '2.0',
23
- error: {
24
- code: -32000,
25
- message: `Invalid request: ${(0, v3_1.fromError)(error)}`,
26
- },
27
- });
28
- return null;
29
- }
30
- try {
31
- const authOptions = (0, headers_1.parseAuthHeaders)(req);
32
- (0, server_1.initMcpServer)({
17
+ const authOptions = (0, auth_1.parseAuthHeaders)(req, false);
18
+ await (0, server_1.initMcpServer)({
33
19
  server: server,
20
+ mcpOptions: mcpOptions,
34
21
  clientOptions: {
35
22
  ...clientOptions,
36
23
  ...authOptions,
37
24
  },
38
- mcpOptions,
39
25
  });
40
26
  }
41
- catch {
27
+ catch (error) {
42
28
  res.status(401).json({
43
29
  jsonrpc: '2.0',
44
30
  error: {
45
31
  code: -32000,
46
- message: 'Unauthorized',
32
+ message: `Unauthorized: ${error instanceof Error ? error.message : error}`,
47
33
  },
48
34
  });
49
35
  return null;
@@ -51,14 +37,11 @@ const newServer = ({ clientOptions, mcpOptions: defaultMcpOptions, req, res, })
51
37
  return server;
52
38
  };
53
39
  const post = (options) => async (req, res) => {
54
- const server = newServer({ ...options, req, res });
40
+ const server = await newServer({ ...options, req, res });
55
41
  // If we return null, we already set the authorization error.
56
42
  if (server === null)
57
43
  return;
58
- const transport = new streamableHttp_js_1.StreamableHTTPServerTransport({
59
- // Stateless server
60
- sessionIdGenerator: undefined,
61
- });
44
+ const transport = new streamableHttp_js_1.StreamableHTTPServerTransport();
62
45
  await server.connect(transport);
63
46
  await transport.handleRequest(req, res, req.body);
64
47
  };
@@ -80,19 +63,33 @@ const del = async (req, res) => {
80
63
  },
81
64
  });
82
65
  };
83
- const streamableHTTPApp = ({ clientOptions = {}, mcpOptions = {}, }) => {
66
+ const streamableHTTPApp = ({ clientOptions = {}, mcpOptions, debug, }) => {
84
67
  const app = (0, express_1.default)();
85
68
  app.set('query parser', 'extended');
86
69
  app.use(express_1.default.json());
70
+ if (debug) {
71
+ (0, morgan_body_1.default)(app, {
72
+ logAllReqHeader: true,
73
+ logAllResHeader: true,
74
+ logRequestBody: true,
75
+ logResponseBody: true,
76
+ });
77
+ }
78
+ else {
79
+ app.use((0, morgan_1.default)('combined'));
80
+ }
81
+ app.get('/health', async (req, res) => {
82
+ res.status(200).send('OK');
83
+ });
87
84
  app.get('/', get);
88
85
  app.post('/', post({ clientOptions, mcpOptions }));
89
86
  app.delete('/', del);
90
87
  return app;
91
88
  };
92
89
  exports.streamableHTTPApp = streamableHTTPApp;
93
- const launchStreamableHTTPServer = async (options, port) => {
94
- const app = (0, exports.streamableHTTPApp)({ mcpOptions: options });
95
- const server = app.listen(port);
90
+ const launchStreamableHTTPServer = async (params) => {
91
+ const app = (0, exports.streamableHTTPApp)({ mcpOptions: params.mcpOptions, debug: params.debug });
92
+ const server = app.listen(params.port);
96
93
  const address = server.address();
97
94
  if (typeof address === 'string') {
98
95
  console.error(`MCP Server running on streamable HTTP at ${address}`);
@@ -101,7 +98,7 @@ const launchStreamableHTTPServer = async (options, port) => {
101
98
  console.error(`MCP Server running on streamable HTTP on port ${address.port}`);
102
99
  }
103
100
  else {
104
- console.error(`MCP Server running on streamable HTTP on port ${port}`);
101
+ console.error(`MCP Server running on streamable HTTP on port ${params.port}`);
105
102
  }
106
103
  };
107
104
  exports.launchStreamableHTTPServer = launchStreamableHTTPServer;
package/http.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["src/http.ts"],"names":[],"mappings":"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"}
package/http.mjs CHANGED
@@ -1,43 +1,29 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
  import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
3
3
  import express from 'express';
4
- import { fromError } from 'zod-validation-error/v3';
5
- import { parseQueryOptions } from "./options.mjs";
4
+ import morgan from 'morgan';
5
+ import morganBody from 'morgan-body';
6
+ import { parseAuthHeaders } from "./auth.mjs";
6
7
  import { initMcpServer, newMcpServer } from "./server.mjs";
7
- import { parseAuthHeaders } from "./headers.mjs";
8
- const newServer = ({ clientOptions, mcpOptions: defaultMcpOptions, req, res, }) => {
9
- const server = newMcpServer();
10
- let mcpOptions;
8
+ const newServer = async ({ clientOptions, mcpOptions, req, res, }) => {
9
+ const server = await newMcpServer();
11
10
  try {
12
- mcpOptions = parseQueryOptions(defaultMcpOptions, req.query);
13
- }
14
- catch (error) {
15
- res.status(400).json({
16
- jsonrpc: '2.0',
17
- error: {
18
- code: -32000,
19
- message: `Invalid request: ${fromError(error)}`,
20
- },
21
- });
22
- return null;
23
- }
24
- try {
25
- const authOptions = parseAuthHeaders(req);
26
- initMcpServer({
11
+ const authOptions = parseAuthHeaders(req, false);
12
+ await initMcpServer({
27
13
  server: server,
14
+ mcpOptions: mcpOptions,
28
15
  clientOptions: {
29
16
  ...clientOptions,
30
17
  ...authOptions,
31
18
  },
32
- mcpOptions,
33
19
  });
34
20
  }
35
- catch {
21
+ catch (error) {
36
22
  res.status(401).json({
37
23
  jsonrpc: '2.0',
38
24
  error: {
39
25
  code: -32000,
40
- message: 'Unauthorized',
26
+ message: `Unauthorized: ${error instanceof Error ? error.message : error}`,
41
27
  },
42
28
  });
43
29
  return null;
@@ -45,14 +31,11 @@ const newServer = ({ clientOptions, mcpOptions: defaultMcpOptions, req, res, })
45
31
  return server;
46
32
  };
47
33
  const post = (options) => async (req, res) => {
48
- const server = newServer({ ...options, req, res });
34
+ const server = await newServer({ ...options, req, res });
49
35
  // If we return null, we already set the authorization error.
50
36
  if (server === null)
51
37
  return;
52
- const transport = new StreamableHTTPServerTransport({
53
- // Stateless server
54
- sessionIdGenerator: undefined,
55
- });
38
+ const transport = new StreamableHTTPServerTransport();
56
39
  await server.connect(transport);
57
40
  await transport.handleRequest(req, res, req.body);
58
41
  };
@@ -74,18 +57,32 @@ const del = async (req, res) => {
74
57
  },
75
58
  });
76
59
  };
77
- export const streamableHTTPApp = ({ clientOptions = {}, mcpOptions = {}, }) => {
60
+ export const streamableHTTPApp = ({ clientOptions = {}, mcpOptions, debug, }) => {
78
61
  const app = express();
79
62
  app.set('query parser', 'extended');
80
63
  app.use(express.json());
64
+ if (debug) {
65
+ morganBody(app, {
66
+ logAllReqHeader: true,
67
+ logAllResHeader: true,
68
+ logRequestBody: true,
69
+ logResponseBody: true,
70
+ });
71
+ }
72
+ else {
73
+ app.use(morgan('combined'));
74
+ }
75
+ app.get('/health', async (req, res) => {
76
+ res.status(200).send('OK');
77
+ });
81
78
  app.get('/', get);
82
79
  app.post('/', post({ clientOptions, mcpOptions }));
83
80
  app.delete('/', del);
84
81
  return app;
85
82
  };
86
- export const launchStreamableHTTPServer = async (options, port) => {
87
- const app = streamableHTTPApp({ mcpOptions: options });
88
- const server = app.listen(port);
83
+ export const launchStreamableHTTPServer = async (params) => {
84
+ const app = streamableHTTPApp({ mcpOptions: params.mcpOptions, debug: params.debug });
85
+ const server = app.listen(params.port);
89
86
  const address = server.address();
90
87
  if (typeof address === 'string') {
91
88
  console.error(`MCP Server running on streamable HTTP at ${address}`);
@@ -94,7 +91,7 @@ export const launchStreamableHTTPServer = async (options, port) => {
94
91
  console.error(`MCP Server running on streamable HTTP on port ${address.port}`);
95
92
  }
96
93
  else {
97
- console.error(`MCP Server running on streamable HTTP on port ${port}`);
94
+ console.error(`MCP Server running on streamable HTTP on port ${params.port}`);
98
95
  }
99
96
  };
100
97
  //# sourceMappingURL=http.mjs.map
package/http.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.mjs","sourceRoot":"","sources":["src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.mjs","sourceRoot":"","sources":["src/http.ts"],"names":[],"mappings":"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"}
package/index.js CHANGED
@@ -2,24 +2,23 @@
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  const server_1 = require("./server.js");
5
- const tools_1 = require("./tools.js");
6
5
  const options_1 = require("./options.js");
7
6
  const stdio_1 = require("./stdio.js");
8
7
  const http_1 = require("./http.js");
9
8
  async function main() {
10
9
  const options = parseOptionsOrError();
11
- if (options.list) {
12
- listAllTools();
13
- return;
14
- }
15
- const selectedTools = await selectToolsOrError(tools_1.endpoints, options);
10
+ const selectedTools = await selectToolsOrError(options);
16
11
  console.error(`MCP Server starting with ${selectedTools.length} tools:`, selectedTools.map((e) => e.tool.name));
17
12
  switch (options.transport) {
18
13
  case 'stdio':
19
14
  await (0, stdio_1.launchStdioServer)(options);
20
15
  break;
21
16
  case 'http':
22
- await (0, http_1.launchStreamableHTTPServer)(options, options.port ?? options.socket);
17
+ await (0, http_1.launchStreamableHTTPServer)({
18
+ mcpOptions: options,
19
+ debug: options.debug,
20
+ port: options.port ?? options.socket,
21
+ });
23
22
  break;
24
23
  }
25
24
  }
@@ -38,9 +37,9 @@ function parseOptionsOrError() {
38
37
  process.exit(1);
39
38
  }
40
39
  }
41
- async function selectToolsOrError(endpoints, options) {
40
+ async function selectToolsOrError(options) {
42
41
  try {
43
- const includedTools = await (0, server_1.selectTools)(endpoints, options);
42
+ const includedTools = (0, server_1.selectTools)(options);
44
43
  if (includedTools.length === 0) {
45
44
  console.error('No tools match the provided filters.');
46
45
  process.exit(1);
@@ -57,35 +56,4 @@ async function selectToolsOrError(endpoints, options) {
57
56
  process.exit(1);
58
57
  }
59
58
  }
60
- function listAllTools() {
61
- if (tools_1.endpoints.length === 0) {
62
- console.log('No tools available.');
63
- return;
64
- }
65
- console.log('Available tools:\n');
66
- // Group endpoints by resource
67
- const resourceGroups = new Map();
68
- for (const endpoint of tools_1.endpoints) {
69
- const resource = endpoint.metadata.resource;
70
- if (!resourceGroups.has(resource)) {
71
- resourceGroups.set(resource, []);
72
- }
73
- resourceGroups.get(resource).push(endpoint);
74
- }
75
- // Sort resources alphabetically
76
- const sortedResources = Array.from(resourceGroups.keys()).sort();
77
- // Display hierarchically by resource
78
- for (const resource of sortedResources) {
79
- console.log(`Resource: ${resource}`);
80
- const resourceEndpoints = resourceGroups.get(resource);
81
- // Sort endpoints by tool name
82
- resourceEndpoints.sort((a, b) => a.tool.name.localeCompare(b.tool.name));
83
- for (const endpoint of resourceEndpoints) {
84
- const { tool, metadata: { operation, tags }, } = endpoint;
85
- console.log(` - ${tool.name} (${operation}) ${tags.length > 0 ? `tags: ${tags.join(', ')}` : ''}`);
86
- console.log(` Description: ${tool.description}`);
87
- }
88
- console.log('');
89
- }
90
- }
91
59
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";;;AAEA,wCAAuC;AACvC,0CAAwD;AACxD,sCAA4C;AAC5C,oCAAoD;AAGpD,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAExD,OAAO,CAAC,KAAK,CACX,4BAA4B,aAAa,CAAC,MAAM,SAAS,EACzD,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACtC,CAAC;IAEF,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC1B,KAAK,OAAO;YACV,MAAM,IAAA,yBAAiB,EAAC,OAAO,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,MAAM;YACT,MAAM,IAAA,iCAA0B,EAAC;gBAC/B,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM;aACrC,CAAC,CAAC;YACH,MAAM;IACV,CAAC;AACH,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB;IAC1B,IAAI,CAAC;QACH,OAAO,IAAA,yBAAe,GAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,OAAmB;IACnD,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,IAAA,oBAAW,EAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
package/index.mjs CHANGED
@@ -1,23 +1,22 @@
1
1
  #!/usr/bin/env node
2
2
  import { selectTools } from "./server.mjs";
3
- import { endpoints } from "./tools.mjs";
4
3
  import { parseCLIOptions } from "./options.mjs";
5
4
  import { launchStdioServer } from "./stdio.mjs";
6
5
  import { launchStreamableHTTPServer } from "./http.mjs";
7
6
  async function main() {
8
7
  const options = parseOptionsOrError();
9
- if (options.list) {
10
- listAllTools();
11
- return;
12
- }
13
- const selectedTools = await selectToolsOrError(endpoints, options);
8
+ const selectedTools = await selectToolsOrError(options);
14
9
  console.error(`MCP Server starting with ${selectedTools.length} tools:`, selectedTools.map((e) => e.tool.name));
15
10
  switch (options.transport) {
16
11
  case 'stdio':
17
12
  await launchStdioServer(options);
18
13
  break;
19
14
  case 'http':
20
- await launchStreamableHTTPServer(options, options.port ?? options.socket);
15
+ await launchStreamableHTTPServer({
16
+ mcpOptions: options,
17
+ debug: options.debug,
18
+ port: options.port ?? options.socket,
19
+ });
21
20
  break;
22
21
  }
23
22
  }
@@ -36,9 +35,9 @@ function parseOptionsOrError() {
36
35
  process.exit(1);
37
36
  }
38
37
  }
39
- async function selectToolsOrError(endpoints, options) {
38
+ async function selectToolsOrError(options) {
40
39
  try {
41
- const includedTools = await selectTools(endpoints, options);
40
+ const includedTools = selectTools(options);
42
41
  if (includedTools.length === 0) {
43
42
  console.error('No tools match the provided filters.');
44
43
  process.exit(1);
@@ -55,35 +54,4 @@ async function selectToolsOrError(endpoints, options) {
55
54
  process.exit(1);
56
55
  }
57
56
  }
58
- function listAllTools() {
59
- if (endpoints.length === 0) {
60
- console.log('No tools available.');
61
- return;
62
- }
63
- console.log('Available tools:\n');
64
- // Group endpoints by resource
65
- const resourceGroups = new Map();
66
- for (const endpoint of endpoints) {
67
- const resource = endpoint.metadata.resource;
68
- if (!resourceGroups.has(resource)) {
69
- resourceGroups.set(resource, []);
70
- }
71
- resourceGroups.get(resource).push(endpoint);
72
- }
73
- // Sort resources alphabetically
74
- const sortedResources = Array.from(resourceGroups.keys()).sort();
75
- // Display hierarchically by resource
76
- for (const resource of sortedResources) {
77
- console.log(`Resource: ${resource}`);
78
- const resourceEndpoints = resourceGroups.get(resource);
79
- // Sort endpoints by tool name
80
- resourceEndpoints.sort((a, b) => a.tool.name.localeCompare(b.tool.name));
81
- for (const endpoint of resourceEndpoints) {
82
- const { tool, metadata: { operation, tags }, } = endpoint;
83
- console.log(` - ${tool.name} (${operation}) ${tags.length > 0 ? `tags: ${tags.join(', ')}` : ''}`);
84
- console.log(` Description: ${tool.description}`);
85
- }
86
- console.log('');
87
- }
88
- }
89
57
  //# sourceMappingURL=index.mjs.map
package/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";OAEO,EAAE,WAAW,EAAE;OACf,EAAc,eAAe,EAAE;OAC/B,EAAE,iBAAiB,EAAE;OACrB,EAAE,0BAA0B,EAAE;AAGrC,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAExD,OAAO,CAAC,KAAK,CACX,4BAA4B,aAAa,CAAC,MAAM,SAAS,EACzD,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACtC,CAAC;IAEF,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC1B,KAAK,OAAO;YACV,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,MAAM;YACT,MAAM,0BAA0B,CAAC;gBAC/B,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM;aACrC,CAAC,CAAC;YACH,MAAM;IACV,CAAC;AACH,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB;IAC1B,IAAI,CAAC;QACH,OAAO,eAAe,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,OAAmB;IACnD,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
package/methods.d.mts ADDED
@@ -0,0 +1,10 @@
1
+ import { McpOptions } from "./options.mjs";
2
+ export type SdkMethod = {
3
+ clientCallName: string;
4
+ fullyQualifiedName: string;
5
+ httpMethod?: 'get' | 'post' | 'put' | 'patch' | 'delete' | 'query';
6
+ httpPath?: string;
7
+ };
8
+ export declare const sdkMethods: SdkMethod[];
9
+ export declare function blockedMethodsForCodeTool(options: McpOptions | undefined): SdkMethod[] | undefined;
10
+ //# sourceMappingURL=methods.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methods.d.mts","sourceRoot":"","sources":["src/methods.ts"],"names":[],"mappings":"OAEO,EAAE,UAAU,EAAE;AAErB,MAAM,MAAM,SAAS,GAAG;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,SAAS,EAuGjC,CAAC;AA+DF,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,EAAE,GAAG,SAAS,CAUlG"}
package/methods.d.ts ADDED
@@ -0,0 +1,10 @@
1
+ import { McpOptions } from "./options.js";
2
+ export type SdkMethod = {
3
+ clientCallName: string;
4
+ fullyQualifiedName: string;
5
+ httpMethod?: 'get' | 'post' | 'put' | 'patch' | 'delete' | 'query';
6
+ httpPath?: string;
7
+ };
8
+ export declare const sdkMethods: SdkMethod[];
9
+ export declare function blockedMethodsForCodeTool(options: McpOptions | undefined): SdkMethod[] | undefined;
10
+ //# sourceMappingURL=methods.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methods.d.ts","sourceRoot":"","sources":["src/methods.ts"],"names":[],"mappings":"OAEO,EAAE,UAAU,EAAE;AAErB,MAAM,MAAM,SAAS,GAAG;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,SAAS,EAuGjC,CAAC;AA+DF,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,EAAE,GAAG,SAAS,CAUlG"}
package/methods.js ADDED
@@ -0,0 +1,167 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.sdkMethods = void 0;
5
+ exports.blockedMethodsForCodeTool = blockedMethodsForCodeTool;
6
+ exports.sdkMethods = [
7
+ {
8
+ clientCallName: 'client.credits.check',
9
+ fullyQualifiedName: 'credits.check',
10
+ httpMethod: 'post',
11
+ httpPath: '/credits',
12
+ },
13
+ {
14
+ clientCallName: 'client.logs.create',
15
+ fullyQualifiedName: 'logs.create',
16
+ httpMethod: 'post',
17
+ httpPath: '/logs',
18
+ },
19
+ {
20
+ clientCallName: 'client.logs.getSummary',
21
+ fullyQualifiedName: 'logs.getSummary',
22
+ httpMethod: 'post',
23
+ httpPath: '/logs/summary',
24
+ },
25
+ {
26
+ clientCallName: 'client.accessToken.create',
27
+ fullyQualifiedName: 'accessToken.create',
28
+ httpMethod: 'post',
29
+ httpPath: '/v1/access-token',
30
+ },
31
+ {
32
+ clientCallName: 'client.verifyToken.verify',
33
+ fullyQualifiedName: 'verifyToken.verify',
34
+ httpMethod: 'post',
35
+ httpPath: '/v1/verify-token',
36
+ },
37
+ {
38
+ clientCallName: 'client.camsKfintech.parse',
39
+ fullyQualifiedName: 'camsKfintech.parse',
40
+ httpMethod: 'post',
41
+ httpPath: '/v4/cams_kfintech/parse',
42
+ },
43
+ {
44
+ clientCallName: 'client.cdsl.parsePdf',
45
+ fullyQualifiedName: 'cdsl.parsePdf',
46
+ httpMethod: 'post',
47
+ httpPath: '/v4/cdsl/parse',
48
+ },
49
+ {
50
+ clientCallName: 'client.cdsl.fetch.requestOtp',
51
+ fullyQualifiedName: 'cdsl.fetch.requestOtp',
52
+ httpMethod: 'post',
53
+ httpPath: '/v4/cdsl/fetch',
54
+ },
55
+ {
56
+ clientCallName: 'client.cdsl.fetch.verifyOtp',
57
+ fullyQualifiedName: 'cdsl.fetch.verifyOtp',
58
+ httpMethod: 'post',
59
+ httpPath: '/v4/cdsl/fetch/{session_id}/verify',
60
+ },
61
+ {
62
+ clientCallName: 'client.contractNote.parse',
63
+ fullyQualifiedName: 'contractNote.parse',
64
+ httpMethod: 'post',
65
+ httpPath: '/v4/contract_note/parse',
66
+ },
67
+ {
68
+ clientCallName: 'client.inbox.checkConnectionStatus',
69
+ fullyQualifiedName: 'inbox.checkConnectionStatus',
70
+ httpMethod: 'post',
71
+ httpPath: '/v4/inbox/status',
72
+ },
73
+ {
74
+ clientCallName: 'client.inbox.connectEmail',
75
+ fullyQualifiedName: 'inbox.connectEmail',
76
+ httpMethod: 'post',
77
+ httpPath: '/v4/inbox/connect',
78
+ },
79
+ {
80
+ clientCallName: 'client.inbox.disconnectEmail',
81
+ fullyQualifiedName: 'inbox.disconnectEmail',
82
+ httpMethod: 'post',
83
+ httpPath: '/v4/inbox/disconnect',
84
+ },
85
+ {
86
+ clientCallName: 'client.inbox.listCasFiles',
87
+ fullyQualifiedName: 'inbox.listCasFiles',
88
+ httpMethod: 'post',
89
+ httpPath: '/v4/inbox/cas',
90
+ },
91
+ {
92
+ clientCallName: 'client.kfintech.generateCas',
93
+ fullyQualifiedName: 'kfintech.generateCas',
94
+ httpMethod: 'post',
95
+ httpPath: '/v4/kfintech/generate',
96
+ },
97
+ {
98
+ clientCallName: 'client.nsdl.parse',
99
+ fullyQualifiedName: 'nsdl.parse',
100
+ httpMethod: 'post',
101
+ httpPath: '/v4/nsdl/parse',
102
+ },
103
+ {
104
+ clientCallName: 'client.smart.parseCasPdf',
105
+ fullyQualifiedName: 'smart.parseCasPdf',
106
+ httpMethod: 'post',
107
+ httpPath: '/v4/smart/parse',
108
+ },
109
+ ];
110
+ function allowedMethodsForCodeTool(options) {
111
+ if (!options) {
112
+ return undefined;
113
+ }
114
+ let allowedMethods;
115
+ if (options.codeAllowHttpGets || options.codeAllowedMethods) {
116
+ // Start with nothing allowed and then add into it from options
117
+ let allowedMethodsSet = new Set();
118
+ if (options.codeAllowHttpGets) {
119
+ // Add all methods that map to an HTTP GET
120
+ exports.sdkMethods
121
+ .filter((method) => method.httpMethod === 'get')
122
+ .forEach((method) => allowedMethodsSet.add(method));
123
+ }
124
+ if (options.codeAllowedMethods) {
125
+ // Add all methods that match any of the allowed regexps
126
+ const allowedRegexps = options.codeAllowedMethods.map((pattern) => {
127
+ try {
128
+ return new RegExp(pattern);
129
+ }
130
+ catch (e) {
131
+ throw new Error(`Invalid regex pattern for allowed method: "${pattern}": ${e instanceof Error ? e.message : e}`);
132
+ }
133
+ });
134
+ exports.sdkMethods
135
+ .filter((method) => allowedRegexps.some((regexp) => regexp.test(method.fullyQualifiedName)))
136
+ .forEach((method) => allowedMethodsSet.add(method));
137
+ }
138
+ allowedMethods = Array.from(allowedMethodsSet);
139
+ }
140
+ else {
141
+ // Start with everything allowed
142
+ allowedMethods = [...exports.sdkMethods];
143
+ }
144
+ if (options.codeBlockedMethods) {
145
+ // Filter down based on blocked regexps
146
+ const blockedRegexps = options.codeBlockedMethods.map((pattern) => {
147
+ try {
148
+ return new RegExp(pattern);
149
+ }
150
+ catch (e) {
151
+ throw new Error(`Invalid regex pattern for blocked method: "${pattern}": ${e instanceof Error ? e.message : e}`);
152
+ }
153
+ });
154
+ allowedMethods = allowedMethods.filter((method) => !blockedRegexps.some((regexp) => regexp.test(method.fullyQualifiedName)));
155
+ }
156
+ return allowedMethods;
157
+ }
158
+ function blockedMethodsForCodeTool(options) {
159
+ const allowedMethods = allowedMethodsForCodeTool(options);
160
+ if (!allowedMethods) {
161
+ return undefined;
162
+ }
163
+ const allowedSet = new Set(allowedMethods.map((method) => method.fullyQualifiedName));
164
+ // Return any methods that are not explicitly allowed
165
+ return exports.sdkMethods.filter((method) => !allowedSet.has(method.fullyQualifiedName));
166
+ }
167
+ //# sourceMappingURL=methods.js.map