@kya-os/mcp-i 0.1.0-alpha.2.9 → 0.1.0-alpha.3.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/dist/{crypto.js → cjs/crypto.js} +17 -2
- package/dist/esm/auto.d.ts +13 -0
- package/dist/esm/auto.d.ts.map +1 -0
- package/dist/esm/auto.js +30 -0
- package/dist/esm/auto.js.map +1 -0
- package/dist/esm/crypto.d.ts +51 -0
- package/dist/esm/crypto.d.ts.map +1 -0
- package/dist/esm/crypto.js +230 -0
- package/dist/esm/crypto.js.map +1 -0
- package/dist/esm/dev-helper.d.ts +15 -0
- package/dist/esm/dev-helper.d.ts.map +1 -0
- package/dist/esm/dev-helper.js +63 -0
- package/dist/esm/dev-helper.js.map +1 -0
- package/dist/esm/encrypted-storage.d.ts +19 -0
- package/dist/esm/encrypted-storage.d.ts.map +1 -0
- package/dist/esm/encrypted-storage.js +48 -0
- package/dist/esm/encrypted-storage.js.map +1 -0
- package/dist/esm/index.d.ts +128 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +671 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/logger.d.ts +46 -0
- package/dist/esm/logger.d.ts.map +1 -0
- package/dist/esm/logger.js +76 -0
- package/dist/esm/logger.js.map +1 -0
- package/dist/esm/nextjs.d.ts +22 -0
- package/dist/esm/nextjs.d.ts.map +1 -0
- package/dist/esm/nextjs.js +82 -0
- package/dist/esm/nextjs.js.map +1 -0
- package/dist/esm/registry/index.d.ts +43 -0
- package/dist/esm/registry/index.d.ts.map +1 -0
- package/dist/esm/registry/index.js +89 -0
- package/dist/esm/registry/index.js.map +1 -0
- package/dist/esm/registry/knowthat.d.ts +30 -0
- package/dist/esm/registry/knowthat.d.ts.map +1 -0
- package/dist/esm/registry/knowthat.js +106 -0
- package/dist/esm/registry/knowthat.js.map +1 -0
- package/dist/esm/rotation.d.ts +57 -0
- package/dist/esm/rotation.d.ts.map +1 -0
- package/dist/esm/rotation.js +133 -0
- package/dist/esm/rotation.js.map +1 -0
- package/dist/esm/storage.d.ts +65 -0
- package/dist/esm/storage.d.ts.map +1 -0
- package/dist/esm/storage.js +160 -0
- package/dist/esm/storage.js.map +1 -0
- package/dist/esm/transport.d.ts +52 -0
- package/dist/esm/transport.d.ts.map +1 -0
- package/dist/esm/transport.js +209 -0
- package/dist/esm/transport.js.map +1 -0
- package/dist/esm/types.d.ts +188 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +5 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/vercel-adapter.d.ts +26 -0
- package/dist/esm/vercel-adapter.d.ts.map +1 -0
- package/dist/esm/vercel-adapter.js +80 -0
- package/dist/esm/vercel-adapter.js.map +1 -0
- package/package.json +23 -19
- /package/dist/{auto.d.ts → cjs/auto.d.ts} +0 -0
- /package/dist/{auto.js → cjs/auto.js} +0 -0
- /package/dist/{crypto.d.ts → cjs/crypto.d.ts} +0 -0
- /package/dist/{dev-helper.d.ts → cjs/dev-helper.d.ts} +0 -0
- /package/dist/{dev-helper.js → cjs/dev-helper.js} +0 -0
- /package/dist/{encrypted-storage.d.ts → cjs/encrypted-storage.d.ts} +0 -0
- /package/dist/{encrypted-storage.js → cjs/encrypted-storage.js} +0 -0
- /package/dist/{index.d.ts → cjs/index.d.ts} +0 -0
- /package/dist/{index.js → cjs/index.js} +0 -0
- /package/dist/{logger.d.ts → cjs/logger.d.ts} +0 -0
- /package/dist/{logger.js → cjs/logger.js} +0 -0
- /package/dist/{nextjs.d.ts → cjs/nextjs.d.ts} +0 -0
- /package/dist/{nextjs.js → cjs/nextjs.js} +0 -0
- /package/dist/{registry → cjs/registry}/index.d.ts +0 -0
- /package/dist/{registry → cjs/registry}/index.js +0 -0
- /package/dist/{registry → cjs/registry}/knowthat.d.ts +0 -0
- /package/dist/{registry → cjs/registry}/knowthat.js +0 -0
- /package/dist/{rotation.d.ts → cjs/rotation.d.ts} +0 -0
- /package/dist/{rotation.js → cjs/rotation.js} +0 -0
- /package/dist/{storage.d.ts → cjs/storage.d.ts} +0 -0
- /package/dist/{storage.js → cjs/storage.js} +0 -0
- /package/dist/{transport.d.ts → cjs/transport.d.ts} +0 -0
- /package/dist/{transport.js → cjs/transport.js} +0 -0
- /package/dist/{types.d.ts → cjs/types.d.ts} +0 -0
- /package/dist/{types.js → cjs/types.js} +0 -0
- /package/dist/{vercel-adapter.d.ts → cjs/vercel-adapter.d.ts} +0 -0
- /package/dist/{vercel-adapter.js → cjs/vercel-adapter.js} +0 -0
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @kya-os/mcp-i - Optimized MCP Identity with production features
|
|
3
|
+
*
|
|
4
|
+
* Enable any MCP server to get a verifiable identity with just 2 lines of code:
|
|
5
|
+
*
|
|
6
|
+
* ```typescript
|
|
7
|
+
* import "@kya-os/mcp-i/auto"; // That's it! Your server now has identity
|
|
8
|
+
* ```
|
|
9
|
+
*/
|
|
10
|
+
import { MCPIdentityOptions, Challenge, ChallengeResponse, MCPICapabilities, SignedResponse, MCPMiddleware, DirectoryPreference } from './types';
|
|
11
|
+
import { KeyRotationResult, KeyHealth } from './rotation';
|
|
12
|
+
export * from './types';
|
|
13
|
+
export * from './vercel-adapter';
|
|
14
|
+
export { RegistryFactory, REGISTRY_TIERS, resolveRegistries } from './registry';
|
|
15
|
+
export { LoggerFactory, ConsoleLogger, SilentLogger } from './logger';
|
|
16
|
+
export { StorageFactory, MemoryStorage, FileStorage } from './storage';
|
|
17
|
+
export { TransportFactory, RuntimeDetector } from './transport';
|
|
18
|
+
export { KeyRotationManager } from './rotation';
|
|
19
|
+
export { initWithDevExperience, showAgentStatus } from './dev-helper';
|
|
20
|
+
export declare class MCPIdentity {
|
|
21
|
+
readonly did: string;
|
|
22
|
+
readonly publicKey: string;
|
|
23
|
+
private privateKey;
|
|
24
|
+
private timestampTolerance;
|
|
25
|
+
private enableNonceTracking;
|
|
26
|
+
private usedNonces;
|
|
27
|
+
private nonceCleanupInterval?;
|
|
28
|
+
private encryptionPassword?;
|
|
29
|
+
private decryptedPrivateKey?;
|
|
30
|
+
private directories;
|
|
31
|
+
private storage;
|
|
32
|
+
private transport;
|
|
33
|
+
private logger;
|
|
34
|
+
private rotationManager?;
|
|
35
|
+
private precomputed;
|
|
36
|
+
private constructor();
|
|
37
|
+
/**
|
|
38
|
+
* Initialize MCP Identity - the main entry point
|
|
39
|
+
*/
|
|
40
|
+
static init(options?: MCPIdentityOptions): Promise<MCPIdentity>;
|
|
41
|
+
/**
|
|
42
|
+
* Enable automatic key rotation
|
|
43
|
+
*/
|
|
44
|
+
enableAutoRotation(policy?: {
|
|
45
|
+
maxAge?: number;
|
|
46
|
+
maxSignatures?: number;
|
|
47
|
+
}): Promise<void>;
|
|
48
|
+
/**
|
|
49
|
+
* Manually rotate keys
|
|
50
|
+
*/
|
|
51
|
+
rotateKeys(reason?: string): Promise<KeyRotationResult>;
|
|
52
|
+
/**
|
|
53
|
+
* Check key health
|
|
54
|
+
*/
|
|
55
|
+
checkKeyHealth(): KeyHealth | null;
|
|
56
|
+
/**
|
|
57
|
+
* Get decrypted private key (lazy decryption)
|
|
58
|
+
*/
|
|
59
|
+
private getPrivateKey;
|
|
60
|
+
/**
|
|
61
|
+
* Sign a message with caching
|
|
62
|
+
*/
|
|
63
|
+
sign(message: string | Buffer): Promise<string>;
|
|
64
|
+
/**
|
|
65
|
+
* Request edit access with claim URL support
|
|
66
|
+
*/
|
|
67
|
+
requestEditAccess(): Promise<{
|
|
68
|
+
editUrl: string;
|
|
69
|
+
claimUrl?: string;
|
|
70
|
+
}>;
|
|
71
|
+
/**
|
|
72
|
+
* Verify a signature
|
|
73
|
+
*/
|
|
74
|
+
verify(message: string | Buffer, signature: string, publicKey?: string): Promise<boolean>;
|
|
75
|
+
/**
|
|
76
|
+
* Respond to an MCP-I challenge
|
|
77
|
+
*/
|
|
78
|
+
respondToChallenge(challenge: Challenge): Promise<ChallengeResponse>;
|
|
79
|
+
/**
|
|
80
|
+
* Get MCP-I capabilities for advertisement
|
|
81
|
+
*/
|
|
82
|
+
getCapabilities(): MCPICapabilities;
|
|
83
|
+
/**
|
|
84
|
+
* Sign an MCP response with identity metadata
|
|
85
|
+
*/
|
|
86
|
+
signResponse<T = any>(response: T): Promise<SignedResponse<T>>;
|
|
87
|
+
/**
|
|
88
|
+
* Generate a new nonce for challenges
|
|
89
|
+
*/
|
|
90
|
+
static generateNonce(): string;
|
|
91
|
+
/**
|
|
92
|
+
* Get directory preferences
|
|
93
|
+
*/
|
|
94
|
+
getDirectories(): DirectoryPreference;
|
|
95
|
+
/**
|
|
96
|
+
* Clean up old nonces periodically to prevent memory leaks
|
|
97
|
+
*/
|
|
98
|
+
private startNonceCleanup;
|
|
99
|
+
/**
|
|
100
|
+
* Clean up resources
|
|
101
|
+
*/
|
|
102
|
+
destroy(): void;
|
|
103
|
+
/**
|
|
104
|
+
* Helper to extract agent name from DID
|
|
105
|
+
*/
|
|
106
|
+
private extractAgentName;
|
|
107
|
+
/**
|
|
108
|
+
* Helper to extract agent ID
|
|
109
|
+
*/
|
|
110
|
+
private extractAgentId;
|
|
111
|
+
/**
|
|
112
|
+
* Helper to extract agent slug
|
|
113
|
+
*/
|
|
114
|
+
private extractAgentSlug;
|
|
115
|
+
/**
|
|
116
|
+
* Persist full identity (for key rotation)
|
|
117
|
+
*/
|
|
118
|
+
private persistIdentity;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Enable MCP Identity for any MCP server
|
|
122
|
+
*/
|
|
123
|
+
export declare function enableMCPIdentity(options?: MCPIdentityOptions): Promise<MCPIdentity>;
|
|
124
|
+
/**
|
|
125
|
+
* Create MCP middleware for manual integration
|
|
126
|
+
*/
|
|
127
|
+
export declare function createMCPMiddleware(identity: MCPIdentity): MCPMiddleware;
|
|
128
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|