@kya-os/mcp-i-core 1.0.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.
- package/README.md +33 -0
- package/dist/__tests__/utils/mock-providers.d.ts +102 -0
- package/dist/__tests__/utils/mock-providers.d.ts.map +1 -0
- package/dist/__tests__/utils/mock-providers.js +270 -0
- package/dist/__tests__/utils/mock-providers.js.map +1 -0
- package/dist/cache/tool-protection-cache.d.ts +73 -0
- package/dist/cache/tool-protection-cache.d.ts.map +1 -0
- package/dist/cache/tool-protection-cache.js +83 -0
- package/dist/cache/tool-protection-cache.js.map +1 -0
- package/dist/compliance/index.d.ts +8 -0
- package/dist/compliance/index.d.ts.map +1 -0
- package/dist/compliance/index.js +24 -0
- package/dist/compliance/index.js.map +1 -0
- package/dist/compliance/schema-registry.d.ts +50 -0
- package/dist/compliance/schema-registry.d.ts.map +1 -0
- package/dist/compliance/schema-registry.js +438 -0
- package/dist/compliance/schema-registry.js.map +1 -0
- package/dist/compliance/schema-verifier-v2.d.ts +110 -0
- package/dist/compliance/schema-verifier-v2.d.ts.map +1 -0
- package/dist/compliance/schema-verifier-v2.js +510 -0
- package/dist/compliance/schema-verifier-v2.js.map +1 -0
- package/dist/compliance/schema-verifier.d.ts +110 -0
- package/dist/compliance/schema-verifier.d.ts.map +1 -0
- package/dist/compliance/schema-verifier.js +518 -0
- package/dist/compliance/schema-verifier.js.map +1 -0
- package/dist/delegation/bitstring.d.ts +139 -0
- package/dist/delegation/bitstring.d.ts.map +1 -0
- package/dist/delegation/bitstring.js +213 -0
- package/dist/delegation/bitstring.js.map +1 -0
- package/dist/delegation/cascading-revocation.d.ts +162 -0
- package/dist/delegation/cascading-revocation.d.ts.map +1 -0
- package/dist/delegation/cascading-revocation.js +263 -0
- package/dist/delegation/cascading-revocation.js.map +1 -0
- package/dist/delegation/delegation-graph.d.ts +178 -0
- package/dist/delegation/delegation-graph.d.ts.map +1 -0
- package/dist/delegation/delegation-graph.js +209 -0
- package/dist/delegation/delegation-graph.js.map +1 -0
- package/dist/delegation/index.d.ts +14 -0
- package/dist/delegation/index.d.ts.map +1 -0
- package/dist/delegation/index.js +30 -0
- package/dist/delegation/index.js.map +1 -0
- package/dist/delegation/statuslist-manager.d.ts +148 -0
- package/dist/delegation/statuslist-manager.d.ts.map +1 -0
- package/dist/delegation/statuslist-manager.js +221 -0
- package/dist/delegation/statuslist-manager.js.map +1 -0
- package/dist/delegation/storage/index.d.ts +9 -0
- package/dist/delegation/storage/index.d.ts.map +1 -0
- package/dist/delegation/storage/index.js +25 -0
- package/dist/delegation/storage/index.js.map +1 -0
- package/dist/delegation/storage/memory-graph-storage.d.ts +70 -0
- package/dist/delegation/storage/memory-graph-storage.d.ts.map +1 -0
- package/dist/delegation/storage/memory-graph-storage.js +149 -0
- package/dist/delegation/storage/memory-graph-storage.js.map +1 -0
- package/dist/delegation/storage/memory-statuslist-storage.d.ts +49 -0
- package/dist/delegation/storage/memory-statuslist-storage.d.ts.map +1 -0
- package/dist/delegation/storage/memory-statuslist-storage.js +67 -0
- package/dist/delegation/storage/memory-statuslist-storage.js.map +1 -0
- package/dist/delegation/utils.d.ts +19 -0
- package/dist/delegation/utils.d.ts.map +1 -0
- package/dist/delegation/utils.js +48 -0
- package/dist/delegation/utils.js.map +1 -0
- package/dist/delegation/vc-issuer.d.ts +135 -0
- package/dist/delegation/vc-issuer.d.ts.map +1 -0
- package/dist/delegation/vc-issuer.js +140 -0
- package/dist/delegation/vc-issuer.js.map +1 -0
- package/dist/delegation/vc-verifier.d.ts +213 -0
- package/dist/delegation/vc-verifier.d.ts.map +1 -0
- package/dist/delegation/vc-verifier.js +354 -0
- package/dist/delegation/vc-verifier.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +64 -1
- package/dist/index.js.map +1 -1
- package/dist/providers/base.d.ts +1 -1
- package/dist/providers/base.d.ts.map +1 -1
- package/dist/providers/memory.js +2 -2
- package/dist/providers/memory.js.map +1 -1
- package/dist/runtime/base.d.ts +23 -0
- package/dist/runtime/base.d.ts.map +1 -1
- package/dist/runtime/base.js +135 -12
- package/dist/runtime/base.js.map +1 -1
- package/dist/services/tool-protection.service.d.ts +55 -0
- package/dist/services/tool-protection.service.d.ts.map +1 -0
- package/dist/services/tool-protection.service.js +158 -0
- package/dist/services/tool-protection.service.js.map +1 -0
- package/dist/types/tool-protection.d.ts +103 -0
- package/dist/types/tool-protection.d.ts.map +1 -0
- package/dist/types/tool-protection.js +41 -0
- package/dist/types/tool-protection.js.map +1 -0
- package/dist/utils/cors.d.ts +44 -0
- package/dist/utils/cors.d.ts.map +1 -0
- package/dist/utils/cors.js +71 -0
- package/dist/utils/cors.js.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +21 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +11 -6
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Delegation Credential Verifier (Platform-Agnostic)
|
|
4
|
+
*
|
|
5
|
+
* Progressive enhancement verification for W3C Delegation Credentials.
|
|
6
|
+
* Follows the Edge-Delegation-Verification.md pattern:
|
|
7
|
+
*
|
|
8
|
+
* Stage 1: Fast basic checks (no network, early rejection)
|
|
9
|
+
* Stage 2: Parallel advanced checks (signature, status)
|
|
10
|
+
* Stage 3: Combined results
|
|
11
|
+
*
|
|
12
|
+
* Related Spec: MCP-I §4.3, W3C VC Data Model 1.1
|
|
13
|
+
* Python Reference: Edge-Delegation-Verification.md
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.DelegationCredentialVerifier = void 0;
|
|
17
|
+
exports.createDelegationVerifier = createDelegationVerifier;
|
|
18
|
+
const contracts_1 = require("@kya-os/contracts");
|
|
19
|
+
/**
|
|
20
|
+
* Delegation Credential Verifier (Platform-Agnostic)
|
|
21
|
+
*
|
|
22
|
+
* Implements progressive enhancement pattern from Edge-Delegation-Verification.md:
|
|
23
|
+
* 1. Fast basic checks (no network) - early rejection
|
|
24
|
+
* 2. Parallel advanced checks (signature + status)
|
|
25
|
+
* 3. Combined results
|
|
26
|
+
*/
|
|
27
|
+
class DelegationCredentialVerifier {
|
|
28
|
+
didResolver;
|
|
29
|
+
statusListResolver;
|
|
30
|
+
signatureVerifier;
|
|
31
|
+
cache = new Map();
|
|
32
|
+
cacheTtl;
|
|
33
|
+
constructor(options) {
|
|
34
|
+
this.didResolver = options?.didResolver;
|
|
35
|
+
this.statusListResolver = options?.statusListResolver;
|
|
36
|
+
this.signatureVerifier = options?.signatureVerifier;
|
|
37
|
+
this.cacheTtl = options?.cacheTtl || 60_000; // 1 minute default
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Verify a delegation credential with progressive enhancement
|
|
41
|
+
*
|
|
42
|
+
* Per Edge-Delegation-Verification.md:41-102
|
|
43
|
+
*
|
|
44
|
+
* @param vc - The delegation credential to verify
|
|
45
|
+
* @param options - Verification options
|
|
46
|
+
* @returns Verification result
|
|
47
|
+
*/
|
|
48
|
+
async verifyDelegationCredential(vc, options = {}) {
|
|
49
|
+
const startTime = Date.now();
|
|
50
|
+
// Check cache first
|
|
51
|
+
if (!options.skipCache) {
|
|
52
|
+
const cached = this.getFromCache(vc.id || '');
|
|
53
|
+
if (cached) {
|
|
54
|
+
return { ...cached, cached: true };
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
// ===================================================================
|
|
58
|
+
// STAGE 1: Fast Basic Checks (no network calls)
|
|
59
|
+
// Per Edge-Delegation-Verification.md:152-186
|
|
60
|
+
// ===================================================================
|
|
61
|
+
const basicCheckStart = Date.now();
|
|
62
|
+
const basicValidation = this.validateBasicProperties(vc);
|
|
63
|
+
const basicCheckMs = Date.now() - basicCheckStart;
|
|
64
|
+
if (!basicValidation.valid) {
|
|
65
|
+
const result = {
|
|
66
|
+
valid: false,
|
|
67
|
+
reason: basicValidation.reason,
|
|
68
|
+
stage: 'basic',
|
|
69
|
+
metrics: {
|
|
70
|
+
basicCheckMs,
|
|
71
|
+
totalMs: Date.now() - startTime,
|
|
72
|
+
},
|
|
73
|
+
checks: {
|
|
74
|
+
basicValid: false,
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
return result;
|
|
78
|
+
}
|
|
79
|
+
// ===================================================================
|
|
80
|
+
// STAGE 2: Parallel Advanced Checks
|
|
81
|
+
// Per Edge-Delegation-Verification.md:281-301
|
|
82
|
+
// ===================================================================
|
|
83
|
+
// Start signature verification (if not skipped)
|
|
84
|
+
const signaturePromise = !options.skipSignature
|
|
85
|
+
? this.verifySignature(vc, options.didResolver || this.didResolver)
|
|
86
|
+
: Promise.resolve({
|
|
87
|
+
valid: true,
|
|
88
|
+
durationMs: 0,
|
|
89
|
+
});
|
|
90
|
+
// Start status checking (if not skipped)
|
|
91
|
+
const statusPromise = !options.skipStatus && vc.credentialStatus
|
|
92
|
+
? this.checkCredentialStatus(vc.credentialStatus, options.statusListResolver || this.statusListResolver)
|
|
93
|
+
: Promise.resolve({
|
|
94
|
+
valid: true,
|
|
95
|
+
durationMs: 0,
|
|
96
|
+
});
|
|
97
|
+
// Wait for both checks in parallel
|
|
98
|
+
const [signatureResult, statusResult] = await Promise.all([
|
|
99
|
+
signaturePromise,
|
|
100
|
+
statusPromise,
|
|
101
|
+
]);
|
|
102
|
+
const signatureCheckMs = signatureResult.durationMs || 0;
|
|
103
|
+
const statusCheckMs = statusResult.durationMs || 0;
|
|
104
|
+
// ===================================================================
|
|
105
|
+
// STAGE 3: Combined Results
|
|
106
|
+
// Per Edge-Delegation-Verification.md:82-94
|
|
107
|
+
// ===================================================================
|
|
108
|
+
const allValid = basicValidation.valid && signatureResult.valid && statusResult.valid;
|
|
109
|
+
const result = {
|
|
110
|
+
valid: allValid,
|
|
111
|
+
reason: !allValid
|
|
112
|
+
? signatureResult.reason || statusResult.reason || 'Unknown failure'
|
|
113
|
+
: undefined,
|
|
114
|
+
stage: 'complete',
|
|
115
|
+
metrics: {
|
|
116
|
+
basicCheckMs,
|
|
117
|
+
signatureCheckMs,
|
|
118
|
+
statusCheckMs,
|
|
119
|
+
totalMs: Date.now() - startTime,
|
|
120
|
+
},
|
|
121
|
+
checks: {
|
|
122
|
+
basicValid: basicValidation.valid,
|
|
123
|
+
signatureValid: signatureResult.valid,
|
|
124
|
+
statusValid: statusResult.valid,
|
|
125
|
+
},
|
|
126
|
+
};
|
|
127
|
+
// Cache successful verifications
|
|
128
|
+
if (result.valid && vc.id) {
|
|
129
|
+
this.setInCache(vc.id, result);
|
|
130
|
+
}
|
|
131
|
+
return result;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Stage 1: Validate basic properties (no network calls)
|
|
135
|
+
*
|
|
136
|
+
* Fast path for early rejection of invalid delegations.
|
|
137
|
+
* Per Edge-Delegation-Verification.md:155-186
|
|
138
|
+
*
|
|
139
|
+
* @param vc - The delegation credential
|
|
140
|
+
* @returns Validation result
|
|
141
|
+
*/
|
|
142
|
+
validateBasicProperties(vc) {
|
|
143
|
+
// 1. Validate schema
|
|
144
|
+
const schemaValidation = (0, contracts_1.validateDelegationCredential)(vc);
|
|
145
|
+
if (!schemaValidation.success) {
|
|
146
|
+
return {
|
|
147
|
+
valid: false,
|
|
148
|
+
reason: `Schema validation failed: ${schemaValidation.error.message}`,
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
// 2. Check expiration
|
|
152
|
+
if ((0, contracts_1.isDelegationCredentialExpired)(vc)) {
|
|
153
|
+
return { valid: false, reason: 'Delegation credential expired' };
|
|
154
|
+
}
|
|
155
|
+
// 3. Check not yet valid
|
|
156
|
+
if ((0, contracts_1.isDelegationCredentialNotYetValid)(vc)) {
|
|
157
|
+
return { valid: false, reason: 'Delegation credential not yet valid' };
|
|
158
|
+
}
|
|
159
|
+
// 4. Check delegation status
|
|
160
|
+
const delegation = vc.credentialSubject.delegation;
|
|
161
|
+
if (delegation.status === 'revoked') {
|
|
162
|
+
return { valid: false, reason: 'Delegation status is revoked' };
|
|
163
|
+
}
|
|
164
|
+
if (delegation.status === 'expired') {
|
|
165
|
+
return { valid: false, reason: 'Delegation status is expired' };
|
|
166
|
+
}
|
|
167
|
+
// 5. Check required fields
|
|
168
|
+
if (!delegation.issuerDid || !delegation.subjectDid) {
|
|
169
|
+
return { valid: false, reason: 'Missing issuer or subject DID' };
|
|
170
|
+
}
|
|
171
|
+
// 6. Check proof exists (we'll verify it later)
|
|
172
|
+
if (!vc.proof) {
|
|
173
|
+
return { valid: false, reason: 'Missing proof' };
|
|
174
|
+
}
|
|
175
|
+
return { valid: true };
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Stage 2a: Verify signature
|
|
179
|
+
*
|
|
180
|
+
* Per Edge-Delegation-Verification.md:191-234
|
|
181
|
+
*
|
|
182
|
+
* @param vc - The delegation credential
|
|
183
|
+
* @param didResolver - Optional DID resolver
|
|
184
|
+
* @returns Verification result
|
|
185
|
+
*/
|
|
186
|
+
async verifySignature(vc, didResolver) {
|
|
187
|
+
const startTime = Date.now();
|
|
188
|
+
try {
|
|
189
|
+
// Get issuer DID
|
|
190
|
+
const issuerDid = typeof vc.issuer === 'string' ? vc.issuer : vc.issuer.id;
|
|
191
|
+
// If no DID resolver or signature verifier, skip verification
|
|
192
|
+
if (!didResolver || !this.signatureVerifier) {
|
|
193
|
+
return {
|
|
194
|
+
valid: true, // Trust but don't verify (no resolver/verifier available)
|
|
195
|
+
reason: 'No DID resolver or signature verifier available, skipping signature verification',
|
|
196
|
+
durationMs: Date.now() - startTime,
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
// Resolve issuer DID to get public key
|
|
200
|
+
const didDoc = await didResolver.resolve(issuerDid);
|
|
201
|
+
if (!didDoc) {
|
|
202
|
+
return {
|
|
203
|
+
valid: false,
|
|
204
|
+
reason: `Could not resolve issuer DID: ${issuerDid}`,
|
|
205
|
+
durationMs: Date.now() - startTime,
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
// Find verification method from proof
|
|
209
|
+
if (!vc.proof) {
|
|
210
|
+
return {
|
|
211
|
+
valid: false,
|
|
212
|
+
reason: 'Proof is missing',
|
|
213
|
+
durationMs: Date.now() - startTime,
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
const verificationMethodId = vc.proof.verificationMethod;
|
|
217
|
+
if (!verificationMethodId) {
|
|
218
|
+
return {
|
|
219
|
+
valid: false,
|
|
220
|
+
reason: 'Proof missing verificationMethod',
|
|
221
|
+
durationMs: Date.now() - startTime,
|
|
222
|
+
};
|
|
223
|
+
}
|
|
224
|
+
const verificationMethod = this.findVerificationMethod(didDoc, verificationMethodId);
|
|
225
|
+
if (!verificationMethod) {
|
|
226
|
+
return {
|
|
227
|
+
valid: false,
|
|
228
|
+
reason: `Verification method ${verificationMethodId} not found`,
|
|
229
|
+
durationMs: Date.now() - startTime,
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
// Extract public key
|
|
233
|
+
const publicKeyJwk = verificationMethod.publicKeyJwk;
|
|
234
|
+
if (!publicKeyJwk) {
|
|
235
|
+
return {
|
|
236
|
+
valid: false,
|
|
237
|
+
reason: 'Verification method missing publicKeyJwk',
|
|
238
|
+
durationMs: Date.now() - startTime,
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
// Verify signature using platform-specific verifier
|
|
242
|
+
const verificationResult = await this.signatureVerifier(vc, publicKeyJwk);
|
|
243
|
+
return {
|
|
244
|
+
valid: verificationResult.valid,
|
|
245
|
+
reason: verificationResult.reason,
|
|
246
|
+
durationMs: Date.now() - startTime,
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
catch (error) {
|
|
250
|
+
return {
|
|
251
|
+
valid: false,
|
|
252
|
+
reason: `Signature verification error: ${error instanceof Error ? error.message : 'Unknown error'}`,
|
|
253
|
+
durationMs: Date.now() - startTime,
|
|
254
|
+
};
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Stage 2b: Check credential status via StatusList2021
|
|
259
|
+
*
|
|
260
|
+
* @param status - The credential status entry
|
|
261
|
+
* @param statusListResolver - Optional status list resolver
|
|
262
|
+
* @returns Status check result
|
|
263
|
+
*/
|
|
264
|
+
async checkCredentialStatus(status, statusListResolver) {
|
|
265
|
+
const startTime = Date.now();
|
|
266
|
+
try {
|
|
267
|
+
// If no status list resolver, we can't check the status
|
|
268
|
+
if (!statusListResolver) {
|
|
269
|
+
return {
|
|
270
|
+
valid: true, // Trust but don't verify (no resolver available)
|
|
271
|
+
reason: 'No status list resolver available, skipping status check',
|
|
272
|
+
durationMs: Date.now() - startTime,
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
// Check if credential is revoked/suspended
|
|
276
|
+
const isRevoked = await statusListResolver.checkStatus(status);
|
|
277
|
+
if (isRevoked) {
|
|
278
|
+
return {
|
|
279
|
+
valid: false,
|
|
280
|
+
reason: `Credential revoked via StatusList2021 (${status.statusPurpose})`,
|
|
281
|
+
durationMs: Date.now() - startTime,
|
|
282
|
+
};
|
|
283
|
+
}
|
|
284
|
+
return {
|
|
285
|
+
valid: true,
|
|
286
|
+
durationMs: Date.now() - startTime,
|
|
287
|
+
};
|
|
288
|
+
}
|
|
289
|
+
catch (error) {
|
|
290
|
+
return {
|
|
291
|
+
valid: false,
|
|
292
|
+
reason: `Status check error: ${error instanceof Error ? error.message : 'Unknown error'}`,
|
|
293
|
+
durationMs: Date.now() - startTime,
|
|
294
|
+
};
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Find verification method in DID document
|
|
299
|
+
*
|
|
300
|
+
* @param didDoc - The DID document
|
|
301
|
+
* @param verificationMethodId - The verification method ID
|
|
302
|
+
* @returns Verification method or undefined
|
|
303
|
+
*/
|
|
304
|
+
findVerificationMethod(didDoc, verificationMethodId) {
|
|
305
|
+
return didDoc.verificationMethod?.find((vm) => vm.id === verificationMethodId);
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Get from cache
|
|
309
|
+
*/
|
|
310
|
+
getFromCache(id) {
|
|
311
|
+
const entry = this.cache.get(id);
|
|
312
|
+
if (!entry)
|
|
313
|
+
return null;
|
|
314
|
+
if (Date.now() > entry.expiresAt) {
|
|
315
|
+
this.cache.delete(id);
|
|
316
|
+
return null;
|
|
317
|
+
}
|
|
318
|
+
return entry.result;
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* Set in cache
|
|
322
|
+
*/
|
|
323
|
+
setInCache(id, result) {
|
|
324
|
+
this.cache.set(id, {
|
|
325
|
+
result,
|
|
326
|
+
expiresAt: Date.now() + this.cacheTtl,
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
* Clear cache
|
|
331
|
+
*/
|
|
332
|
+
clearCache() {
|
|
333
|
+
this.cache.clear();
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* Clear cache entry for specific VC
|
|
337
|
+
*/
|
|
338
|
+
clearCacheEntry(id) {
|
|
339
|
+
this.cache.delete(id);
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
exports.DelegationCredentialVerifier = DelegationCredentialVerifier;
|
|
343
|
+
/**
|
|
344
|
+
* Create a delegation credential verifier
|
|
345
|
+
*
|
|
346
|
+
* Convenience factory function.
|
|
347
|
+
*
|
|
348
|
+
* @param options - Verifier options
|
|
349
|
+
* @returns DelegationCredentialVerifier instance
|
|
350
|
+
*/
|
|
351
|
+
function createDelegationVerifier(options) {
|
|
352
|
+
return new DelegationCredentialVerifier(options);
|
|
353
|
+
}
|
|
354
|
+
//# sourceMappingURL=vc-verifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vc-verifier.js","sourceRoot":"","sources":["../../src/delegation/vc-verifier.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,22 @@
|
|
|
7
7
|
export { CryptoProvider, ClockProvider, FetchProvider, StorageProvider, NonceCacheProvider, IdentityProvider, type AgentIdentity } from './providers/base';
|
|
8
8
|
export { MemoryStorageProvider, MemoryNonceCacheProvider, MemoryIdentityProvider } from './providers/memory';
|
|
9
9
|
export { MCPIRuntimeBase, type MCPIRuntimeConfig } from './runtime/base';
|
|
10
|
+
export * from './utils';
|
|
11
|
+
export { ToolProtectionService } from './services/tool-protection.service';
|
|
12
|
+
export { ToolProtectionCache, InMemoryToolProtectionCache, NoOpToolProtectionCache } from './cache/tool-protection-cache';
|
|
13
|
+
export type { ToolProtection, ToolProtectionConfig, ToolProtectionServiceConfig } from './types/tool-protection';
|
|
14
|
+
export { DelegationRequiredError } from './types/tool-protection';
|
|
15
|
+
export { DelegationCredentialIssuer, createDelegationIssuer, type IssueDelegationOptions, type VCSigningFunction, type IdentityProvider as DelegationIdentityProvider } from './delegation/vc-issuer';
|
|
16
|
+
export { DelegationCredentialVerifier, createDelegationVerifier, type DelegationVCVerificationResult, type VerifyDelegationVCOptions, type DIDResolver, type DIDDocument, type VerificationMethod, type StatusListResolver, type SignatureVerificationFunction } from './delegation/vc-verifier';
|
|
17
|
+
export { StatusList2021Manager, createStatusListManager, type StatusListStorageProvider, type StatusListIdentityProvider } from './delegation/statuslist-manager';
|
|
18
|
+
export { BitstringManager, isIndexSet, type CompressionFunction, type DecompressionFunction } from './delegation/bitstring';
|
|
19
|
+
export { DelegationGraphManager, createDelegationGraph, type DelegationNode, type DelegationGraphStorageProvider } from './delegation/delegation-graph';
|
|
20
|
+
export { CascadingRevocationManager, createCascadingRevocationManager, type RevocationEvent, type RevocationHook, type CascadingRevocationOptions } from './delegation/cascading-revocation';
|
|
21
|
+
export { MemoryStatusListStorage } from './delegation/storage/memory-statuslist-storage';
|
|
22
|
+
export { MemoryDelegationGraphStorage } from './delegation/storage/memory-graph-storage';
|
|
23
|
+
export { SchemaVerifier, createSchemaVerifier, type SchemaMetadata, type FieldComplianceResult, type SchemaComplianceReport, type FullComplianceReport } from './compliance/schema-verifier';
|
|
24
|
+
export { SCHEMA_REGISTRY, getAllSchemas, getSchemasByCategory, getSchemaById, getCriticalSchemas, getSchemaStats } from './compliance/schema-registry';
|
|
25
|
+
export { canonicalizeJSON } from './delegation/utils';
|
|
10
26
|
import type { HandshakeRequest, SessionContext, NonceCache, NonceCacheEntry, NonceCacheConfig, ProofMeta, DetachedProof, CanonicalHashes, AuditRecord } from '@kya-os/contracts';
|
|
11
27
|
export type { HandshakeRequest, SessionContext, NonceCache, NonceCacheEntry, NonceCacheConfig, ProofMeta, DetachedProof, CanonicalHashes, AuditRecord };
|
|
12
28
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,aAAa,EACnB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,eAAe,EACf,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,aAAa,EACnB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,eAAe,EACf,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAC;AAGxB,cAAc,SAAS,CAAC;AAExB,OAAO,EACL,qBAAqB,EACtB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAEvC,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,2BAA2B,EAC5B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,IAAI,0BAA0B,EACpD,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAC9B,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,6BAA6B,EACnC,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAChC,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC3B,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,cAAc,EACnB,KAAK,8BAA8B,EACpC,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,0BAA0B,EAC1B,gCAAgC,EAChC,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,0BAA0B,EAChC,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EACL,uBAAuB,EACxB,MAAM,gDAAgD,CAAC;AAExD,OAAO,EACL,4BAA4B,EAC7B,MAAM,2CAA2C,CAAC;AAGnD,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,cAAc,EACf,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAItD,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,eAAe,EACf,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,eAAe,EACf,WAAW,EACZ,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5,8 +5,22 @@
|
|
|
5
5
|
* Core provider-based architecture for MCP-I framework.
|
|
6
6
|
* Platform-agnostic runtime that can be extended for any environment.
|
|
7
7
|
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
20
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
21
|
+
};
|
|
8
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.MCPIRuntimeBase = exports.MemoryIdentityProvider = exports.MemoryNonceCacheProvider = exports.MemoryStorageProvider = exports.IdentityProvider = exports.NonceCacheProvider = exports.StorageProvider = exports.FetchProvider = exports.ClockProvider = exports.CryptoProvider = void 0;
|
|
23
|
+
exports.canonicalizeJSON = exports.getSchemaStats = exports.getCriticalSchemas = exports.getSchemaById = exports.getSchemasByCategory = exports.getAllSchemas = exports.SCHEMA_REGISTRY = exports.createSchemaVerifier = exports.SchemaVerifier = exports.MemoryDelegationGraphStorage = exports.MemoryStatusListStorage = exports.createCascadingRevocationManager = exports.CascadingRevocationManager = exports.createDelegationGraph = exports.DelegationGraphManager = exports.isIndexSet = exports.BitstringManager = exports.createStatusListManager = exports.StatusList2021Manager = exports.createDelegationVerifier = exports.DelegationCredentialVerifier = exports.createDelegationIssuer = exports.DelegationCredentialIssuer = exports.DelegationRequiredError = exports.NoOpToolProtectionCache = exports.InMemoryToolProtectionCache = exports.ToolProtectionService = exports.MCPIRuntimeBase = exports.MemoryIdentityProvider = exports.MemoryNonceCacheProvider = exports.MemoryStorageProvider = exports.IdentityProvider = exports.NonceCacheProvider = exports.StorageProvider = exports.FetchProvider = exports.ClockProvider = exports.CryptoProvider = void 0;
|
|
10
24
|
// Base providers
|
|
11
25
|
var base_1 = require("./providers/base");
|
|
12
26
|
Object.defineProperty(exports, "CryptoProvider", { enumerable: true, get: function () { return base_1.CryptoProvider; } });
|
|
@@ -23,4 +37,53 @@ Object.defineProperty(exports, "MemoryIdentityProvider", { enumerable: true, get
|
|
|
23
37
|
// Runtime
|
|
24
38
|
var base_2 = require("./runtime/base");
|
|
25
39
|
Object.defineProperty(exports, "MCPIRuntimeBase", { enumerable: true, get: function () { return base_2.MCPIRuntimeBase; } });
|
|
40
|
+
// Utilities
|
|
41
|
+
__exportStar(require("./utils"), exports);
|
|
42
|
+
// Tool Protection
|
|
43
|
+
var tool_protection_service_1 = require("./services/tool-protection.service");
|
|
44
|
+
Object.defineProperty(exports, "ToolProtectionService", { enumerable: true, get: function () { return tool_protection_service_1.ToolProtectionService; } });
|
|
45
|
+
var tool_protection_cache_1 = require("./cache/tool-protection-cache");
|
|
46
|
+
Object.defineProperty(exports, "InMemoryToolProtectionCache", { enumerable: true, get: function () { return tool_protection_cache_1.InMemoryToolProtectionCache; } });
|
|
47
|
+
Object.defineProperty(exports, "NoOpToolProtectionCache", { enumerable: true, get: function () { return tool_protection_cache_1.NoOpToolProtectionCache; } });
|
|
48
|
+
var tool_protection_1 = require("./types/tool-protection");
|
|
49
|
+
Object.defineProperty(exports, "DelegationRequiredError", { enumerable: true, get: function () { return tool_protection_1.DelegationRequiredError; } });
|
|
50
|
+
// Delegation (W3C VC-based)
|
|
51
|
+
var vc_issuer_1 = require("./delegation/vc-issuer");
|
|
52
|
+
Object.defineProperty(exports, "DelegationCredentialIssuer", { enumerable: true, get: function () { return vc_issuer_1.DelegationCredentialIssuer; } });
|
|
53
|
+
Object.defineProperty(exports, "createDelegationIssuer", { enumerable: true, get: function () { return vc_issuer_1.createDelegationIssuer; } });
|
|
54
|
+
var vc_verifier_1 = require("./delegation/vc-verifier");
|
|
55
|
+
Object.defineProperty(exports, "DelegationCredentialVerifier", { enumerable: true, get: function () { return vc_verifier_1.DelegationCredentialVerifier; } });
|
|
56
|
+
Object.defineProperty(exports, "createDelegationVerifier", { enumerable: true, get: function () { return vc_verifier_1.createDelegationVerifier; } });
|
|
57
|
+
// StatusList2021
|
|
58
|
+
var statuslist_manager_1 = require("./delegation/statuslist-manager");
|
|
59
|
+
Object.defineProperty(exports, "StatusList2021Manager", { enumerable: true, get: function () { return statuslist_manager_1.StatusList2021Manager; } });
|
|
60
|
+
Object.defineProperty(exports, "createStatusListManager", { enumerable: true, get: function () { return statuslist_manager_1.createStatusListManager; } });
|
|
61
|
+
var bitstring_1 = require("./delegation/bitstring");
|
|
62
|
+
Object.defineProperty(exports, "BitstringManager", { enumerable: true, get: function () { return bitstring_1.BitstringManager; } });
|
|
63
|
+
Object.defineProperty(exports, "isIndexSet", { enumerable: true, get: function () { return bitstring_1.isIndexSet; } });
|
|
64
|
+
// Delegation Graph & Cascading Revocation
|
|
65
|
+
var delegation_graph_1 = require("./delegation/delegation-graph");
|
|
66
|
+
Object.defineProperty(exports, "DelegationGraphManager", { enumerable: true, get: function () { return delegation_graph_1.DelegationGraphManager; } });
|
|
67
|
+
Object.defineProperty(exports, "createDelegationGraph", { enumerable: true, get: function () { return delegation_graph_1.createDelegationGraph; } });
|
|
68
|
+
var cascading_revocation_1 = require("./delegation/cascading-revocation");
|
|
69
|
+
Object.defineProperty(exports, "CascadingRevocationManager", { enumerable: true, get: function () { return cascading_revocation_1.CascadingRevocationManager; } });
|
|
70
|
+
Object.defineProperty(exports, "createCascadingRevocationManager", { enumerable: true, get: function () { return cascading_revocation_1.createCascadingRevocationManager; } });
|
|
71
|
+
// Storage Implementations (for testing and examples)
|
|
72
|
+
var memory_statuslist_storage_1 = require("./delegation/storage/memory-statuslist-storage");
|
|
73
|
+
Object.defineProperty(exports, "MemoryStatusListStorage", { enumerable: true, get: function () { return memory_statuslist_storage_1.MemoryStatusListStorage; } });
|
|
74
|
+
var memory_graph_storage_1 = require("./delegation/storage/memory-graph-storage");
|
|
75
|
+
Object.defineProperty(exports, "MemoryDelegationGraphStorage", { enumerable: true, get: function () { return memory_graph_storage_1.MemoryDelegationGraphStorage; } });
|
|
76
|
+
// Compliance Verification (with JSON Schema draft-07 support)
|
|
77
|
+
var schema_verifier_1 = require("./compliance/schema-verifier");
|
|
78
|
+
Object.defineProperty(exports, "SchemaVerifier", { enumerable: true, get: function () { return schema_verifier_1.SchemaVerifier; } });
|
|
79
|
+
Object.defineProperty(exports, "createSchemaVerifier", { enumerable: true, get: function () { return schema_verifier_1.createSchemaVerifier; } });
|
|
80
|
+
var schema_registry_1 = require("./compliance/schema-registry");
|
|
81
|
+
Object.defineProperty(exports, "SCHEMA_REGISTRY", { enumerable: true, get: function () { return schema_registry_1.SCHEMA_REGISTRY; } });
|
|
82
|
+
Object.defineProperty(exports, "getAllSchemas", { enumerable: true, get: function () { return schema_registry_1.getAllSchemas; } });
|
|
83
|
+
Object.defineProperty(exports, "getSchemasByCategory", { enumerable: true, get: function () { return schema_registry_1.getSchemasByCategory; } });
|
|
84
|
+
Object.defineProperty(exports, "getSchemaById", { enumerable: true, get: function () { return schema_registry_1.getSchemaById; } });
|
|
85
|
+
Object.defineProperty(exports, "getCriticalSchemas", { enumerable: true, get: function () { return schema_registry_1.getCriticalSchemas; } });
|
|
86
|
+
Object.defineProperty(exports, "getSchemaStats", { enumerable: true, get: function () { return schema_registry_1.getSchemaStats; } });
|
|
87
|
+
var utils_1 = require("./delegation/utils");
|
|
88
|
+
Object.defineProperty(exports, "canonicalizeJSON", { enumerable: true, get: function () { return utils_1.canonicalizeJSON; } });
|
|
26
89
|
//# 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":";AAAA;;;;;GAKG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;AAEH,iBAAiB;AACjB,yCAQ0B;AAPxB,sGAAA,cAAc,OAAA;AACd,qGAAA,aAAa,OAAA;AACb,qGAAA,aAAa,OAAA;AACb,uGAAA,eAAe,OAAA;AACf,0GAAA,kBAAkB,OAAA;AAClB,wGAAA,gBAAgB,OAAA;AAIlB,mBAAmB;AACnB,6CAI4B;AAH1B,+GAAA,qBAAqB,OAAA;AACrB,kHAAA,wBAAwB,OAAA;AACxB,gHAAA,sBAAsB,OAAA;AAGxB,UAAU;AACV,uCAGwB;AAFtB,uGAAA,eAAe,OAAA;AAIjB,YAAY;AACZ,0CAAwB;AACxB,kBAAkB;AAClB,8EAE4C;AAD1C,gIAAA,qBAAqB,OAAA;AAGvB,uEAIuC;AAFrC,oIAAA,2BAA2B,OAAA;AAC3B,gIAAA,uBAAuB,OAAA;AASzB,2DAEiC;AAD/B,0HAAA,uBAAuB,OAAA;AAGzB,4BAA4B;AAC5B,oDAMgC;AAL9B,uHAAA,0BAA0B,OAAA;AAC1B,mHAAA,sBAAsB,OAAA;AAMxB,wDAUkC;AAThC,2HAAA,4BAA4B,OAAA;AAC5B,uHAAA,wBAAwB,OAAA;AAU1B,iBAAiB;AACjB,sEAKyC;AAJvC,2HAAA,qBAAqB,OAAA;AACrB,6HAAA,uBAAuB,OAAA;AAKzB,oDAKgC;AAJ9B,6GAAA,gBAAgB,OAAA;AAChB,uGAAA,UAAU,OAAA;AAKZ,0CAA0C;AAC1C,kEAKuC;AAJrC,0HAAA,sBAAsB,OAAA;AACtB,yHAAA,qBAAqB,OAAA;AAKvB,0EAM2C;AALzC,kIAAA,0BAA0B,OAAA;AAC1B,wIAAA,gCAAgC,OAAA;AAMlC,qDAAqD;AACrD,4FAEwD;AADtD,oIAAA,uBAAuB,OAAA;AAGzB,kFAEmD;AADjD,oIAAA,4BAA4B,OAAA;AAG9B,8DAA8D;AAC9D,gEAOsC;AANpC,iHAAA,cAAc,OAAA;AACd,uHAAA,oBAAoB,OAAA;AAOtB,gEAOsC;AANpC,kHAAA,eAAe,OAAA;AACf,gHAAA,aAAa,OAAA;AACb,uHAAA,oBAAoB,OAAA;AACpB,gHAAA,aAAa,OAAA;AACb,qHAAA,kBAAkB,OAAA;AAClB,iHAAA,cAAc,OAAA;AAGhB,4CAAsD;AAA7C,yGAAA,gBAAgB,OAAA"}
|
package/dist/providers/base.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/providers/base.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,8BAAsB,cAAc;IAClC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IACxE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAC7F,QAAQ,CAAC,eAAe,IAAI,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9E,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACpD,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;CAC1D;AAED;;GAEG;AACH,8BAAsB,aAAa;IACjC,QAAQ,CAAC,GAAG,IAAI,MAAM;IACtB,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IACtE,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAC/C,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IACpD,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;CAC3C;AAED;;GAEG;AACH,8BAAsB,aAAa;IACjC,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAC9C,QAAQ,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IACnD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACzD,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;CAC9D;AAED;;GAEG;AACH,8BAAsB,eAAe;IACnC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IACjD,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACvD,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3C,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9C,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAClD;AAED;;GAEG;AACH,8BAAsB,kBAAkB;IACtC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAC7C,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7D,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IACjC,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/providers/base.ts"],"names":[],"mappings":"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"}
|
package/dist/providers/memory.js
CHANGED
|
@@ -13,7 +13,7 @@ const base_1 = require("./base");
|
|
|
13
13
|
class MemoryStorageProvider extends base_1.StorageProvider {
|
|
14
14
|
store = new Map();
|
|
15
15
|
async get(key) {
|
|
16
|
-
return this.store.get(key)
|
|
16
|
+
return this.store.get(key) ?? null;
|
|
17
17
|
}
|
|
18
18
|
async set(key, value) {
|
|
19
19
|
this.store.set(key, value);
|
|
@@ -98,7 +98,7 @@ class MemoryIdentityProvider extends base_1.IdentityProvider {
|
|
|
98
98
|
const did = this.generateDIDFromPublicKey(keyPair.publicKey);
|
|
99
99
|
return {
|
|
100
100
|
did,
|
|
101
|
-
|
|
101
|
+
kid: `${did}#key-1`,
|
|
102
102
|
privateKey: keyPair.privateKey,
|
|
103
103
|
publicKey: keyPair.publicKey,
|
|
104
104
|
createdAt: new Date().toISOString(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/providers/memory.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/providers/memory.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,iCAKgB;AAEhB;;GAEG;AACH,MAAa,qBAAsB,SAAQ,sBAAe;IAChD,KAAK,GAAwB,IAAI,GAAG,EAAE,CAAC;IAE/C,KAAK,CAAC,GAAG,CAAC,GAAW;QACnB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,KAAa;QAClC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACtB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAe;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA1BD,sDA0BC;AAED;;GAEG;AACH,MAAa,wBAAyB,SAAQ,yBAAkB;IACtD,MAAM,GAAwB,IAAI,GAAG,EAAE,CAAC;IAEhD,KAAK,CAAC,GAAG,CAAC,KAAa;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAE1B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC1B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAa,EAAE,SAAiB;QACxC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1C,IAAI,GAAG,GAAG,MAAM,EAAE,CAAC;gBACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;CACF;AA/BD,4DA+BC;AAED;;GAEG;AACH,MAAa,sBAAuB,SAAQ,uBAAgB;IAClD,QAAQ,CAAiB;IACzB,cAAc,CAAM;IAE5B,YAAY,cAAoB;QAC9B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAuB;QACxC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE7D,OAAO;YACL,GAAG;YACH,GAAG,EAAE,GAAG,GAAG,QAAQ;YACnB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,IAAI,EAAE,aAAa;SACpB,CAAC;IACJ,CAAC;IAEO,wBAAwB,CAAC,SAAiB;QAChD,4BAA4B;QAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;aAC7C,QAAQ,CAAC,WAAW,CAAC;aACrB,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpB,OAAO,YAAY,OAAO,EAAE,CAAC;IAC/B,CAAC;CACF;AAtDD,wDAsDC"}
|
package/dist/runtime/base.d.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* and other platforms.
|
|
7
7
|
*/
|
|
8
8
|
import { CryptoProvider, ClockProvider, FetchProvider, StorageProvider, NonceCacheProvider, IdentityProvider, AgentIdentity } from '../providers/base';
|
|
9
|
+
import type { ToolProtectionService } from '../services/tool-protection.service.js';
|
|
9
10
|
export interface MCPIRuntimeConfig {
|
|
10
11
|
cryptoProvider: CryptoProvider;
|
|
11
12
|
clockProvider: ClockProvider;
|
|
@@ -28,6 +29,7 @@ export interface MCPIRuntimeConfig {
|
|
|
28
29
|
};
|
|
29
30
|
showVerifyLink?: boolean;
|
|
30
31
|
identityBadge?: boolean;
|
|
32
|
+
toolProtectionService?: ToolProtectionService;
|
|
31
33
|
}
|
|
32
34
|
export declare class MCPIRuntimeBase {
|
|
33
35
|
protected crypto: CryptoProvider;
|
|
@@ -39,6 +41,7 @@ export declare class MCPIRuntimeBase {
|
|
|
39
41
|
protected config: MCPIRuntimeConfig;
|
|
40
42
|
private cachedIdentity?;
|
|
41
43
|
private sessions;
|
|
44
|
+
private lastProof?;
|
|
42
45
|
constructor(config: MCPIRuntimeConfig);
|
|
43
46
|
/**
|
|
44
47
|
* Initialize the runtime
|
|
@@ -54,8 +57,24 @@ export declare class MCPIRuntimeBase {
|
|
|
54
57
|
handleHandshake(request: any): Promise<any>;
|
|
55
58
|
/**
|
|
56
59
|
* Process tool call with automatic proof generation
|
|
60
|
+
* Returns clean result only - proof is stored for out-of-band retrieval
|
|
61
|
+
*
|
|
62
|
+
* @param toolName - Name of the tool being called
|
|
63
|
+
* @param args - Tool arguments
|
|
64
|
+
* @param handler - Tool execution handler
|
|
65
|
+
* @param session - Session context (expected fields: id, audience, nonce?, delegationToken?, consentProof?)
|
|
57
66
|
*/
|
|
58
67
|
processToolCall(toolName: string, args: any, handler: (args: any) => Promise<any>, session?: any): Promise<any>;
|
|
68
|
+
/**
|
|
69
|
+
* Build consent URL for delegation flow
|
|
70
|
+
* Override this method in subclasses to customize the consent URL
|
|
71
|
+
*/
|
|
72
|
+
protected buildConsentUrl(toolName: string, scopes: string[], session?: any): string;
|
|
73
|
+
/**
|
|
74
|
+
* Issue a new nonce and register it in the cache
|
|
75
|
+
* Use this to get a nonce for the session context before calling processToolCall
|
|
76
|
+
*/
|
|
77
|
+
issueNonce(sessionId: string): Promise<string>;
|
|
59
78
|
/**
|
|
60
79
|
* Create cryptographic proof for data
|
|
61
80
|
*/
|
|
@@ -68,6 +87,10 @@ export declare class MCPIRuntimeBase {
|
|
|
68
87
|
* Get current session
|
|
69
88
|
*/
|
|
70
89
|
getCurrentSession(): Promise<any>;
|
|
90
|
+
/**
|
|
91
|
+
* Get the last generated proof for out-of-band transport
|
|
92
|
+
*/
|
|
93
|
+
getLastProof(): any;
|
|
71
94
|
/**
|
|
72
95
|
* Create well-known handler for identity verification
|
|
73
96
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/runtime/base.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACd,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/runtime/base.ts"],"names":[],"mappings":"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"}
|