@kya-os/mcp-i-core 1.1.0 → 1.1.1-canary.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 (97) hide show
  1. package/dist/__tests__/utils/mock-providers.d.ts +102 -0
  2. package/dist/__tests__/utils/mock-providers.d.ts.map +1 -0
  3. package/dist/__tests__/utils/mock-providers.js +270 -0
  4. package/dist/__tests__/utils/mock-providers.js.map +1 -0
  5. package/dist/cache/tool-protection-cache.d.ts +73 -0
  6. package/dist/cache/tool-protection-cache.d.ts.map +1 -0
  7. package/dist/cache/tool-protection-cache.js +83 -0
  8. package/dist/cache/tool-protection-cache.js.map +1 -0
  9. package/dist/compliance/index.d.ts +8 -0
  10. package/dist/compliance/index.d.ts.map +1 -0
  11. package/dist/compliance/index.js +24 -0
  12. package/dist/compliance/index.js.map +1 -0
  13. package/dist/compliance/schema-registry.d.ts +50 -0
  14. package/dist/compliance/schema-registry.d.ts.map +1 -0
  15. package/dist/compliance/schema-registry.js +438 -0
  16. package/dist/compliance/schema-registry.js.map +1 -0
  17. package/dist/compliance/schema-verifier-v2.d.ts +110 -0
  18. package/dist/compliance/schema-verifier-v2.d.ts.map +1 -0
  19. package/dist/compliance/schema-verifier-v2.js +510 -0
  20. package/dist/compliance/schema-verifier-v2.js.map +1 -0
  21. package/dist/compliance/schema-verifier.d.ts +110 -0
  22. package/dist/compliance/schema-verifier.d.ts.map +1 -0
  23. package/dist/compliance/schema-verifier.js +518 -0
  24. package/dist/compliance/schema-verifier.js.map +1 -0
  25. package/dist/delegation/bitstring.d.ts +139 -0
  26. package/dist/delegation/bitstring.d.ts.map +1 -0
  27. package/dist/delegation/bitstring.js +213 -0
  28. package/dist/delegation/bitstring.js.map +1 -0
  29. package/dist/delegation/cascading-revocation.d.ts +162 -0
  30. package/dist/delegation/cascading-revocation.d.ts.map +1 -0
  31. package/dist/delegation/cascading-revocation.js +263 -0
  32. package/dist/delegation/cascading-revocation.js.map +1 -0
  33. package/dist/delegation/delegation-graph.d.ts +178 -0
  34. package/dist/delegation/delegation-graph.d.ts.map +1 -0
  35. package/dist/delegation/delegation-graph.js +209 -0
  36. package/dist/delegation/delegation-graph.js.map +1 -0
  37. package/dist/delegation/index.d.ts +14 -0
  38. package/dist/delegation/index.d.ts.map +1 -0
  39. package/dist/delegation/index.js +30 -0
  40. package/dist/delegation/index.js.map +1 -0
  41. package/dist/delegation/statuslist-manager.d.ts +148 -0
  42. package/dist/delegation/statuslist-manager.d.ts.map +1 -0
  43. package/dist/delegation/statuslist-manager.js +221 -0
  44. package/dist/delegation/statuslist-manager.js.map +1 -0
  45. package/dist/delegation/storage/index.d.ts +9 -0
  46. package/dist/delegation/storage/index.d.ts.map +1 -0
  47. package/dist/delegation/storage/index.js +25 -0
  48. package/dist/delegation/storage/index.js.map +1 -0
  49. package/dist/delegation/storage/memory-graph-storage.d.ts +70 -0
  50. package/dist/delegation/storage/memory-graph-storage.d.ts.map +1 -0
  51. package/dist/delegation/storage/memory-graph-storage.js +149 -0
  52. package/dist/delegation/storage/memory-graph-storage.js.map +1 -0
  53. package/dist/delegation/storage/memory-statuslist-storage.d.ts +49 -0
  54. package/dist/delegation/storage/memory-statuslist-storage.d.ts.map +1 -0
  55. package/dist/delegation/storage/memory-statuslist-storage.js +67 -0
  56. package/dist/delegation/storage/memory-statuslist-storage.js.map +1 -0
  57. package/dist/delegation/utils.d.ts +19 -0
  58. package/dist/delegation/utils.d.ts.map +1 -0
  59. package/dist/delegation/utils.js +48 -0
  60. package/dist/delegation/utils.js.map +1 -0
  61. package/dist/delegation/vc-issuer.d.ts +135 -0
  62. package/dist/delegation/vc-issuer.d.ts.map +1 -0
  63. package/dist/delegation/vc-issuer.js +140 -0
  64. package/dist/delegation/vc-issuer.js.map +1 -0
  65. package/dist/delegation/vc-verifier.d.ts +213 -0
  66. package/dist/delegation/vc-verifier.d.ts.map +1 -0
  67. package/dist/delegation/vc-verifier.js +354 -0
  68. package/dist/delegation/vc-verifier.js.map +1 -0
  69. package/dist/index.d.ts +16 -0
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +64 -1
  72. package/dist/index.js.map +1 -1
  73. package/dist/providers/base.d.ts +1 -1
  74. package/dist/providers/base.d.ts.map +1 -1
  75. package/dist/providers/memory.js +2 -2
  76. package/dist/providers/memory.js.map +1 -1
  77. package/dist/runtime/base.d.ts +12 -0
  78. package/dist/runtime/base.d.ts.map +1 -1
  79. package/dist/runtime/base.js +96 -2
  80. package/dist/runtime/base.js.map +1 -1
  81. package/dist/services/tool-protection.service.d.ts +55 -0
  82. package/dist/services/tool-protection.service.d.ts.map +1 -0
  83. package/dist/services/tool-protection.service.js +158 -0
  84. package/dist/services/tool-protection.service.js.map +1 -0
  85. package/dist/types/tool-protection.d.ts +103 -0
  86. package/dist/types/tool-protection.d.ts.map +1 -0
  87. package/dist/types/tool-protection.js +41 -0
  88. package/dist/types/tool-protection.js.map +1 -0
  89. package/dist/utils/cors.d.ts +44 -0
  90. package/dist/utils/cors.d.ts.map +1 -0
  91. package/dist/utils/cors.js +71 -0
  92. package/dist/utils/cors.js.map +1 -0
  93. package/dist/utils/index.d.ts +5 -0
  94. package/dist/utils/index.d.ts.map +1 -0
  95. package/dist/utils/index.js +21 -0
  96. package/dist/utils/index.js.map +1 -0
  97. package/package.json +9 -6
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ /**
3
+ * CORS Header Utilities
4
+ *
5
+ * Centralized CORS header management for MCP-I services.
6
+ * Includes Vary: Origin for cache optimization when origin scoping is implemented.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.OAUTH_CORS_HEADERS = exports.PREFLIGHT_CORS_HEADERS = exports.MCP_CORS_HEADERS = exports.WELL_KNOWN_CORS_HEADERS = void 0;
10
+ exports.mergeCORSHeaders = mergeCORSHeaders;
11
+ exports.applyCORSHeaders = applyCORSHeaders;
12
+ /**
13
+ * Standard CORS headers for well-known endpoints (.well-known/*)
14
+ * Includes Vary: Origin for future cache optimization when origin scoping is added
15
+ */
16
+ exports.WELL_KNOWN_CORS_HEADERS = {
17
+ 'Access-Control-Allow-Origin': '*',
18
+ 'Vary': 'Origin'
19
+ };
20
+ /**
21
+ * CORS headers for MCP protocol responses
22
+ * Includes exposed headers for session management
23
+ */
24
+ exports.MCP_CORS_HEADERS = {
25
+ 'Access-Control-Allow-Origin': '*',
26
+ 'Access-Control-Expose-Headers': 'mcp-session-id',
27
+ 'Vary': 'Origin'
28
+ };
29
+ /**
30
+ * CORS preflight headers for OPTIONS requests
31
+ * Comprehensive header allowlist for MCP protocol
32
+ */
33
+ exports.PREFLIGHT_CORS_HEADERS = {
34
+ 'Access-Control-Allow-Origin': '*',
35
+ 'Access-Control-Allow-Methods': 'GET, POST, OPTIONS',
36
+ 'Access-Control-Allow-Headers': 'Content-Type, Authorization, mcp-session-id, mcp-protocol-version',
37
+ 'Vary': 'Origin'
38
+ };
39
+ /**
40
+ * CORS headers for OAuth endpoints
41
+ * Includes additional headers required for OAuth 2.0 flows
42
+ */
43
+ exports.OAUTH_CORS_HEADERS = {
44
+ 'Access-Control-Allow-Origin': '*',
45
+ 'Access-Control-Allow-Methods': 'GET, POST, OPTIONS',
46
+ 'Access-Control-Allow-Headers': 'Content-Type, Authorization, Accept, mcp-protocol-version',
47
+ 'Access-Control-Expose-Headers': 'Content-Type',
48
+ 'Vary': 'Origin'
49
+ };
50
+ /**
51
+ * Merge CORS headers with existing headers
52
+ * Ensures CORS headers take precedence
53
+ */
54
+ function mergeCORSHeaders(existingHeaders, corsHeaders = exports.WELL_KNOWN_CORS_HEADERS) {
55
+ return {
56
+ ...existingHeaders,
57
+ ...corsHeaders
58
+ };
59
+ }
60
+ /**
61
+ * Apply CORS headers to an Express Response object
62
+ * For use with Express middleware
63
+ */
64
+ function applyCORSHeaders(res, corsHeaders = exports.MCP_CORS_HEADERS) {
65
+ Object.entries(corsHeaders).forEach(([key, value]) => {
66
+ if (value !== undefined) {
67
+ res.setHeader(key, value);
68
+ }
69
+ });
70
+ }
71
+ //# sourceMappingURL=cors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cors.js","sourceRoot":"","sources":["../../src/utils/cors.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAsDH,4CAQC;AAMD,4CASC;AArED;;;GAGG;AACU,QAAA,uBAAuB,GAAgB;IAClD,6BAA6B,EAAE,GAAG;IAClC,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF;;;GAGG;AACU,QAAA,gBAAgB,GAAgB;IAC3C,6BAA6B,EAAE,GAAG;IAClC,+BAA+B,EAAE,gBAAgB;IACjD,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF;;;GAGG;AACU,QAAA,sBAAsB,GAAgB;IACjD,6BAA6B,EAAE,GAAG;IAClC,8BAA8B,EAAE,oBAAoB;IACpD,8BAA8B,EAAE,mEAAmE;IACnG,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF;;;GAGG;AACU,QAAA,kBAAkB,GAAgB;IAC7C,6BAA6B,EAAE,GAAG;IAClC,8BAA8B,EAAE,oBAAoB;IACpD,8BAA8B,EAAE,2DAA2D;IAC3F,+BAA+B,EAAE,cAAc;IAC/C,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF;;;GAGG;AACH,SAAgB,gBAAgB,CAC9B,eAAuC,EACvC,cAA2B,+BAAuB;IAElD,OAAO;QACL,GAAG,eAAe;QAClB,GAAG,WAAW;KACf,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,gBAAgB,CAC9B,GAAyD,EACzD,cAA2B,wBAAgB;IAE3C,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACnD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Utility exports
3
+ */
4
+ export * from './cors';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ /**
3
+ * Utility exports
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ __exportStar(require("./cors"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,yCAAuB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kya-os/mcp-i-core",
3
- "version": "1.1.0",
3
+ "version": "1.1.1-canary.0",
4
4
  "description": "Core provider-based architecture for MCP-I framework",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,10 +19,12 @@
19
19
  "scripts": {
20
20
  "build": "tsc",
21
21
  "dev": "tsc --watch",
22
- "test": "vitest --run",
23
- "test:coverage": "vitest --run --coverage",
24
22
  "lint": "eslint src/**/*.ts",
25
- "type-check": "tsc --noEmit"
23
+ "type-check": "tsc --noEmit",
24
+ "test": "vitest run",
25
+ "test:watch": "vitest",
26
+ "test:e2e": "vitest run src/__tests__/delegation-e2e.test.ts",
27
+ "audit:compliance": "tsx scripts/audit-compliance.ts"
26
28
  },
27
29
  "keywords": [
28
30
  "mcp-i",
@@ -33,7 +35,7 @@
33
35
  "core"
34
36
  ],
35
37
  "dependencies": {
36
- "@kya-os/contracts": "^1.3.0",
38
+ "@kya-os/contracts": "workspace:*",
37
39
  "@modelcontextprotocol/sdk": "^1.11.4"
38
40
  },
39
41
  "devDependencies": {
@@ -42,6 +44,7 @@
42
44
  "@typescript-eslint/parser": "^6.0.0",
43
45
  "@vitest/coverage-v8": "^3.2.4",
44
46
  "eslint": "^8.0.0",
47
+ "tsx": "^4.7.0",
45
48
  "typescript": "^5.3.0",
46
49
  "vitest": "^3.2.4"
47
50
  },
@@ -58,4 +61,4 @@
58
61
  "url": "https://github.com/modelcontextprotocol-identity/mcp-i/issues"
59
62
  },
60
63
  "homepage": "https://github.com/modelcontextprotocol-identity/mcp-i#readme"
61
- }
64
+ }