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.
- package/README.md +342 -8
- package/dist/EasyMCP.js +0 -3
- package/dist/EasyMCP.js.map +1 -1
- package/dist/adapters/express/express-adapter.d.ts +3 -0
- package/dist/adapters/express/express-adapter.js +135 -0
- package/dist/adapters/express/express-adapter.js.map +1 -0
- package/dist/adapters/express/http-gateway.service.d.ts +13 -0
- package/dist/adapters/express/http-gateway.service.js +102 -0
- package/dist/adapters/express/http-gateway.service.js.map +1 -0
- package/dist/adapters/express/index.d.ts +3 -0
- package/dist/adapters/express/index.js +8 -0
- package/dist/adapters/express/index.js.map +1 -0
- package/dist/adapters/express/types.d.ts +15 -0
- package/dist/adapters/express/types.js +3 -0
- package/dist/adapters/express/types.js.map +1 -0
- package/dist/app.module.js +2 -0
- package/dist/app.module.js.map +1 -1
- package/dist/auth/oauth/index.d.ts +3 -0
- package/dist/auth/oauth/index.js +8 -0
- package/dist/auth/oauth/index.js.map +1 -0
- package/dist/auth/oauth/oauth-config.interface.d.ts +12 -0
- package/dist/auth/oauth/oauth-config.interface.js +3 -0
- package/dist/auth/oauth/oauth-config.interface.js.map +1 -0
- package/dist/auth/oauth/oauth-middleware.d.ts +3 -0
- package/dist/auth/oauth/oauth-middleware.js +54 -0
- package/dist/auth/oauth/oauth-middleware.js.map +1 -0
- package/dist/auth/oauth/oauth-provider.service.d.ts +8 -0
- package/dist/auth/oauth/oauth-provider.service.js +63 -0
- package/dist/auth/oauth/oauth-provider.service.js.map +1 -0
- package/dist/config/mcp-config.interface.d.ts +1 -1
- package/dist/core/batch/batch-executor.service.d.ts +21 -0
- package/dist/core/batch/batch-executor.service.js +101 -0
- package/dist/core/batch/batch-executor.service.js.map +1 -0
- package/dist/core/context/context-provider.service.d.ts +8 -0
- package/dist/core/context/context-provider.service.js +55 -0
- package/dist/core/context/context-provider.service.js.map +1 -0
- package/dist/core/context/mcp-context.interface.d.ts +12 -0
- package/dist/core/context/mcp-context.interface.js +3 -0
- package/dist/core/context/mcp-context.interface.js.map +1 -0
- package/dist/core/documentation/openapi-generator.service.d.ts +13 -0
- package/dist/core/documentation/openapi-generator.service.js +116 -0
- package/dist/core/documentation/openapi-generator.service.js.map +1 -0
- package/dist/core/errors/error-handler.interface.d.ts +11 -0
- package/dist/core/errors/error-handler.interface.js +3 -0
- package/dist/core/errors/error-handler.interface.js.map +1 -0
- package/dist/core/health/health-check.service.d.ts +33 -0
- package/dist/core/health/health-check.service.js +71 -0
- package/dist/core/health/health-check.service.js.map +1 -0
- package/dist/core/mcp-server/mcp-server.service.d.ts +16 -1
- package/dist/core/mcp-server/mcp-server.service.js +201 -3
- package/dist/core/mcp-server/mcp-server.service.js.map +1 -1
- package/dist/core/middleware/middleware-executor.service.d.ts +8 -0
- package/dist/core/middleware/middleware-executor.service.js +46 -0
- package/dist/core/middleware/middleware-executor.service.js.map +1 -0
- package/dist/core/middleware/middleware.interface.d.ts +6 -0
- package/dist/core/middleware/middleware.interface.js +3 -0
- package/dist/core/middleware/middleware.interface.js.map +1 -0
- package/dist/core/observability/metrics.service.d.ts +29 -0
- package/dist/core/observability/metrics.service.js +124 -0
- package/dist/core/observability/metrics.service.js.map +1 -0
- package/dist/core/observability/tracing.service.d.ts +12 -0
- package/dist/core/observability/tracing.service.js +88 -0
- package/dist/core/observability/tracing.service.js.map +1 -0
- package/dist/core/progress/progress-notifier.service.d.ts +16 -0
- package/dist/core/progress/progress-notifier.service.js +96 -0
- package/dist/core/progress/progress-notifier.service.js.map +1 -0
- package/dist/core/rate-limiting/rate-limit.interface.d.ts +11 -0
- package/dist/core/rate-limiting/rate-limit.interface.js +3 -0
- package/dist/core/rate-limiting/rate-limit.interface.js.map +1 -0
- package/dist/core/rate-limiting/rate-limiter.service.d.ts +13 -0
- package/dist/core/rate-limiting/rate-limiter.service.js +147 -0
- package/dist/core/rate-limiting/rate-limiter.service.js.map +1 -0
- package/dist/core/resilience/circuit-breaker.interface.d.ts +15 -0
- package/dist/core/resilience/circuit-breaker.interface.js +3 -0
- package/dist/core/resilience/circuit-breaker.interface.js.map +1 -0
- package/dist/core/resilience/circuit-breaker.service.d.ts +11 -0
- package/dist/core/resilience/circuit-breaker.service.js +117 -0
- package/dist/core/resilience/circuit-breaker.service.js.map +1 -0
- package/dist/core/resilience/retry.service.d.ts +6 -0
- package/dist/core/resilience/retry.service.js +66 -0
- package/dist/core/resilience/retry.service.js.map +1 -0
- package/dist/core/utils/decorator-scanner.d.ts +4 -0
- package/dist/core/utils/decorator-scanner.js +112 -0
- package/dist/core/utils/decorator-scanner.js.map +1 -0
- package/dist/core/utils/sanitize.util.d.ts +2 -0
- package/dist/core/utils/sanitize.util.js +48 -0
- package/dist/core/utils/sanitize.util.js.map +1 -1
- package/dist/decorators/factory-provider.d.ts +2 -0
- package/dist/decorators/factory-provider.js +20 -0
- package/dist/decorators/factory-provider.js.map +1 -0
- package/dist/decorators/index.d.ts +7 -0
- package/dist/decorators/index.js +28 -0
- package/dist/decorators/index.js.map +1 -0
- package/dist/decorators/mcp-context.decorator.d.ts +3 -0
- package/dist/decorators/mcp-context.decorator.js +20 -0
- package/dist/decorators/mcp-context.decorator.js.map +1 -0
- package/dist/decorators/mcp-error-handler.decorator.d.ts +4 -0
- package/dist/decorators/mcp-error-handler.decorator.js +15 -0
- package/dist/decorators/mcp-error-handler.decorator.js.map +1 -0
- package/dist/decorators/mcp-middleware.decorator.d.ts +4 -0
- package/dist/decorators/mcp-middleware.decorator.js +17 -0
- package/dist/decorators/mcp-middleware.decorator.js.map +1 -0
- package/dist/decorators/mcp-param.decorator.d.ts +10 -0
- package/dist/decorators/mcp-param.decorator.js +41 -0
- package/dist/decorators/mcp-param.decorator.js.map +1 -0
- package/dist/decorators/mcp-service.decorator.d.ts +6 -0
- package/dist/decorators/mcp-service.decorator.js +27 -0
- package/dist/decorators/mcp-service.decorator.js.map +1 -0
- package/dist/decorators/mcp-tool.decorator.d.ts +28 -0
- package/dist/decorators/mcp-tool.decorator.js +36 -0
- package/dist/decorators/mcp-tool.decorator.js.map +1 -0
- package/dist/index.d.ts +12 -1
- package/dist/index.js +30 -1
- package/dist/index.js.map +1 -1
- package/dist/interface/interface.interface.d.ts +2 -0
- package/dist/interface/jsonrpc.interface.d.ts +8 -0
- package/dist/interface/jsonrpc.interface.js.map +1 -1
- package/dist/interface/mcp-protocol.interface.d.ts +14 -0
- package/dist/interface/mcp-protocol.interface.js.map +1 -1
- package/dist/standalone/core-services.d.ts +29 -0
- package/dist/standalone/core-services.js +94 -0
- package/dist/standalone/core-services.js.map +1 -0
- package/dist/standalone/index.d.ts +3 -0
- package/dist/standalone/index.js +11 -0
- package/dist/standalone/index.js.map +1 -0
- package/dist/standalone/standalone-server.d.ts +23 -0
- package/dist/standalone/standalone-server.js +366 -0
- package/dist/standalone/standalone-server.js.map +1 -0
- package/dist/standalone/types.d.ts +14 -0
- package/dist/standalone/types.js +3 -0
- package/dist/standalone/types.js.map +1 -0
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.js +14 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/mock-context.d.ts +2 -0
- package/dist/testing/mock-context.js +17 -0
- package/dist/testing/mock-context.js.map +1 -0
- package/dist/testing/test-app.factory.d.ts +15 -0
- package/dist/testing/test-app.factory.js +37 -0
- package/dist/testing/test-app.factory.js.map +1 -0
- package/dist/testing/test-helpers.d.ts +10 -0
- package/dist/testing/test-helpers.js +46 -0
- package/dist/testing/test-helpers.js.map +1 -0
- package/dist/tooling/tool-registry/tool-registry.service.d.ts +7 -1
- package/dist/tooling/tool-registry/tool-registry.service.js +40 -3
- package/dist/tooling/tool-registry/tool-registry.service.js.map +1 -1
- package/dist/tooling/tool.interface.d.ts +9 -2
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/validation/index.d.ts +1 -0
- package/dist/validation/index.js +8 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/zod-integration.d.ts +11 -0
- package/dist/validation/zod-integration.js +148 -0
- package/dist/validation/zod-integration.js.map +1 -0
- 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,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,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,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,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"}
|
|
@@ -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":";;;
|
|
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":";;;
|
|
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"}
|