easy-mcp-nest 0.2.1 → 0.4.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.
Files changed (155) hide show
  1. package/README.md +342 -8
  2. package/dist/EasyMCP.js +0 -3
  3. package/dist/EasyMCP.js.map +1 -1
  4. package/dist/adapters/express/express-adapter.d.ts +3 -0
  5. package/dist/adapters/express/express-adapter.js +135 -0
  6. package/dist/adapters/express/express-adapter.js.map +1 -0
  7. package/dist/adapters/express/http-gateway.service.d.ts +13 -0
  8. package/dist/adapters/express/http-gateway.service.js +102 -0
  9. package/dist/adapters/express/http-gateway.service.js.map +1 -0
  10. package/dist/adapters/express/index.d.ts +3 -0
  11. package/dist/adapters/express/index.js +8 -0
  12. package/dist/adapters/express/index.js.map +1 -0
  13. package/dist/adapters/express/types.d.ts +15 -0
  14. package/dist/adapters/express/types.js +3 -0
  15. package/dist/adapters/express/types.js.map +1 -0
  16. package/dist/app.module.js +2 -0
  17. package/dist/app.module.js.map +1 -1
  18. package/dist/auth/oauth/index.d.ts +3 -0
  19. package/dist/auth/oauth/index.js +8 -0
  20. package/dist/auth/oauth/index.js.map +1 -0
  21. package/dist/auth/oauth/oauth-config.interface.d.ts +12 -0
  22. package/dist/auth/oauth/oauth-config.interface.js +3 -0
  23. package/dist/auth/oauth/oauth-config.interface.js.map +1 -0
  24. package/dist/auth/oauth/oauth-middleware.d.ts +3 -0
  25. package/dist/auth/oauth/oauth-middleware.js +54 -0
  26. package/dist/auth/oauth/oauth-middleware.js.map +1 -0
  27. package/dist/auth/oauth/oauth-provider.service.d.ts +8 -0
  28. package/dist/auth/oauth/oauth-provider.service.js +63 -0
  29. package/dist/auth/oauth/oauth-provider.service.js.map +1 -0
  30. package/dist/config/mcp-config.interface.d.ts +1 -1
  31. package/dist/core/batch/batch-executor.service.d.ts +21 -0
  32. package/dist/core/batch/batch-executor.service.js +101 -0
  33. package/dist/core/batch/batch-executor.service.js.map +1 -0
  34. package/dist/core/context/context-provider.service.d.ts +8 -0
  35. package/dist/core/context/context-provider.service.js +55 -0
  36. package/dist/core/context/context-provider.service.js.map +1 -0
  37. package/dist/core/context/mcp-context.interface.d.ts +12 -0
  38. package/dist/core/context/mcp-context.interface.js +3 -0
  39. package/dist/core/context/mcp-context.interface.js.map +1 -0
  40. package/dist/core/documentation/openapi-generator.service.d.ts +13 -0
  41. package/dist/core/documentation/openapi-generator.service.js +116 -0
  42. package/dist/core/documentation/openapi-generator.service.js.map +1 -0
  43. package/dist/core/errors/error-handler.interface.d.ts +11 -0
  44. package/dist/core/errors/error-handler.interface.js +3 -0
  45. package/dist/core/errors/error-handler.interface.js.map +1 -0
  46. package/dist/core/health/health-check.service.d.ts +33 -0
  47. package/dist/core/health/health-check.service.js +71 -0
  48. package/dist/core/health/health-check.service.js.map +1 -0
  49. package/dist/core/mcp-server/mcp-server.service.d.ts +16 -1
  50. package/dist/core/mcp-server/mcp-server.service.js +201 -3
  51. package/dist/core/mcp-server/mcp-server.service.js.map +1 -1
  52. package/dist/core/middleware/middleware-executor.service.d.ts +8 -0
  53. package/dist/core/middleware/middleware-executor.service.js +46 -0
  54. package/dist/core/middleware/middleware-executor.service.js.map +1 -0
  55. package/dist/core/middleware/middleware.interface.d.ts +6 -0
  56. package/dist/core/middleware/middleware.interface.js +3 -0
  57. package/dist/core/middleware/middleware.interface.js.map +1 -0
  58. package/dist/core/observability/metrics.service.d.ts +29 -0
  59. package/dist/core/observability/metrics.service.js +124 -0
  60. package/dist/core/observability/metrics.service.js.map +1 -0
  61. package/dist/core/observability/tracing.service.d.ts +12 -0
  62. package/dist/core/observability/tracing.service.js +88 -0
  63. package/dist/core/observability/tracing.service.js.map +1 -0
  64. package/dist/core/progress/progress-notifier.service.d.ts +16 -0
  65. package/dist/core/progress/progress-notifier.service.js +96 -0
  66. package/dist/core/progress/progress-notifier.service.js.map +1 -0
  67. package/dist/core/rate-limiting/rate-limit.interface.d.ts +11 -0
  68. package/dist/core/rate-limiting/rate-limit.interface.js +3 -0
  69. package/dist/core/rate-limiting/rate-limit.interface.js.map +1 -0
  70. package/dist/core/rate-limiting/rate-limiter.service.d.ts +13 -0
  71. package/dist/core/rate-limiting/rate-limiter.service.js +147 -0
  72. package/dist/core/rate-limiting/rate-limiter.service.js.map +1 -0
  73. package/dist/core/resilience/circuit-breaker.interface.d.ts +15 -0
  74. package/dist/core/resilience/circuit-breaker.interface.js +3 -0
  75. package/dist/core/resilience/circuit-breaker.interface.js.map +1 -0
  76. package/dist/core/resilience/circuit-breaker.service.d.ts +11 -0
  77. package/dist/core/resilience/circuit-breaker.service.js +117 -0
  78. package/dist/core/resilience/circuit-breaker.service.js.map +1 -0
  79. package/dist/core/resilience/retry.service.d.ts +6 -0
  80. package/dist/core/resilience/retry.service.js +66 -0
  81. package/dist/core/resilience/retry.service.js.map +1 -0
  82. package/dist/core/utils/decorator-scanner.d.ts +4 -0
  83. package/dist/core/utils/decorator-scanner.js +112 -0
  84. package/dist/core/utils/decorator-scanner.js.map +1 -0
  85. package/dist/core/utils/sanitize.util.d.ts +2 -0
  86. package/dist/core/utils/sanitize.util.js +48 -0
  87. package/dist/core/utils/sanitize.util.js.map +1 -1
  88. package/dist/decorators/factory-provider.d.ts +2 -0
  89. package/dist/decorators/factory-provider.js +20 -0
  90. package/dist/decorators/factory-provider.js.map +1 -0
  91. package/dist/decorators/index.d.ts +7 -0
  92. package/dist/decorators/index.js +28 -0
  93. package/dist/decorators/index.js.map +1 -0
  94. package/dist/decorators/mcp-context.decorator.d.ts +3 -0
  95. package/dist/decorators/mcp-context.decorator.js +20 -0
  96. package/dist/decorators/mcp-context.decorator.js.map +1 -0
  97. package/dist/decorators/mcp-error-handler.decorator.d.ts +4 -0
  98. package/dist/decorators/mcp-error-handler.decorator.js +15 -0
  99. package/dist/decorators/mcp-error-handler.decorator.js.map +1 -0
  100. package/dist/decorators/mcp-middleware.decorator.d.ts +4 -0
  101. package/dist/decorators/mcp-middleware.decorator.js +17 -0
  102. package/dist/decorators/mcp-middleware.decorator.js.map +1 -0
  103. package/dist/decorators/mcp-param.decorator.d.ts +10 -0
  104. package/dist/decorators/mcp-param.decorator.js +41 -0
  105. package/dist/decorators/mcp-param.decorator.js.map +1 -0
  106. package/dist/decorators/mcp-service.decorator.d.ts +6 -0
  107. package/dist/decorators/mcp-service.decorator.js +27 -0
  108. package/dist/decorators/mcp-service.decorator.js.map +1 -0
  109. package/dist/decorators/mcp-tool.decorator.d.ts +28 -0
  110. package/dist/decorators/mcp-tool.decorator.js +36 -0
  111. package/dist/decorators/mcp-tool.decorator.js.map +1 -0
  112. package/dist/index.d.ts +12 -1
  113. package/dist/index.js +30 -1
  114. package/dist/index.js.map +1 -1
  115. package/dist/interface/interface.interface.d.ts +2 -0
  116. package/dist/interface/jsonrpc.interface.d.ts +8 -0
  117. package/dist/interface/jsonrpc.interface.js.map +1 -1
  118. package/dist/interface/mcp-protocol.interface.d.ts +14 -0
  119. package/dist/interface/mcp-protocol.interface.js.map +1 -1
  120. package/dist/standalone/core-services.d.ts +29 -0
  121. package/dist/standalone/core-services.js +94 -0
  122. package/dist/standalone/core-services.js.map +1 -0
  123. package/dist/standalone/index.d.ts +3 -0
  124. package/dist/standalone/index.js +11 -0
  125. package/dist/standalone/index.js.map +1 -0
  126. package/dist/standalone/standalone-server.d.ts +23 -0
  127. package/dist/standalone/standalone-server.js +366 -0
  128. package/dist/standalone/standalone-server.js.map +1 -0
  129. package/dist/standalone/types.d.ts +14 -0
  130. package/dist/standalone/types.js +3 -0
  131. package/dist/standalone/types.js.map +1 -0
  132. package/dist/testing/index.d.ts +3 -0
  133. package/dist/testing/index.js +14 -0
  134. package/dist/testing/index.js.map +1 -0
  135. package/dist/testing/mock-context.d.ts +2 -0
  136. package/dist/testing/mock-context.js +17 -0
  137. package/dist/testing/mock-context.js.map +1 -0
  138. package/dist/testing/test-app.factory.d.ts +15 -0
  139. package/dist/testing/test-app.factory.js +37 -0
  140. package/dist/testing/test-app.factory.js.map +1 -0
  141. package/dist/testing/test-helpers.d.ts +10 -0
  142. package/dist/testing/test-helpers.js +46 -0
  143. package/dist/testing/test-helpers.js.map +1 -0
  144. package/dist/tooling/tool-registry/tool-registry.service.d.ts +7 -1
  145. package/dist/tooling/tool-registry/tool-registry.service.js +40 -3
  146. package/dist/tooling/tool-registry/tool-registry.service.js.map +1 -1
  147. package/dist/tooling/tool.interface.d.ts +9 -2
  148. package/dist/tsconfig.build.tsbuildinfo +1 -1
  149. package/dist/validation/index.d.ts +1 -0
  150. package/dist/validation/index.js +8 -0
  151. package/dist/validation/index.js.map +1 -0
  152. package/dist/validation/zod-integration.d.ts +11 -0
  153. package/dist/validation/zod-integration.js +148 -0
  154. package/dist/validation/zod-integration.js.map +1 -0
  155. package/package.json +4 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory-provider.js","sourceRoot":"","sources":["../../src/decorators/factory-provider.ts"],"names":[],"mappings":";;AAiBA,sDAwBC;AAxCD,mEAA8D;AAgB9D,SAAgB,qBAAqB,CACnC,MAAiC,EACjC,OAA+B;IAG/B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE;YAE3B,MAAM,oBAAoB,GAAG,IAAA,2CAAmB,EAAC,MAAM,CAAC,CAAC;YAGzD,MAAM,YAAY,GAAG,oBAAoB;iBACtC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;iBACjC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC;YAGhD,OAAO,IAAI,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC;QACrC,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,OAAO;KACpB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { McpContext, getContextParameterIndices } from "./mcp-context.decorator";
2
+ export { McpService, getServiceFactories } from "./mcp-service.decorator";
3
+ export { createFactoryProvider } from "./factory-provider";
4
+ export { McpParam, getParamSchema, getAllParamSchemas, getParamSchemasAsJsonSchema } from "./mcp-param.decorator";
5
+ export { McpTool, getToolMetadata, getToolMethods, isToolMethod, type McpToolOptions, type RateLimitConfig, type RetryConfig, type ToolMethodMetadata, } from "./mcp-tool.decorator";
6
+ export { McpErrorHandler, getErrorHandler } from "./mcp-error-handler.decorator";
7
+ export { McpMiddleware, getMiddlewares } from "./mcp-middleware.decorator";
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMiddlewares = exports.McpMiddleware = exports.getErrorHandler = exports.McpErrorHandler = exports.isToolMethod = exports.getToolMethods = exports.getToolMetadata = exports.McpTool = exports.getParamSchemasAsJsonSchema = exports.getAllParamSchemas = exports.getParamSchema = exports.McpParam = exports.createFactoryProvider = exports.getServiceFactories = exports.McpService = exports.getContextParameterIndices = exports.McpContext = void 0;
4
+ var mcp_context_decorator_1 = require("./mcp-context.decorator");
5
+ Object.defineProperty(exports, "McpContext", { enumerable: true, get: function () { return mcp_context_decorator_1.McpContext; } });
6
+ Object.defineProperty(exports, "getContextParameterIndices", { enumerable: true, get: function () { return mcp_context_decorator_1.getContextParameterIndices; } });
7
+ var mcp_service_decorator_1 = require("./mcp-service.decorator");
8
+ Object.defineProperty(exports, "McpService", { enumerable: true, get: function () { return mcp_service_decorator_1.McpService; } });
9
+ Object.defineProperty(exports, "getServiceFactories", { enumerable: true, get: function () { return mcp_service_decorator_1.getServiceFactories; } });
10
+ var factory_provider_1 = require("./factory-provider");
11
+ Object.defineProperty(exports, "createFactoryProvider", { enumerable: true, get: function () { return factory_provider_1.createFactoryProvider; } });
12
+ var mcp_param_decorator_1 = require("./mcp-param.decorator");
13
+ Object.defineProperty(exports, "McpParam", { enumerable: true, get: function () { return mcp_param_decorator_1.McpParam; } });
14
+ Object.defineProperty(exports, "getParamSchema", { enumerable: true, get: function () { return mcp_param_decorator_1.getParamSchema; } });
15
+ Object.defineProperty(exports, "getAllParamSchemas", { enumerable: true, get: function () { return mcp_param_decorator_1.getAllParamSchemas; } });
16
+ Object.defineProperty(exports, "getParamSchemasAsJsonSchema", { enumerable: true, get: function () { return mcp_param_decorator_1.getParamSchemasAsJsonSchema; } });
17
+ var mcp_tool_decorator_1 = require("./mcp-tool.decorator");
18
+ Object.defineProperty(exports, "McpTool", { enumerable: true, get: function () { return mcp_tool_decorator_1.McpTool; } });
19
+ Object.defineProperty(exports, "getToolMetadata", { enumerable: true, get: function () { return mcp_tool_decorator_1.getToolMetadata; } });
20
+ Object.defineProperty(exports, "getToolMethods", { enumerable: true, get: function () { return mcp_tool_decorator_1.getToolMethods; } });
21
+ Object.defineProperty(exports, "isToolMethod", { enumerable: true, get: function () { return mcp_tool_decorator_1.isToolMethod; } });
22
+ var mcp_error_handler_decorator_1 = require("./mcp-error-handler.decorator");
23
+ Object.defineProperty(exports, "McpErrorHandler", { enumerable: true, get: function () { return mcp_error_handler_decorator_1.McpErrorHandler; } });
24
+ Object.defineProperty(exports, "getErrorHandler", { enumerable: true, get: function () { return mcp_error_handler_decorator_1.getErrorHandler; } });
25
+ var mcp_middleware_decorator_1 = require("./mcp-middleware.decorator");
26
+ Object.defineProperty(exports, "McpMiddleware", { enumerable: true, get: function () { return mcp_middleware_decorator_1.McpMiddleware; } });
27
+ Object.defineProperty(exports, "getMiddlewares", { enumerable: true, get: function () { return mcp_middleware_decorator_1.getMiddlewares; } });
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":";;;AAAA,iEAAiF;AAAxE,mHAAA,UAAU,OAAA;AAAE,mIAAA,0BAA0B,OAAA;AAC/C,iEAA0E;AAAjE,mHAAA,UAAU,OAAA;AAAE,4HAAA,mBAAmB,OAAA;AACxC,uDAA2D;AAAlD,yHAAA,qBAAqB,OAAA;AAC9B,6DAAkH;AAAzG,+GAAA,QAAQ,OAAA;AAAE,qHAAA,cAAc,OAAA;AAAE,yHAAA,kBAAkB,OAAA;AAAE,kIAAA,2BAA2B,OAAA;AAClF,2DAS8B;AAR5B,6GAAA,OAAO,OAAA;AACP,qHAAA,eAAe,OAAA;AACf,oHAAA,cAAc,OAAA;AACd,kHAAA,YAAY,OAAA;AAMd,6EAAiF;AAAxE,8HAAA,eAAe,OAAA;AAAE,8HAAA,eAAe,OAAA;AACzC,uEAA2E;AAAlE,yHAAA,aAAa,OAAA;AAAE,0HAAA,cAAc,OAAA"}
@@ -0,0 +1,3 @@
1
+ import "reflect-metadata";
2
+ export declare function McpContext(): ParameterDecorator;
3
+ export declare function getContextParameterIndices(target: any, propertyKey: string | symbol): number[];
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.McpContext = McpContext;
4
+ exports.getContextParameterIndices = getContextParameterIndices;
5
+ require("reflect-metadata");
6
+ const MCP_CONTEXT_METADATA_KEY = Symbol("mcp:context");
7
+ function McpContext() {
8
+ return (target, propertyKey, parameterIndex) => {
9
+ if (propertyKey === undefined) {
10
+ return;
11
+ }
12
+ const existingContextParams = Reflect.getMetadata(MCP_CONTEXT_METADATA_KEY, target, propertyKey) || [];
13
+ existingContextParams.push(parameterIndex);
14
+ Reflect.defineMetadata(MCP_CONTEXT_METADATA_KEY, existingContextParams, target, propertyKey);
15
+ };
16
+ }
17
+ function getContextParameterIndices(target, propertyKey) {
18
+ return Reflect.getMetadata(MCP_CONTEXT_METADATA_KEY, target, propertyKey) || [];
19
+ }
20
+ //# sourceMappingURL=mcp-context.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-context.decorator.js","sourceRoot":"","sources":["../../src/decorators/mcp-context.decorator.ts"],"names":[],"mappings":";;AAqBA,gCAaC;AAMD,gEAKC;AA7CD,4BAA0B;AAK1B,MAAM,wBAAwB,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;AAgBvD,SAAgB,UAAU;IACxB,OAAO,CAAC,MAAW,EAAE,WAAwC,EAAE,cAAsB,EAAE,EAAE;QACvF,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAGD,MAAM,qBAAqB,GACzB,OAAO,CAAC,WAAW,CAAC,wBAAwB,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;QAE3E,qBAAqB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3C,OAAO,CAAC,cAAc,CAAC,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/F,CAAC,CAAC;AACJ,CAAC;AAMD,SAAgB,0BAA0B,CACxC,MAAW,EACX,WAA4B;IAE5B,OAAO,OAAO,CAAC,WAAW,CAAC,wBAAwB,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;AAClF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import "reflect-metadata";
2
+ import { ErrorHandler } from "../core/errors/error-handler.interface";
3
+ export declare function McpErrorHandler(handler: ErrorHandler): ClassDecorator;
4
+ export declare function getErrorHandler(target: any): ErrorHandler | undefined;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.McpErrorHandler = McpErrorHandler;
4
+ exports.getErrorHandler = getErrorHandler;
5
+ require("reflect-metadata");
6
+ const MCP_ERROR_HANDLER_METADATA_KEY = Symbol("mcp:error:handler");
7
+ function McpErrorHandler(handler) {
8
+ return (target) => {
9
+ Reflect.defineMetadata(MCP_ERROR_HANDLER_METADATA_KEY, handler, target);
10
+ };
11
+ }
12
+ function getErrorHandler(target) {
13
+ return Reflect.getMetadata(MCP_ERROR_HANDLER_METADATA_KEY, target);
14
+ }
15
+ //# sourceMappingURL=mcp-error-handler.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-error-handler.decorator.js","sourceRoot":"","sources":["../../src/decorators/mcp-error-handler.decorator.ts"],"names":[],"mappings":";;AAoBA,0CAIC;AAMD,0CAEC;AAhCD,4BAA0B;AAM1B,MAAM,8BAA8B,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAcnE,SAAgB,eAAe,CAAC,OAAqB;IACnD,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,OAAO,CAAC,cAAc,CAAC,8BAA8B,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC,CAAC;AACJ,CAAC;AAMD,SAAgB,eAAe,CAAC,MAAW;IACzC,OAAO,OAAO,CAAC,WAAW,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC;AACrE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import "reflect-metadata";
2
+ import { Middleware } from "../core/middleware/middleware.interface";
3
+ export declare function McpMiddleware(middleware: Middleware): ClassDecorator;
4
+ export declare function getMiddlewares(target: any): Middleware[];
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.McpMiddleware = McpMiddleware;
4
+ exports.getMiddlewares = getMiddlewares;
5
+ require("reflect-metadata");
6
+ const MCP_MIDDLEWARE_METADATA_KEY = Symbol("mcp:middleware");
7
+ function McpMiddleware(middleware) {
8
+ return (target) => {
9
+ const existingMiddlewares = Reflect.getMetadata(MCP_MIDDLEWARE_METADATA_KEY, target) || [];
10
+ existingMiddlewares.push(middleware);
11
+ Reflect.defineMetadata(MCP_MIDDLEWARE_METADATA_KEY, existingMiddlewares, target);
12
+ };
13
+ }
14
+ function getMiddlewares(target) {
15
+ return Reflect.getMetadata(MCP_MIDDLEWARE_METADATA_KEY, target) || [];
16
+ }
17
+ //# sourceMappingURL=mcp-middleware.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-middleware.decorator.js","sourceRoot":"","sources":["../../src/decorators/mcp-middleware.decorator.ts"],"names":[],"mappings":";;AAsBA,sCAOC;AAMD,wCAEC;AArCD,4BAA0B;AAM1B,MAAM,2BAA2B,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAgB7D,SAAgB,aAAa,CAAC,UAAsB;IAClD,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,MAAM,mBAAmB,GACvB,OAAO,CAAC,WAAW,CAAC,2BAA2B,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QACjE,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrC,OAAO,CAAC,cAAc,CAAC,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;IACnF,CAAC,CAAC;AACJ,CAAC;AAMD,SAAgB,cAAc,CAAC,MAAW;IACxC,OAAO,OAAO,CAAC,WAAW,CAAC,2BAA2B,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AACxE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import "reflect-metadata";
2
+ import { z } from "zod";
3
+ export declare function McpParam<T extends z.ZodTypeAny>(schema: T): ParameterDecorator;
4
+ export declare function getParamSchema(target: any, propertyKey: string | symbol, parameterIndex: number): z.ZodTypeAny | undefined;
5
+ export declare function getAllParamSchemas(target: any, propertyKey: string | symbol): Map<number, z.ZodTypeAny>;
6
+ export declare function getParamSchemasAsJsonSchema(target: any, propertyKey: string | symbol): {
7
+ type: "object";
8
+ properties?: Record<string, any>;
9
+ required?: string[];
10
+ } | null;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.McpParam = McpParam;
4
+ exports.getParamSchema = getParamSchema;
5
+ exports.getAllParamSchemas = getAllParamSchemas;
6
+ exports.getParamSchemasAsJsonSchema = getParamSchemasAsJsonSchema;
7
+ require("reflect-metadata");
8
+ const zod_integration_1 = require("../validation/zod-integration");
9
+ const MCP_PARAM_SCHEMA_METADATA_KEY = Symbol("mcp:param:schema");
10
+ const MCP_PARAM_INDEX_METADATA_KEY = Symbol("mcp:param:index");
11
+ function McpParam(schema) {
12
+ return (target, propertyKey, parameterIndex) => {
13
+ if (propertyKey === undefined) {
14
+ return;
15
+ }
16
+ const existingSchemas = Reflect.getMetadata(MCP_PARAM_SCHEMA_METADATA_KEY, target, propertyKey) || new Map();
17
+ existingSchemas.set(parameterIndex, schema);
18
+ Reflect.defineMetadata(MCP_PARAM_SCHEMA_METADATA_KEY, existingSchemas, target, propertyKey);
19
+ const existingIndices = Reflect.getMetadata(MCP_PARAM_INDEX_METADATA_KEY, target, propertyKey) || [];
20
+ if (!existingIndices.includes(parameterIndex)) {
21
+ existingIndices.push(parameterIndex);
22
+ Reflect.defineMetadata(MCP_PARAM_INDEX_METADATA_KEY, existingIndices, target, propertyKey);
23
+ }
24
+ };
25
+ }
26
+ function getParamSchema(target, propertyKey, parameterIndex) {
27
+ const schemas = Reflect.getMetadata(MCP_PARAM_SCHEMA_METADATA_KEY, target, propertyKey) || new Map();
28
+ return schemas.get(parameterIndex);
29
+ }
30
+ function getAllParamSchemas(target, propertyKey) {
31
+ return Reflect.getMetadata(MCP_PARAM_SCHEMA_METADATA_KEY, target, propertyKey) || new Map();
32
+ }
33
+ function getParamSchemasAsJsonSchema(target, propertyKey) {
34
+ const schemas = getAllParamSchemas(target, propertyKey);
35
+ const paramsSchema = schemas.get(0);
36
+ if (!paramsSchema) {
37
+ return null;
38
+ }
39
+ return (0, zod_integration_1.zodToJsonSchema)(paramsSchema);
40
+ }
41
+ //# sourceMappingURL=mcp-param.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-param.decorator.js","sourceRoot":"","sources":["../../src/decorators/mcp-param.decorator.ts"],"names":[],"mappings":";;AA+BA,4BAsBC;AAMD,wCAQC;AAMD,gDAKC;AAMD,kEAgBC;AApGD,4BAA0B;AAE1B,mEAAgE;AAKhE,MAAM,6BAA6B,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACjE,MAAM,4BAA4B,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAuB/D,SAAgB,QAAQ,CAAyB,MAAS;IACxD,OAAO,CAAC,MAAW,EAAE,WAAwC,EAAE,cAAsB,EAAE,EAAE;QACvF,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAGD,MAAM,eAAe,GACnB,OAAO,CAAC,WAAW,CAAC,6BAA6B,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;QAEvF,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC5C,OAAO,CAAC,cAAc,CAAC,6BAA6B,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QAG5F,MAAM,eAAe,GACnB,OAAO,CAAC,WAAW,CAAC,4BAA4B,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;QAE/E,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YAC9C,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACrC,OAAO,CAAC,cAAc,CAAC,4BAA4B,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAMD,SAAgB,cAAc,CAC5B,MAAW,EACX,WAA4B,EAC5B,cAAsB;IAEtB,MAAM,OAAO,GACX,OAAO,CAAC,WAAW,CAAC,6BAA6B,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IACvF,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AACrC,CAAC;AAMD,SAAgB,kBAAkB,CAChC,MAAW,EACX,WAA4B;IAE5B,OAAO,OAAO,CAAC,WAAW,CAAC,6BAA6B,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;AAC9F,CAAC;AAMD,SAAgB,2BAA2B,CACzC,MAAW,EACX,WAA4B;IAE5B,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAIxD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEpC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAGD,OAAO,IAAA,iCAAe,EAAC,YAAY,CAA8E,CAAC;AACpH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import "reflect-metadata";
2
+ export declare function McpService<T = any>(factory: () => T): ParameterDecorator;
3
+ export declare function getServiceFactories(target: any, propertyKey?: string | symbol): Array<{
4
+ index: number;
5
+ factory: () => any;
6
+ }>;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.McpService = McpService;
4
+ exports.getServiceFactories = getServiceFactories;
5
+ require("reflect-metadata");
6
+ const MCP_SERVICE_FACTORY_METADATA_KEY = Symbol("mcp:service:factory");
7
+ function McpService(factory) {
8
+ return (target, propertyKey, parameterIndex) => {
9
+ if (propertyKey !== undefined) {
10
+ const existingFactories = Reflect.getMetadata(MCP_SERVICE_FACTORY_METADATA_KEY, target, propertyKey) || [];
11
+ existingFactories.push({ index: parameterIndex, factory });
12
+ Reflect.defineMetadata(MCP_SERVICE_FACTORY_METADATA_KEY, existingFactories, target, propertyKey);
13
+ }
14
+ else {
15
+ const existingFactories = Reflect.getMetadata(MCP_SERVICE_FACTORY_METADATA_KEY, target) || [];
16
+ existingFactories.push({ index: parameterIndex, factory });
17
+ Reflect.defineMetadata(MCP_SERVICE_FACTORY_METADATA_KEY, existingFactories, target);
18
+ }
19
+ };
20
+ }
21
+ function getServiceFactories(target, propertyKey) {
22
+ if (propertyKey !== undefined) {
23
+ return Reflect.getMetadata(MCP_SERVICE_FACTORY_METADATA_KEY, target, propertyKey) || [];
24
+ }
25
+ return Reflect.getMetadata(MCP_SERVICE_FACTORY_METADATA_KEY, target) || [];
26
+ }
27
+ //# sourceMappingURL=mcp-service.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-service.decorator.js","sourceRoot":"","sources":["../../src/decorators/mcp-service.decorator.ts"],"names":[],"mappings":";;AAuBA,gCAkBC;AAMD,kDAQC;AAvDD,4BAA0B;AAK1B,MAAM,gCAAgC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAkBvE,SAAgB,UAAU,CAAU,OAAgB;IAClD,OAAO,CAAC,MAAW,EAAE,WAAwC,EAAE,cAAsB,EAAE,EAAE;QACvF,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAE9B,MAAM,iBAAiB,GACrB,OAAO,CAAC,WAAW,CAAC,gCAAgC,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;YAEnF,iBAAiB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC;YAC3D,OAAO,CAAC,cAAc,CAAC,gCAAgC,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QACnG,CAAC;aAAM,CAAC;YAEN,MAAM,iBAAiB,GACrB,OAAO,CAAC,WAAW,CAAC,gCAAgC,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YAEtE,iBAAiB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC;YAC3D,OAAO,CAAC,cAAc,CAAC,gCAAgC,EAAE,iBAAiB,EAAE,MAAM,CAAC,CAAC;QACtF,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAMD,SAAgB,mBAAmB,CACjC,MAAW,EACX,WAA6B;IAE7B,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,OAAO,CAAC,WAAW,CAAC,gCAAgC,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;IAC1F,CAAC;IACD,OAAO,OAAO,CAAC,WAAW,CAAC,gCAAgC,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AAC7E,CAAC"}
@@ -0,0 +1,28 @@
1
+ import "reflect-metadata";
2
+ export interface RateLimitConfig {
3
+ max: number;
4
+ window: string;
5
+ }
6
+ export interface RetryConfig {
7
+ maxAttempts: number;
8
+ backoff: "exponential" | "linear" | "fixed";
9
+ initialDelay?: number;
10
+ maxDelay?: number;
11
+ }
12
+ export interface McpToolOptions {
13
+ name: string;
14
+ description: string;
15
+ requiredScopes?: string[];
16
+ rateLimit?: RateLimitConfig;
17
+ retry?: RetryConfig;
18
+ version?: string;
19
+ icon?: string;
20
+ }
21
+ export interface ToolMethodMetadata extends McpToolOptions {
22
+ methodName: string;
23
+ target: any;
24
+ }
25
+ export declare function McpTool(options: McpToolOptions): MethodDecorator;
26
+ export declare function getToolMetadata(target: any, propertyKey: string | symbol): ToolMethodMetadata | undefined;
27
+ export declare function getToolMethods(target: any): ToolMethodMetadata[];
28
+ export declare function isToolMethod(target: any, propertyKey: string | symbol): boolean;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.McpTool = McpTool;
4
+ exports.getToolMetadata = getToolMetadata;
5
+ exports.getToolMethods = getToolMethods;
6
+ exports.isToolMethod = isToolMethod;
7
+ require("reflect-metadata");
8
+ const MCP_TOOL_METADATA_KEY = Symbol("mcp:tool");
9
+ const MCP_TOOL_METHODS_METADATA_KEY = Symbol("mcp:tool:methods");
10
+ function McpTool(options) {
11
+ return (target, propertyKey, descriptor) => {
12
+ if (!options.name || !options.description) {
13
+ throw new Error(`@McpTool decorator requires 'name' and 'description' options. Found on ${target.constructor.name}.${String(propertyKey)}`);
14
+ }
15
+ const methodName = String(propertyKey);
16
+ const metadata = {
17
+ ...options,
18
+ methodName,
19
+ target,
20
+ };
21
+ Reflect.defineMetadata(MCP_TOOL_METADATA_KEY, metadata, target, propertyKey);
22
+ const existingMethods = Reflect.getMetadata(MCP_TOOL_METHODS_METADATA_KEY, target) || [];
23
+ existingMethods.push(metadata);
24
+ Reflect.defineMetadata(MCP_TOOL_METHODS_METADATA_KEY, existingMethods, target);
25
+ };
26
+ }
27
+ function getToolMetadata(target, propertyKey) {
28
+ return Reflect.getMetadata(MCP_TOOL_METADATA_KEY, target, propertyKey);
29
+ }
30
+ function getToolMethods(target) {
31
+ return Reflect.getMetadata(MCP_TOOL_METHODS_METADATA_KEY, target) || [];
32
+ }
33
+ function isToolMethod(target, propertyKey) {
34
+ return Reflect.hasMetadata(MCP_TOOL_METADATA_KEY, target, propertyKey);
35
+ }
36
+ //# sourceMappingURL=mcp-tool.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-tool.decorator.js","sourceRoot":"","sources":["../../src/decorators/mcp-tool.decorator.ts"],"names":[],"mappings":";;AAkFA,0BAwBC;AAMD,0CAKC;AAMD,wCAEC;AAMD,oCAEC;AArID,4BAA0B;AAK1B,MAAM,qBAAqB,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AACjD,MAAM,6BAA6B,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AA4EjE,SAAgB,OAAO,CAAC,OAAuB;IAC7C,OAAO,CAAC,MAAW,EAAE,WAA4B,EAAE,UAA8B,EAAE,EAAE;QACnF,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,0EAA0E,MAAM,CAAC,WAAW,CAAC,IAAI,IAAI,MAAM,CAAC,WAAW,CAAC,EAAE,CAC3H,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAuB;YACnC,GAAG,OAAO;YACV,UAAU;YACV,MAAM;SACP,CAAC;QAGF,OAAO,CAAC,cAAc,CAAC,qBAAqB,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QAG7E,MAAM,eAAe,GACnB,OAAO,CAAC,WAAW,CAAC,6BAA6B,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QACnE,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,OAAO,CAAC,cAAc,CAAC,6BAA6B,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;IACjF,CAAC,CAAC;AACJ,CAAC;AAMD,SAAgB,eAAe,CAC7B,MAAW,EACX,WAA4B;IAE5B,OAAO,OAAO,CAAC,WAAW,CAAC,qBAAqB,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;AACzE,CAAC;AAMD,SAAgB,cAAc,CAAC,MAAW;IACxC,OAAO,OAAO,CAAC,WAAW,CAAC,6BAA6B,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AAC1E,CAAC;AAMD,SAAgB,YAAY,CAAC,MAAW,EAAE,WAA4B;IACpE,OAAO,OAAO,CAAC,WAAW,CAAC,qBAAqB,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;AACzE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -3,10 +3,21 @@ export type { McpConfig, ToolRegistrationInput, ServerInfo, } from './config/mcp
3
3
  export type { IInterfaceLayer } from './interface/interface.interface';
4
4
  export type { JsonRpcRequest, JsonRpcResponse, JsonRpcError, } from './interface/jsonrpc.interface';
5
5
  export { JsonRpcErrorCode } from './interface/jsonrpc.interface';
6
- export type { InitializeParams, InitializeResult, ListToolsResult, McpTool, CallToolParams, CallToolResult, } from './interface/mcp-protocol.interface';
6
+ export type { InitializeParams, InitializeResult, ListToolsResult, McpTool as McpToolDefinition, CallToolParams, CallToolResult, } from './interface/mcp-protocol.interface';
7
7
  export { McpErrorCode } from './interface/mcp-protocol.interface';
8
8
  export type { ToolDefinition, ToolParameter, ToolFunction, } from './tooling/tool.interface';
9
9
  export { EasyMcpError, ConfigurationError, ToolExecutionError, ToolNotFoundError, } from './core/errors/easy-mcp-error';
10
10
  export { ToolNamingValidator } from './core/utils/tool-naming-validator';
11
11
  export { INTERFACE_LAYER_TOKEN } from './config/constants';
12
12
  export { VERSION, PACKAGE_NAME, getVersion, getPackageName } from './config/version';
13
+ export type { McpContext } from './core/context/mcp-context.interface';
14
+ export { McpContext as McpContextDecorator, McpService, createFactoryProvider, McpParam, McpTool, McpErrorHandler, McpMiddleware, type McpToolOptions, type RateLimitConfig, type RetryConfig, } from './decorators';
15
+ export { zodToJsonSchema, validateWithZod, safeValidateWithZod } from './validation';
16
+ export { createMcpExpressRouter } from './adapters/express';
17
+ export type { CreateMcpExpressRouterOptions, McpAuthMiddleware } from './adapters/express';
18
+ export { OAuthProviderService, createOAuthMiddleware } from './auth/oauth';
19
+ export type { OAuthProviderConfig, OAuthConfig, OAuthTokenValidator, OAuthContextExtractor } from './auth/oauth';
20
+ export { createMcpServer, StandaloneMcpServer } from './standalone';
21
+ export type { CreateMcpServerOptions, StandaloneTransport, StandaloneAuthFunction } from './standalone';
22
+ export { createMcpTestApp, McpTestApp, mockMcpContext } from './testing';
23
+ export { createMockJsonRpcRequest, createMockTool, wait, createMockCancellationToken } from './testing';
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPackageName = exports.getVersion = exports.PACKAGE_NAME = exports.VERSION = exports.INTERFACE_LAYER_TOKEN = exports.ToolNamingValidator = exports.ToolNotFoundError = exports.ToolExecutionError = exports.ConfigurationError = exports.EasyMcpError = exports.McpErrorCode = exports.JsonRpcErrorCode = exports.EasyMCP = void 0;
3
+ exports.createMockCancellationToken = exports.wait = exports.createMockTool = exports.createMockJsonRpcRequest = exports.mockMcpContext = exports.McpTestApp = exports.createMcpTestApp = exports.StandaloneMcpServer = exports.createMcpServer = exports.createOAuthMiddleware = exports.OAuthProviderService = exports.createMcpExpressRouter = exports.safeValidateWithZod = exports.validateWithZod = exports.zodToJsonSchema = exports.McpMiddleware = exports.McpErrorHandler = exports.McpTool = exports.McpParam = exports.createFactoryProvider = exports.McpService = exports.McpContextDecorator = exports.getPackageName = exports.getVersion = exports.PACKAGE_NAME = exports.VERSION = exports.INTERFACE_LAYER_TOKEN = exports.ToolNamingValidator = exports.ToolNotFoundError = exports.ToolExecutionError = exports.ConfigurationError = exports.EasyMcpError = exports.McpErrorCode = exports.JsonRpcErrorCode = exports.EasyMCP = void 0;
4
4
  var EasyMCP_1 = require("./EasyMCP");
5
5
  Object.defineProperty(exports, "EasyMCP", { enumerable: true, get: function () { return EasyMCP_1.EasyMCP; } });
6
6
  var jsonrpc_interface_1 = require("./interface/jsonrpc.interface");
@@ -21,4 +21,33 @@ Object.defineProperty(exports, "VERSION", { enumerable: true, get: function () {
21
21
  Object.defineProperty(exports, "PACKAGE_NAME", { enumerable: true, get: function () { return version_1.PACKAGE_NAME; } });
22
22
  Object.defineProperty(exports, "getVersion", { enumerable: true, get: function () { return version_1.getVersion; } });
23
23
  Object.defineProperty(exports, "getPackageName", { enumerable: true, get: function () { return version_1.getPackageName; } });
24
+ var decorators_1 = require("./decorators");
25
+ Object.defineProperty(exports, "McpContextDecorator", { enumerable: true, get: function () { return decorators_1.McpContext; } });
26
+ Object.defineProperty(exports, "McpService", { enumerable: true, get: function () { return decorators_1.McpService; } });
27
+ Object.defineProperty(exports, "createFactoryProvider", { enumerable: true, get: function () { return decorators_1.createFactoryProvider; } });
28
+ Object.defineProperty(exports, "McpParam", { enumerable: true, get: function () { return decorators_1.McpParam; } });
29
+ Object.defineProperty(exports, "McpTool", { enumerable: true, get: function () { return decorators_1.McpTool; } });
30
+ Object.defineProperty(exports, "McpErrorHandler", { enumerable: true, get: function () { return decorators_1.McpErrorHandler; } });
31
+ Object.defineProperty(exports, "McpMiddleware", { enumerable: true, get: function () { return decorators_1.McpMiddleware; } });
32
+ var validation_1 = require("./validation");
33
+ Object.defineProperty(exports, "zodToJsonSchema", { enumerable: true, get: function () { return validation_1.zodToJsonSchema; } });
34
+ Object.defineProperty(exports, "validateWithZod", { enumerable: true, get: function () { return validation_1.validateWithZod; } });
35
+ Object.defineProperty(exports, "safeValidateWithZod", { enumerable: true, get: function () { return validation_1.safeValidateWithZod; } });
36
+ var express_1 = require("./adapters/express");
37
+ Object.defineProperty(exports, "createMcpExpressRouter", { enumerable: true, get: function () { return express_1.createMcpExpressRouter; } });
38
+ var oauth_1 = require("./auth/oauth");
39
+ Object.defineProperty(exports, "OAuthProviderService", { enumerable: true, get: function () { return oauth_1.OAuthProviderService; } });
40
+ Object.defineProperty(exports, "createOAuthMiddleware", { enumerable: true, get: function () { return oauth_1.createOAuthMiddleware; } });
41
+ var standalone_1 = require("./standalone");
42
+ Object.defineProperty(exports, "createMcpServer", { enumerable: true, get: function () { return standalone_1.createMcpServer; } });
43
+ Object.defineProperty(exports, "StandaloneMcpServer", { enumerable: true, get: function () { return standalone_1.StandaloneMcpServer; } });
44
+ var testing_1 = require("./testing");
45
+ Object.defineProperty(exports, "createMcpTestApp", { enumerable: true, get: function () { return testing_1.createMcpTestApp; } });
46
+ Object.defineProperty(exports, "McpTestApp", { enumerable: true, get: function () { return testing_1.McpTestApp; } });
47
+ Object.defineProperty(exports, "mockMcpContext", { enumerable: true, get: function () { return testing_1.mockMcpContext; } });
48
+ var testing_2 = require("./testing");
49
+ Object.defineProperty(exports, "createMockJsonRpcRequest", { enumerable: true, get: function () { return testing_2.createMockJsonRpcRequest; } });
50
+ Object.defineProperty(exports, "createMockTool", { enumerable: true, get: function () { return testing_2.createMockTool; } });
51
+ Object.defineProperty(exports, "wait", { enumerable: true, get: function () { return testing_2.wait; } });
52
+ Object.defineProperty(exports, "createMockCancellationToken", { enumerable: true, get: function () { return testing_2.createMockCancellationToken; } });
24
53
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAmBhB,mEAAiE;AAAxD,qHAAA,gBAAgB,OAAA;AAYzB,6EAAkE;AAAzD,sHAAA,YAAY,OAAA;AAUrB,+DAKsC;AAJpC,8GAAA,YAAY,OAAA;AACZ,oHAAA,kBAAkB,OAAA;AAClB,oHAAA,kBAAkB,OAAA;AAClB,mHAAA,iBAAiB,OAAA;AAInB,4EAAyE;AAAhE,4HAAA,mBAAmB,OAAA;AAG5B,gDAA2D;AAAlD,kHAAA,qBAAqB,OAAA;AAG9B,4CAAqF;AAA5E,kGAAA,OAAO,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,qGAAA,UAAU,OAAA;AAAE,yGAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAmBhB,mEAAiE;AAAxD,qHAAA,gBAAgB,OAAA;AAYzB,6EAAkE;AAAzD,sHAAA,YAAY,OAAA;AAUrB,+DAKsC;AAJpC,8GAAA,YAAY,OAAA;AACZ,oHAAA,kBAAkB,OAAA;AAClB,oHAAA,kBAAkB,OAAA;AAClB,mHAAA,iBAAiB,OAAA;AAInB,4EAAyE;AAAhE,4HAAA,mBAAmB,OAAA;AAG5B,gDAA2D;AAAlD,kHAAA,qBAAqB,OAAA;AAG9B,4CAAqF;AAA5E,kGAAA,OAAO,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,qGAAA,UAAU,OAAA;AAAE,yGAAA,cAAc,OAAA;AAI1D,2CAWsB;AAVpB,iHAAA,UAAU,OAAuB;AACjC,wGAAA,UAAU,OAAA;AACV,mHAAA,qBAAqB,OAAA;AACrB,sGAAA,QAAQ,OAAA;AACR,qGAAA,OAAO,OAAA;AACP,6GAAA,eAAe,OAAA;AACf,2GAAA,aAAa,OAAA;AAOf,2CAAqF;AAA5E,6GAAA,eAAe,OAAA;AAAE,6GAAA,eAAe,OAAA;AAAE,iHAAA,mBAAmB,OAAA;AAG9D,8CAA4D;AAAnD,iHAAA,sBAAsB,OAAA;AAI/B,sCAA2E;AAAlE,6GAAA,oBAAoB,OAAA;AAAE,8GAAA,qBAAqB,OAAA;AAIpD,2CAAoE;AAA3D,6GAAA,eAAe,OAAA;AAAE,iHAAA,mBAAmB,OAAA;AAI7C,qCAAyE;AAAhE,2GAAA,gBAAgB,OAAA;AAAE,qGAAA,UAAU,OAAA;AAAE,yGAAA,cAAc,OAAA;AACrD,qCAAwG;AAA/F,mHAAA,wBAAwB,OAAA;AAAE,yGAAA,cAAc,OAAA;AAAE,+FAAA,IAAI,OAAA;AAAE,sHAAA,2BAA2B,OAAA"}
@@ -1,4 +1,6 @@
1
+ import type { ProgressNotification } from "./mcp-protocol.interface";
1
2
  export interface IInterfaceLayer {
2
3
  start(): Promise<void>;
3
4
  sendMessage(sessionId: string, output: any): Promise<void>;
5
+ sendNotification?(notification: ProgressNotification): void;
4
6
  }
@@ -3,6 +3,14 @@ export interface JsonRpcRequest {
3
3
  id: string | number | null;
4
4
  method: string;
5
5
  params?: any;
6
+ metadata?: {
7
+ userId?: string;
8
+ scopes?: string[];
9
+ buildingIds?: string[];
10
+ sessionId?: string;
11
+ metadata?: Record<string, any>;
12
+ [key: string]: any;
13
+ };
6
14
  }
7
15
  export interface JsonRpcResponse {
8
16
  jsonrpc: "2.0";
@@ -1 +1 @@
1
- {"version":3,"file":"jsonrpc.interface.js","sourceRoot":"","sources":["../../src/interface/jsonrpc.interface.ts"],"names":[],"mappings":";;;AA2CA,sDAUC;AAKD,oDASC;AAKD,gDAeC;AAvDD,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAC1B,wEAAmB,CAAA;IACnB,gFAAuB,CAAA;IACvB,gFAAuB,CAAA;IACvB,8EAAsB,CAAA;IACtB,8EAAsB,CAAA;AACxB,CAAC,EANW,gBAAgB,gCAAhB,gBAAgB,QAM3B;AAKD,SAAgB,qBAAqB,CAAC,GAAQ;IAC5C,OAAO,CACL,GAAG;QACH,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,CAAC,OAAO,KAAK,KAAK;QACrB,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAC9B,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI;YACd,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;YAC1B,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,CAAC,CAC9B,CAAC;AACJ,CAAC;AAKD,SAAgB,oBAAoB,CAClC,EAA0B,EAC1B,MAAW;IAEX,OAAO;QACL,OAAO,EAAE,KAAK;QACd,EAAE;QACF,MAAM;KACP,CAAC;AACJ,CAAC;AAKD,SAAgB,kBAAkB,CAChC,EAA0B,EAC1B,IAAY,EACZ,OAAe,EACf,IAAU;IAEV,OAAO;QACL,OAAO,EAAE,KAAK;QACd,EAAE;QACF,KAAK,EAAE;YACL,IAAI;YACJ,OAAO;YACP,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC;SACpC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"jsonrpc.interface.js","sourceRoot":"","sources":["../../src/interface/jsonrpc.interface.ts"],"names":[],"mappings":";;;AAoDA,sDAUC;AAKD,oDASC;AAKD,gDAeC;AAvDD,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAC1B,wEAAmB,CAAA;IACnB,gFAAuB,CAAA;IACvB,gFAAuB,CAAA;IACvB,8EAAsB,CAAA;IACtB,8EAAsB,CAAA;AACxB,CAAC,EANW,gBAAgB,gCAAhB,gBAAgB,QAM3B;AAKD,SAAgB,qBAAqB,CAAC,GAAQ;IAC5C,OAAO,CACL,GAAG;QACH,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,CAAC,OAAO,KAAK,KAAK;QACrB,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;QAC9B,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI;YACd,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;YAC1B,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,CAAC,CAC9B,CAAC;AACJ,CAAC;AAKD,SAAgB,oBAAoB,CAClC,EAA0B,EAC1B,MAAW;IAEX,OAAO;QACL,OAAO,EAAE,KAAK;QACd,EAAE;QACF,MAAM;KACP,CAAC;AACJ,CAAC;AAKD,SAAgB,kBAAkB,CAChC,EAA0B,EAC1B,IAAY,EACZ,OAAe,EACf,IAAU;IAEV,OAAO;QACL,OAAO,EAAE,KAAK;QACd,EAAE;QACF,KAAK,EAAE;YACL,IAAI;YACJ,OAAO;YACP,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC;SACpC;KACF,CAAC;AACJ,CAAC"}
@@ -53,6 +53,20 @@ export interface CallToolResult {
53
53
  }>;
54
54
  isError?: boolean;
55
55
  }
56
+ export interface BatchToolParams {
57
+ tools: Array<{
58
+ name: string;
59
+ arguments?: Record<string, any>;
60
+ }>;
61
+ }
62
+ export interface BatchToolResult {
63
+ results: Array<{
64
+ tool: string;
65
+ success: boolean;
66
+ result?: CallToolResult;
67
+ error?: string;
68
+ }>;
69
+ }
56
70
  export interface McpResource {
57
71
  uri: string;
58
72
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-protocol.interface.js","sourceRoot":"","sources":["../../src/interface/mcp-protocol.interface.ts"],"names":[],"mappings":";;;AA0RA,IAAY,YAaX;AAbD,WAAY,YAAY;IACtB,wEAAuB,CAAA;IACvB,wEAAuB,CAAA;IACvB,sEAAsB,CAAA;IACtB,sEAAsB,CAAA;IACtB,oEAAqB,CAAA;IACrB,gFAA2B,CAAA;IAC3B,4EAAyB,CAAA;IACzB,wEAAuB,CAAA;IACvB,oFAA6B,CAAA;IAC7B,8EAA0B,CAAA;IAC1B,0FAAgC,CAAA;IAChC,4EAAyB,CAAA;AAC3B,CAAC,EAbW,YAAY,4BAAZ,YAAY,QAavB"}
1
+ {"version":3,"file":"mcp-protocol.interface.js","sourceRoot":"","sources":["../../src/interface/mcp-protocol.interface.ts"],"names":[],"mappings":";;;AAgTA,IAAY,YAaX;AAbD,WAAY,YAAY;IACtB,wEAAuB,CAAA;IACvB,wEAAuB,CAAA;IACvB,sEAAsB,CAAA;IACtB,sEAAsB,CAAA;IACtB,oEAAqB,CAAA;IACrB,gFAA2B,CAAA;IAC3B,4EAAyB,CAAA;IACzB,wEAAuB,CAAA;IACvB,oFAA6B,CAAA;IAC7B,8EAA0B,CAAA;IAC1B,0FAAgC,CAAA;IAChC,4EAAyB,CAAA;AAC3B,CAAC,EAbW,YAAY,4BAAZ,YAAY,QAavB"}
@@ -0,0 +1,29 @@
1
+ import { ToolDefinition, CancellationToken } from "../tooling/tool.interface";
2
+ import { ToolRegistrationInput, ResourceRegistrationInput, PromptRegistrationInput } from "../config/mcp-config.interface";
3
+ import { McpContext } from "../core/context/mcp-context.interface";
4
+ export declare class StandaloneToolRegistry {
5
+ private readonly registry;
6
+ registerTool(toolInput: ToolRegistrationInput): void;
7
+ getTool(name: string): ToolDefinition | undefined;
8
+ executeTool(name: string, args: Record<string, any>, cancellationToken?: CancellationToken, context?: McpContext): Promise<any>;
9
+ getToolSchemasForLLM(): Array<{
10
+ type: "function";
11
+ function: {
12
+ name: string;
13
+ description: string;
14
+ parameters: any;
15
+ };
16
+ }>;
17
+ }
18
+ export declare class StandaloneResourceRegistry {
19
+ private readonly registry;
20
+ registerResource(resource: ResourceRegistrationInput): void;
21
+ getResource(uri: string): ResourceRegistrationInput | undefined;
22
+ getAllResources(): ResourceRegistrationInput[];
23
+ }
24
+ export declare class StandalonePromptRegistry {
25
+ private readonly registry;
26
+ registerPrompt(prompt: PromptRegistrationInput): void;
27
+ getPrompt(name: string): PromptRegistrationInput | undefined;
28
+ getAllPrompts(): PromptRegistrationInput[];
29
+ }
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StandalonePromptRegistry = exports.StandaloneResourceRegistry = exports.StandaloneToolRegistry = void 0;
4
+ const easy_mcp_error_1 = require("../core/errors/easy-mcp-error");
5
+ const schema_validator_1 = require("../core/utils/schema-validator");
6
+ const logger_util_1 = require("../core/utils/logger.util");
7
+ class StandaloneToolRegistry {
8
+ registry = new Map();
9
+ registerTool(toolInput) {
10
+ if (this.registry.has(toolInput.name)) {
11
+ throw new Error(`Tool name '${toolInput.name}' already registered.`);
12
+ }
13
+ if (toolInput.inputSchema.type !== "object") {
14
+ throw new Error(`Tool '${toolInput.name}': inputSchema.type must be "object" for tool definitions`);
15
+ }
16
+ const toolDefinition = {
17
+ name: toolInput.name,
18
+ description: toolInput.description,
19
+ execute: toolInput.function,
20
+ inputSchema: toolInput.inputSchema,
21
+ icon: toolInput.icon,
22
+ };
23
+ this.registry.set(toolInput.name, toolDefinition);
24
+ logger_util_1.logger.info("StandaloneToolRegistry", `Tool registered: ${toolInput.name}`, {
25
+ component: "Standalone",
26
+ toolName: toolInput.name,
27
+ });
28
+ }
29
+ getTool(name) {
30
+ return this.registry.get(name);
31
+ }
32
+ async executeTool(name, args, cancellationToken, context) {
33
+ const tool = this.getTool(name);
34
+ if (!tool) {
35
+ throw new easy_mcp_error_1.ToolNotFoundError(name);
36
+ }
37
+ const validationError = (0, schema_validator_1.validateToolArguments)(args, tool.inputSchema);
38
+ if (validationError) {
39
+ throw new easy_mcp_error_1.ToolExecutionError(`Tool '${name}' validation failed: ${validationError}`, name);
40
+ }
41
+ try {
42
+ const result = await tool.execute(args, cancellationToken, context);
43
+ return result;
44
+ }
45
+ catch (error) {
46
+ const errorMessage = error instanceof Error ? error.message : String(error);
47
+ throw new easy_mcp_error_1.ToolExecutionError(`Tool '${name}' execution failed: ${errorMessage}`, name, error instanceof Error ? error : undefined);
48
+ }
49
+ }
50
+ getToolSchemasForLLM() {
51
+ return Array.from(this.registry.values()).map((tool) => ({
52
+ type: "function",
53
+ function: {
54
+ name: tool.name,
55
+ description: tool.description,
56
+ parameters: tool.inputSchema,
57
+ },
58
+ }));
59
+ }
60
+ }
61
+ exports.StandaloneToolRegistry = StandaloneToolRegistry;
62
+ class StandaloneResourceRegistry {
63
+ registry = new Map();
64
+ registerResource(resource) {
65
+ if (this.registry.has(resource.uri)) {
66
+ throw new Error(`Resource URI '${resource.uri}' already registered.`);
67
+ }
68
+ this.registry.set(resource.uri, resource);
69
+ }
70
+ getResource(uri) {
71
+ return this.registry.get(uri);
72
+ }
73
+ getAllResources() {
74
+ return Array.from(this.registry.values());
75
+ }
76
+ }
77
+ exports.StandaloneResourceRegistry = StandaloneResourceRegistry;
78
+ class StandalonePromptRegistry {
79
+ registry = new Map();
80
+ registerPrompt(prompt) {
81
+ if (this.registry.has(prompt.name)) {
82
+ throw new Error(`Prompt name '${prompt.name}' already registered.`);
83
+ }
84
+ this.registry.set(prompt.name, prompt);
85
+ }
86
+ getPrompt(name) {
87
+ return this.registry.get(name);
88
+ }
89
+ getAllPrompts() {
90
+ return Array.from(this.registry.values());
91
+ }
92
+ }
93
+ exports.StandalonePromptRegistry = StandalonePromptRegistry;
94
+ //# sourceMappingURL=core-services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-services.js","sourceRoot":"","sources":["../../src/standalone/core-services.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { createMcpServer, StandaloneMcpServer } from "./standalone-server";
2
+ export type { CreateMcpServerOptions, StandaloneTransport, StandaloneAuthFunction } from "./types";
3
+ export { StandaloneToolRegistry, StandaloneResourceRegistry, StandalonePromptRegistry } from "./core-services";
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StandalonePromptRegistry = exports.StandaloneResourceRegistry = exports.StandaloneToolRegistry = exports.StandaloneMcpServer = exports.createMcpServer = void 0;
4
+ var standalone_server_1 = require("./standalone-server");
5
+ Object.defineProperty(exports, "createMcpServer", { enumerable: true, get: function () { return standalone_server_1.createMcpServer; } });
6
+ Object.defineProperty(exports, "StandaloneMcpServer", { enumerable: true, get: function () { return standalone_server_1.StandaloneMcpServer; } });
7
+ var core_services_1 = require("./core-services");
8
+ Object.defineProperty(exports, "StandaloneToolRegistry", { enumerable: true, get: function () { return core_services_1.StandaloneToolRegistry; } });
9
+ Object.defineProperty(exports, "StandaloneResourceRegistry", { enumerable: true, get: function () { return core_services_1.StandaloneResourceRegistry; } });
10
+ Object.defineProperty(exports, "StandalonePromptRegistry", { enumerable: true, get: function () { return core_services_1.StandalonePromptRegistry; } });
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/standalone/index.ts"],"names":[],"mappings":";;;AAAA,yDAA2E;AAAlE,oHAAA,eAAe,OAAA;AAAE,wHAAA,mBAAmB,OAAA;AAE7C,iDAA+G;AAAtG,uHAAA,sBAAsB,OAAA;AAAE,2HAAA,0BAA0B,OAAA;AAAE,yHAAA,wBAAwB,OAAA"}