@kya-os/mcp 1.2.0 → 1.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/CHANGELOG.md +32 -10
- package/LICENSE +1 -1
- package/README.md +14 -14
- package/dist/auth/handshake.d.ts +1 -1
- package/dist/auth/handshake.js +1 -1
- package/dist/delegation/cascading-revocation.d.ts +1 -1
- package/dist/delegation/cascading-revocation.js +1 -1
- package/dist/delegation/delegation-graph.d.ts +1 -1
- package/dist/delegation/delegation-graph.js +1 -1
- package/dist/delegation/did-web-resolver.d.ts +51 -1
- package/dist/delegation/did-web-resolver.d.ts.map +1 -1
- package/dist/delegation/did-web-resolver.js +108 -0
- package/dist/delegation/did-web-resolver.js.map +1 -1
- package/dist/delegation/outbound-headers.d.ts +14 -14
- package/dist/delegation/outbound-headers.d.ts.map +1 -1
- package/dist/delegation/outbound-headers.js +15 -15
- package/dist/delegation/outbound-headers.js.map +1 -1
- package/dist/delegation/outbound-proof.d.ts +2 -2
- package/dist/delegation/outbound-proof.js +2 -2
- package/dist/delegation/vc-issuer.d.ts +1 -1
- package/dist/delegation/vc-issuer.js +1 -1
- package/dist/delegation/vc-verifier.d.ts +2 -1
- package/dist/delegation/vc-verifier.d.ts.map +1 -1
- package/dist/delegation/vc-verifier.js +1 -1
- package/dist/delegation/vc-verifier.js.map +1 -1
- package/dist/errors.d.ts +6 -6
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +3 -3
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/logging/logger.d.ts +1 -1
- package/dist/logging/logger.js +1 -1
- package/dist/middleware/index.d.ts +6 -6
- package/dist/middleware/index.d.ts.map +1 -1
- package/dist/middleware/index.js +6 -6
- package/dist/middleware/index.js.map +1 -1
- package/dist/middleware/{mcpi-transport.d.ts → kya-os-transport.d.ts} +8 -8
- package/dist/middleware/kya-os-transport.d.ts.map +1 -0
- package/dist/middleware/{mcpi-transport.js → kya-os-transport.js} +9 -9
- package/dist/middleware/kya-os-transport.js.map +1 -0
- package/dist/middleware/{with-mcpi-server.d.ts → with-kya-os-server.d.ts} +24 -24
- package/dist/middleware/with-kya-os-server.d.ts.map +1 -0
- package/dist/middleware/{with-mcpi-server.js → with-kya-os-server.js} +26 -26
- package/dist/middleware/with-kya-os-server.js.map +1 -0
- package/dist/middleware/{with-mcpi.d.ts → with-kya-os.d.ts} +40 -40
- package/dist/middleware/with-kya-os.d.ts.map +1 -0
- package/dist/middleware/{with-mcpi.js → with-kya-os.js} +41 -41
- package/dist/middleware/with-kya-os.js.map +1 -0
- package/dist/proof/generator.d.ts +1 -1
- package/dist/proof/generator.js +1 -1
- package/dist/proof/verifier.js +1 -1
- package/dist/proof/verifier.js.map +1 -1
- package/dist/providers/base.d.ts +32 -3
- package/dist/providers/base.d.ts.map +1 -1
- package/dist/providers/base.js.map +1 -1
- package/dist/providers/node-crypto.d.ts +2 -2
- package/dist/providers/node-crypto.js +2 -2
- package/dist/session/manager.d.ts +5 -5
- package/dist/session/manager.d.ts.map +1 -1
- package/dist/session/manager.js +9 -9
- package/dist/session/manager.js.map +1 -1
- package/dist/types/protocol.d.ts +3 -3
- package/dist/types/protocol.js +3 -3
- package/package.json +4 -4
- package/schemas/README.md +6 -6
- package/schemas/delegation-credential.json +3 -3
- package/schemas/detached-proof.json +1 -1
- package/schemas/handshake-request.json +3 -3
- package/schemas/handshake-response.json +2 -2
- package/schemas/well-known-mcpi.json +7 -7
- package/dist/middleware/mcpi-transport.d.ts.map +0 -1
- package/dist/middleware/mcpi-transport.js.map +0 -1
- package/dist/middleware/with-mcpi-server.d.ts.map +0 -1
- package/dist/middleware/with-mcpi-server.js.map +0 -1
- package/dist/middleware/with-mcpi.d.ts.map +0 -1
- package/dist/middleware/with-mcpi.js.map +0 -1
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* McpServer Adapter for
|
|
2
|
+
* McpServer Adapter for KYA-OS
|
|
3
3
|
*
|
|
4
|
-
* Adds
|
|
4
|
+
* Adds KYA-OS identity, session management, and proof generation to a
|
|
5
5
|
* standard McpServer instance with a single function call.
|
|
6
6
|
*
|
|
7
7
|
* Usage:
|
|
8
|
-
* import {
|
|
9
|
-
* const
|
|
8
|
+
* import { withKyaOs } from '@kya-os/mcp/middleware';
|
|
9
|
+
* const kyaos = await withKyaOs(server, { crypto: new NodeCryptoProvider() });
|
|
10
10
|
* // All tools registered on `server` now get proofs automatically.
|
|
11
11
|
* await server.connect(transport); // transport is transparently wrapped
|
|
12
12
|
*/
|
|
13
13
|
import { generateDidKeyFromBase64, didKeyFragment } from "../utils/did-helpers.js";
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
14
|
+
import { KYA_OS_ACTIONS, createKyaOsMiddleware, } from "./with-kya-os.js";
|
|
15
|
+
import { createKyaOsTransport } from "./kya-os-transport.js";
|
|
16
16
|
import { z } from "zod";
|
|
17
17
|
/**
|
|
18
|
-
* Generate a fresh Ed25519 identity for
|
|
18
|
+
* Generate a fresh Ed25519 identity for KYA-OS.
|
|
19
19
|
*
|
|
20
20
|
* @param crypto - Platform-specific crypto provider
|
|
21
21
|
* @returns Identity config with DID, kid, and key material
|
|
@@ -31,42 +31,42 @@ export async function generateIdentity(crypto) {
|
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
|
-
* Add
|
|
34
|
+
* Add KYA-OS to a McpServer instance.
|
|
35
35
|
*
|
|
36
36
|
* 1. Auto-generates Ed25519 identity (or uses provided one)
|
|
37
|
-
* 2. Registers `
|
|
37
|
+
* 2. Registers `_kyaos` tool by default (`handshakeExposure: "tool"`)
|
|
38
38
|
* 3. Patches `server.connect()` to transparently wrap the transport with
|
|
39
|
-
*
|
|
39
|
+
* KyaOsTransport, which injects detached proofs into all `tools/call`
|
|
40
40
|
* responses using only the public Transport interface.
|
|
41
41
|
*
|
|
42
42
|
* The user-facing API is unchanged — register tools before or after this
|
|
43
43
|
* call, then connect as normal:
|
|
44
44
|
*
|
|
45
45
|
* ```ts
|
|
46
|
-
* const
|
|
47
|
-
* await server.connect(transport); //
|
|
46
|
+
* const kyaos = await withKyaOs(server, { crypto: new NodeCryptoProvider() });
|
|
47
|
+
* await server.connect(transport); // KyaOsTransport wraps silently
|
|
48
48
|
* ```
|
|
49
49
|
*
|
|
50
50
|
* @param server - McpServer instance
|
|
51
51
|
* @param options - Configuration
|
|
52
|
-
* @returns The
|
|
52
|
+
* @returns The KyaOsMiddleware instance for advanced usage (wrapWithDelegation, etc.)
|
|
53
53
|
*/
|
|
54
|
-
export async function
|
|
54
|
+
export async function withKyaOs(server, options) {
|
|
55
55
|
const identity = options.identity ?? (await generateIdentity(options.crypto));
|
|
56
|
-
const
|
|
56
|
+
const kyaos = createKyaOsMiddleware({
|
|
57
57
|
identity,
|
|
58
58
|
session: options.session,
|
|
59
59
|
delegation: options.delegation,
|
|
60
60
|
autoSession: options.autoSession ?? true,
|
|
61
61
|
}, options.crypto);
|
|
62
62
|
if ((options.handshakeExposure ?? "tool") === "tool") {
|
|
63
|
-
// Register the unified
|
|
64
|
-
server.registerTool("
|
|
65
|
-
description: "
|
|
66
|
-
annotations: { title: "
|
|
63
|
+
// Register the unified _kyaos tool for protocol operations.
|
|
64
|
+
server.registerTool("_kyaos", {
|
|
65
|
+
description: "KYA-OS protocol — identity verification, session handshake, and server metadata",
|
|
66
|
+
annotations: { title: "KYA-OS Protocol", readOnlyHint: true },
|
|
67
67
|
inputSchema: {
|
|
68
68
|
action: z
|
|
69
|
-
.enum(
|
|
69
|
+
.enum(KYA_OS_ACTIONS)
|
|
70
70
|
.describe("Protocol operation to perform"),
|
|
71
71
|
nonce: z
|
|
72
72
|
.string()
|
|
@@ -86,7 +86,7 @@ export async function withMCPI(server, options) {
|
|
|
86
86
|
.describe("Client agent DID (handshake, optional)"),
|
|
87
87
|
},
|
|
88
88
|
}, async (args) => {
|
|
89
|
-
const result = await
|
|
89
|
+
const result = await kyaos.handleKyaOs(args);
|
|
90
90
|
return {
|
|
91
91
|
...result,
|
|
92
92
|
content: result.content.map((c) => ({ ...c, type: "text" })),
|
|
@@ -96,14 +96,14 @@ export async function withMCPI(server, options) {
|
|
|
96
96
|
// Auto-proof interception via transport wrapper (public API only).
|
|
97
97
|
//
|
|
98
98
|
// We patch server.connect() so that whatever transport the caller passes
|
|
99
|
-
// is silently wrapped with
|
|
99
|
+
// is silently wrapped with KyaOsTransport before McpServer sees it.
|
|
100
100
|
// Tool registration order does not matter — proofs are injected at the
|
|
101
101
|
// transport boundary, after McpServer has already dispatched the call.
|
|
102
102
|
if (options.proofAllTools !== false) {
|
|
103
|
-
const exclude = ["
|
|
103
|
+
const exclude = ["_kyaos", "_kyaos_handshake", ...(options.excludeTools ?? [])];
|
|
104
104
|
const originalConnect = server.connect.bind(server);
|
|
105
|
-
server.connect = (transport) => originalConnect(
|
|
105
|
+
server.connect = (transport) => originalConnect(createKyaOsTransport(transport, kyaos, exclude));
|
|
106
106
|
}
|
|
107
|
-
return
|
|
107
|
+
return kyaos;
|
|
108
108
|
}
|
|
109
|
-
//# sourceMappingURL=with-
|
|
109
|
+
//# sourceMappingURL=with-kya-os-server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"with-kya-os-server.js","sourceRoot":"","sources":["../../src/middleware/with-kya-os-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACnF,OAAO,EACL,cAAc,EACd,qBAAqB,GAItB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAkB,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAyBxB;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAsB;IAEtB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC;IAC/C,MAAM,GAAG,GAAG,wBAAwB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxD,OAAO;QACL,GAAG;QACH,GAAG,EAAE,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE;QACpC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC;AACJ,CAAC;AAWD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAqB,EACrB,OAAyB;IAEzB,MAAM,QAAQ,GACZ,OAAO,CAAC,QAAQ,IAAI,CAAC,MAAM,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/D,MAAM,KAAK,GAAG,qBAAqB,CACjC;QACE,QAAQ;QACR,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;KACzC,EACD,OAAO,CAAC,MAAM,CACf,CAAC;IAEF,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,MAAM,CAAC,KAAK,MAAM,EAAE,CAAC;QACrD,4DAA4D;QAC5D,MAAM,CAAC,YAAY,CACjB,QAAQ,EACR;YACE,WAAW,EACT,iFAAiF;YACnF,WAAW,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,IAAI,EAAE;YAC7D,WAAW,EAAE;gBACX,MAAM,EAAE,CAAC;qBACN,IAAI,CAAC,cAAc,CAAC;qBACpB,QAAQ,CAAC,+BAA+B,CAAC;gBAC5C,KAAK,EAAE,CAAC;qBACL,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,2CAA2C,CAAC;gBACxD,QAAQ,EAAE,CAAC;qBACR,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,+BAA+B,CAAC;gBAC5C,SAAS,EAAE,CAAC;qBACT,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,gCAAgC,CAAC;gBAC7C,QAAQ,EAAE,CAAC;qBACR,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,wCAAwC,CAAC;aACtD;SACF,EACD,KAAK,EAAE,IAAa,EAAE,EAAE;YACtB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,CACpC,IAA+B,CAChC,CAAC;YACF,OAAO;gBACL,GAAG,MAAM;gBACT,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,CAAC,CAAC;aACtE,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAED,mEAAmE;IACnE,EAAE;IACF,yEAAyE;IACzE,oEAAoE;IACpE,uEAAuE;IACvE,uEAAuE;IACvE,IAAI,OAAO,CAAC,aAAa,KAAK,KAAK,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,kBAAkB,EAAE,GAAG,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;QAChF,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEpD,MAAM,CAAC,OAAO,GAAG,CAAC,SAAoB,EAAE,EAAE,CACxC,eAAe,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* KYA-OS Middleware — Core Implementation
|
|
3
3
|
*
|
|
4
4
|
* Adds identity, session management, and proof generation to MCP servers.
|
|
5
5
|
*
|
|
6
|
-
* For most use cases, prefer the high-level `
|
|
7
|
-
* `./with-
|
|
6
|
+
* For most use cases, prefer the high-level `withKyaOs()` adapter from
|
|
7
|
+
* `./with-kya-os-server.ts` which (by default) auto-registers the handshake
|
|
8
8
|
* tool and auto-attaches proofs to all tool responses:
|
|
9
9
|
*
|
|
10
|
-
* import {
|
|
11
|
-
* await
|
|
10
|
+
* import { withKyaOs } from '@kya-os/mcp';
|
|
11
|
+
* await withKyaOs(server, { crypto: new NodeCryptoProvider() });
|
|
12
12
|
*
|
|
13
|
-
* `
|
|
14
|
-
* internally by `
|
|
13
|
+
* `createKyaOsMiddleware()` in this file is the lower-level API used
|
|
14
|
+
* internally by `withKyaOs()` and for advanced use cases like the
|
|
15
15
|
* low-level `Server` API or custom request handler patterns.
|
|
16
16
|
*/
|
|
17
17
|
import { type CryptoProvider, FetchProvider } from "../providers/base.js";
|
|
@@ -19,15 +19,15 @@ import { SessionManager, type SessionConfig } from "../session/manager.js";
|
|
|
19
19
|
import { ProofGenerator } from "../proof/generator.js";
|
|
20
20
|
import { type DIDResolver, type StatusListResolver } from "../delegation/vc-verifier.js";
|
|
21
21
|
import { type DelegationCredential } from "../types/protocol.js";
|
|
22
|
-
export interface
|
|
22
|
+
export interface KyaOsIdentityConfig {
|
|
23
23
|
did: string;
|
|
24
24
|
kid: string;
|
|
25
25
|
privateKey: string;
|
|
26
26
|
publicKey: string;
|
|
27
27
|
agentName?: string;
|
|
28
28
|
}
|
|
29
|
-
export declare const
|
|
30
|
-
export interface
|
|
29
|
+
export declare const KYA_OS_ACTIONS: readonly ["handshake", "identity", "reputation"];
|
|
30
|
+
export interface KyaOsDelegationConfig {
|
|
31
31
|
/**
|
|
32
32
|
* Optional custom DID resolver. If it returns null, middleware falls back to
|
|
33
33
|
* built-in did:key resolution and fetch-backed did:web resolution.
|
|
@@ -57,7 +57,7 @@ export interface MCPIDelegationConfig {
|
|
|
57
57
|
* that receives the credential will accept it.
|
|
58
58
|
*
|
|
59
59
|
* Recommended for production. See: Alan Karp's transitive access analysis
|
|
60
|
-
* and
|
|
60
|
+
* and KYA-OS §11.6 (Confused Deputy Attacks).
|
|
61
61
|
*
|
|
62
62
|
* Default is false for backward compatibility.
|
|
63
63
|
*/
|
|
@@ -74,22 +74,22 @@ export interface MCPIDelegationConfig {
|
|
|
74
74
|
*/
|
|
75
75
|
allowLegacyUnsafeDelegation?: boolean;
|
|
76
76
|
}
|
|
77
|
-
export interface
|
|
77
|
+
export interface KyaOsConfig {
|
|
78
78
|
/** Agent identity (DID + key material) */
|
|
79
|
-
identity:
|
|
79
|
+
identity: KyaOsIdentityConfig;
|
|
80
80
|
/** Session configuration overrides */
|
|
81
81
|
session?: Omit<SessionConfig, "nonceCache">;
|
|
82
82
|
/** Delegation verification overrides */
|
|
83
|
-
delegation?:
|
|
83
|
+
delegation?: KyaOsDelegationConfig;
|
|
84
84
|
/**
|
|
85
85
|
* When true, automatically creates a session on the first tool call
|
|
86
86
|
* if no session exists. Useful for demos and development where
|
|
87
|
-
* MCP clients don't support the `
|
|
88
|
-
* In production,
|
|
87
|
+
* MCP clients don't support the `_kyaos` handshake flow.
|
|
88
|
+
* In production, KYA-OS-aware runtimes should execute handshake before tool calls.
|
|
89
89
|
*/
|
|
90
90
|
autoSession?: boolean;
|
|
91
91
|
}
|
|
92
|
-
export interface
|
|
92
|
+
export interface KyaOsToolDefinition {
|
|
93
93
|
name: string;
|
|
94
94
|
description?: string;
|
|
95
95
|
inputSchema: {
|
|
@@ -99,7 +99,7 @@ export interface MCPIToolDefinition {
|
|
|
99
99
|
[key: string]: unknown;
|
|
100
100
|
};
|
|
101
101
|
}
|
|
102
|
-
export interface
|
|
102
|
+
export interface KyaOsToolHandler<T extends Record<string, unknown> = Record<string, unknown>> {
|
|
103
103
|
(args: T, sessionId?: string): Promise<{
|
|
104
104
|
content: Array<{
|
|
105
105
|
type: string;
|
|
@@ -114,32 +114,32 @@ export interface MCPIToolHandler<T extends Record<string, unknown> = Record<stri
|
|
|
114
114
|
* Server interface — minimal subset of @modelcontextprotocol/sdk Server.
|
|
115
115
|
* This avoids a hard dependency on the SDK at the type level.
|
|
116
116
|
*/
|
|
117
|
-
export interface
|
|
117
|
+
export interface KyaOsServer {
|
|
118
118
|
setRequestHandler(schema: unknown, handler: (...args: unknown[]) => unknown): void;
|
|
119
119
|
}
|
|
120
|
-
export interface
|
|
120
|
+
export interface KyaOsMiddleware {
|
|
121
121
|
/** The identity config used by this middleware instance */
|
|
122
|
-
identity:
|
|
122
|
+
identity: KyaOsIdentityConfig;
|
|
123
123
|
/** The SessionManager instance for manual session operations */
|
|
124
124
|
sessionManager: SessionManager;
|
|
125
125
|
/** The ProofGenerator instance for manual proof operations */
|
|
126
126
|
proofGenerator: ProofGenerator;
|
|
127
127
|
/**
|
|
128
|
-
* Unified tool definition for `
|
|
128
|
+
* Unified tool definition for `_kyaos`.
|
|
129
129
|
* Include this in your ListToolsRequest handler's tool list.
|
|
130
130
|
*/
|
|
131
|
-
|
|
131
|
+
kyaOsTool: KyaOsToolDefinition;
|
|
132
132
|
/**
|
|
133
|
-
* @deprecated Use `
|
|
134
|
-
* Tool definition for `
|
|
133
|
+
* @deprecated Use `kyaOsTool` (`_kyaos` with `action: "handshake"`).
|
|
134
|
+
* Tool definition for `_kyaos_handshake`.
|
|
135
135
|
* Include this in your ListToolsRequest handler's tool list.
|
|
136
136
|
*/
|
|
137
|
-
handshakeTool:
|
|
137
|
+
handshakeTool: KyaOsToolDefinition;
|
|
138
138
|
/**
|
|
139
|
-
* Handle a unified `
|
|
140
|
-
* when `request.params.name === '
|
|
139
|
+
* Handle a unified `_kyaos` action. Use this in your CallToolRequest handler
|
|
140
|
+
* when `request.params.name === '_kyaos'`.
|
|
141
141
|
*/
|
|
142
|
-
|
|
142
|
+
handleKyaOs(args: Record<string, unknown>): Promise<{
|
|
143
143
|
content: Array<{
|
|
144
144
|
type: string;
|
|
145
145
|
text: string;
|
|
@@ -147,9 +147,9 @@ export interface MCPIMiddleware {
|
|
|
147
147
|
isError?: boolean;
|
|
148
148
|
}>;
|
|
149
149
|
/**
|
|
150
|
-
* @deprecated Use `
|
|
150
|
+
* @deprecated Use `handleKyaOs` with `action: "handshake"`.
|
|
151
151
|
* Handle a handshake call. Use this in your CallToolRequest handler
|
|
152
|
-
* when `request.params.name === '
|
|
152
|
+
* when `request.params.name === '_kyaos_handshake'`.
|
|
153
153
|
*/
|
|
154
154
|
handleHandshake(args: Record<string, unknown>): Promise<{
|
|
155
155
|
content: Array<{
|
|
@@ -162,28 +162,28 @@ export interface MCPIMiddleware {
|
|
|
162
162
|
* Wrap a tool handler to automatically generate proofs.
|
|
163
163
|
* Returns a new handler that appends proof metadata to the response.
|
|
164
164
|
*/
|
|
165
|
-
wrapWithProof<T extends Record<string, unknown> = Record<string, unknown>>(toolName: string, handler:
|
|
165
|
+
wrapWithProof<T extends Record<string, unknown> = Record<string, unknown>>(toolName: string, handler: KyaOsToolHandler<T>): KyaOsToolHandler;
|
|
166
166
|
/**
|
|
167
167
|
* Wrap a tool handler to require a valid W3C Delegation Credential.
|
|
168
168
|
*
|
|
169
|
-
* Caller must pass the VC as `
|
|
169
|
+
* Caller must pass the VC as `_kyaos_delegation` in the tool args.
|
|
170
170
|
* - If absent: returns a `needs_authorization` response with the consentUrl.
|
|
171
171
|
* - If present but invalid: returns a structured error with reason.
|
|
172
|
-
* - If valid with correct scope: strips `
|
|
172
|
+
* - If valid with correct scope: strips `_kyaos_delegation` and calls the handler.
|
|
173
173
|
*/
|
|
174
174
|
wrapWithDelegation(toolName: string, config: {
|
|
175
175
|
scopeId: string;
|
|
176
176
|
consentUrl: string;
|
|
177
|
-
}, handler:
|
|
177
|
+
}, handler: KyaOsToolHandler): KyaOsToolHandler;
|
|
178
178
|
}
|
|
179
179
|
/**
|
|
180
|
-
* Create
|
|
180
|
+
* Create KYA-OS middleware for a standard MCP SDK Server.
|
|
181
181
|
*
|
|
182
|
-
* For most use cases, prefer {@link
|
|
182
|
+
* For most use cases, prefer {@link withKyaOs} from `./with-kya-os-server.ts`
|
|
183
183
|
* which wraps this function and (by default) auto-registers handshake +
|
|
184
184
|
* auto-attaches proofs.
|
|
185
185
|
*
|
|
186
|
-
* Use `
|
|
186
|
+
* Use `createKyaOsMiddleware` directly when:
|
|
187
187
|
* - You use the low-level `Server` API (not `McpServer`)
|
|
188
188
|
* - You need custom request handler patterns
|
|
189
189
|
* - You want per-tool control over proof/delegation wrapping
|
|
@@ -198,5 +198,5 @@ export interface MCPIMiddleware {
|
|
|
198
198
|
* deployments behind a load balancer. For distributed deployments, implement a custom
|
|
199
199
|
* `SessionStore` backed by Redis, DynamoDB, or similar and pass it via `config.session`.
|
|
200
200
|
*/
|
|
201
|
-
export declare function
|
|
202
|
-
//# sourceMappingURL=with-
|
|
201
|
+
export declare function createKyaOsMiddleware(config: KyaOsConfig, cryptoProvider: CryptoProvider): KyaOsMiddleware;
|
|
202
|
+
//# sourceMappingURL=with-kya-os.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"with-kya-os.d.ts","sourceRoot":"","sources":["../../src/middleware/with-kya-os.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EACL,KAAK,cAAc,EACnB,aAAa,EACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,KAAK,aAAa,EAEnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,cAAc,EAIf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAEL,KAAK,WAAW,EAEhB,KAAK,kBAAkB,EACxB,MAAM,8BAA8B,CAAC;AAItC,OAAO,EAGL,KAAK,oBAAoB,EAE1B,MAAM,sBAAsB,CAAC;AAM9B,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,cAAc,kDAAmD,CAAC;AAG/E,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;OAGG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,CACvB,cAAc,EAAE,oBAAoB,KACjC,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;IACrC;;;;;;;;;;;;OAYG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC;;;;;;;;;OASG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;CACvC;AAED,MAAM,WAAW,WAAW;IAC1B,0CAA0C;IAC1C,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,sCAAsC;IACtC,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAC5C,wCAAwC;IACxC,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACrC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB,CAC/B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAE3D,CACE,IAAI,EAAE,CAAC,EACP,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;QACT,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE,CAAC,CAAC;QACvE,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,iBAAiB,CACf,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GACvC,IAAI,CAAC;CACT;AAED,MAAM,WAAW,eAAe;IAC9B,2DAA2D;IAC3D,QAAQ,EAAE,mBAAmB,CAAC;IAE9B,gEAAgE;IAChE,cAAc,EAAE,cAAc,CAAC;IAE/B,8DAA8D;IAC9D,cAAc,EAAE,cAAc,CAAC;IAE/B;;;OAGG;IACH,SAAS,EAAE,mBAAmB,CAAC;IAE/B;;;;OAIG;IACH,aAAa,EAAE,mBAAmB,CAAC;IAEnC;;;OAGG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;QAClD,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC,CAAC;IAEH;;;;OAIG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC;QACtD,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC,CAAC;IAEH;;;OAGG;IACH,aAAa,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvE,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAC3B,gBAAgB,CAAC;IAEpB;;;;;;;OAOG;IACH,kBAAkB,CAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB,EACD,OAAO,EAAE,gBAAgB,GACxB,gBAAgB,CAAC;CACrB;AAqED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,EACnB,cAAc,EAAE,cAAc,GAC7B,eAAe,CAmpBjB"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* KYA-OS Middleware — Core Implementation
|
|
3
3
|
*
|
|
4
4
|
* Adds identity, session management, and proof generation to MCP servers.
|
|
5
5
|
*
|
|
6
|
-
* For most use cases, prefer the high-level `
|
|
7
|
-
* `./with-
|
|
6
|
+
* For most use cases, prefer the high-level `withKyaOs()` adapter from
|
|
7
|
+
* `./with-kya-os-server.ts` which (by default) auto-registers the handshake
|
|
8
8
|
* tool and auto-attaches proofs to all tool responses:
|
|
9
9
|
*
|
|
10
|
-
* import {
|
|
11
|
-
* await
|
|
10
|
+
* import { withKyaOs } from '@kya-os/mcp';
|
|
11
|
+
* await withKyaOs(server, { crypto: new NodeCryptoProvider() });
|
|
12
12
|
*
|
|
13
|
-
* `
|
|
14
|
-
* internally by `
|
|
13
|
+
* `createKyaOsMiddleware()` in this file is the lower-level API used
|
|
14
|
+
* internally by `withKyaOs()` and for advanced use cases like the
|
|
15
15
|
* low-level `Server` API or custom request handler patterns.
|
|
16
16
|
*/
|
|
17
17
|
import { FetchProvider, } from "../providers/base.js";
|
|
@@ -24,10 +24,10 @@ import { createDidWebResolver } from "../delegation/did-web-resolver.js";
|
|
|
24
24
|
import { verifyDelegationAudience } from "../delegation/audience-validator.js";
|
|
25
25
|
import { createNeedsAuthorizationError, extractDelegationFromVC, } from "../types/protocol.js";
|
|
26
26
|
import { logger } from "../logging/index.js";
|
|
27
|
-
import {
|
|
27
|
+
import { KYA_OS_ERROR_CODES } from "../errors.js";
|
|
28
28
|
import { canonicalizeJSON, parseVCJWT } from "../delegation/utils.js";
|
|
29
29
|
import { base64urlDecodeToBytes, base64urlEncodeFromBytes, bytesToBase64 } from "../utils/base64.js";
|
|
30
|
-
export const
|
|
30
|
+
export const KYA_OS_ACTIONS = ["handshake", "identity", "reputation"];
|
|
31
31
|
class RuntimeFetchProvider extends FetchProvider {
|
|
32
32
|
async resolveDID() {
|
|
33
33
|
return null;
|
|
@@ -79,13 +79,13 @@ function validateScopeAttenuation(parentCredential, childCredential) {
|
|
|
79
79
|
return { valid: true };
|
|
80
80
|
}
|
|
81
81
|
/**
|
|
82
|
-
* Create
|
|
82
|
+
* Create KYA-OS middleware for a standard MCP SDK Server.
|
|
83
83
|
*
|
|
84
|
-
* For most use cases, prefer {@link
|
|
84
|
+
* For most use cases, prefer {@link withKyaOs} from `./with-kya-os-server.ts`
|
|
85
85
|
* which wraps this function and (by default) auto-registers handshake +
|
|
86
86
|
* auto-attaches proofs.
|
|
87
87
|
*
|
|
88
|
-
* Use `
|
|
88
|
+
* Use `createKyaOsMiddleware` directly when:
|
|
89
89
|
* - You use the low-level `Server` API (not `McpServer`)
|
|
90
90
|
* - You need custom request handler patterns
|
|
91
91
|
* - You want per-tool control over proof/delegation wrapping
|
|
@@ -100,7 +100,7 @@ function validateScopeAttenuation(parentCredential, childCredential) {
|
|
|
100
100
|
* deployments behind a load balancer. For distributed deployments, implement a custom
|
|
101
101
|
* `SessionStore` backed by Redis, DynamoDB, or similar and pass it via `config.session`.
|
|
102
102
|
*/
|
|
103
|
-
export function
|
|
103
|
+
export function createKyaOsMiddleware(config, cryptoProvider) {
|
|
104
104
|
const identity = {
|
|
105
105
|
did: config.identity.did,
|
|
106
106
|
kid: config.identity.kid,
|
|
@@ -118,8 +118,8 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
118
118
|
// Active session tracking — set after handshake (manual or auto)
|
|
119
119
|
let activeSessionId;
|
|
120
120
|
const handshakeTool = {
|
|
121
|
-
name: "
|
|
122
|
-
description: "
|
|
121
|
+
name: "_kyaos_handshake",
|
|
122
|
+
description: "KYA-OS identity handshake — establishes a cryptographic session",
|
|
123
123
|
inputSchema: {
|
|
124
124
|
type: "object",
|
|
125
125
|
properties: {
|
|
@@ -137,15 +137,15 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
137
137
|
required: ["nonce", "audience", "timestamp"],
|
|
138
138
|
},
|
|
139
139
|
};
|
|
140
|
-
const
|
|
141
|
-
name: "
|
|
142
|
-
description: "
|
|
140
|
+
const kyaOsTool = {
|
|
141
|
+
name: "_kyaos",
|
|
142
|
+
description: "KYA-OS protocol — identity verification, session handshake, and server metadata",
|
|
143
143
|
inputSchema: {
|
|
144
144
|
type: "object",
|
|
145
145
|
properties: {
|
|
146
146
|
action: {
|
|
147
147
|
type: "string",
|
|
148
|
-
enum: [...
|
|
148
|
+
enum: [...KYA_OS_ACTIONS],
|
|
149
149
|
description: "Protocol operation to perform",
|
|
150
150
|
},
|
|
151
151
|
nonce: { type: "string", description: "Client-generated unique nonce" },
|
|
@@ -171,7 +171,7 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
171
171
|
text: JSON.stringify({
|
|
172
172
|
success: false,
|
|
173
173
|
error: {
|
|
174
|
-
code:
|
|
174
|
+
code: KYA_OS_ERROR_CODES.handshake_failed,
|
|
175
175
|
message: "Invalid handshake format: requires nonce (string), audience (string), and timestamp (positive integer)",
|
|
176
176
|
},
|
|
177
177
|
}),
|
|
@@ -219,7 +219,7 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
219
219
|
],
|
|
220
220
|
};
|
|
221
221
|
}
|
|
222
|
-
async function
|
|
222
|
+
async function handleKyaOs(args) {
|
|
223
223
|
const action = typeof args.action === "string"
|
|
224
224
|
? args.action
|
|
225
225
|
: undefined;
|
|
@@ -236,7 +236,7 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
236
236
|
text: JSON.stringify({
|
|
237
237
|
success: false,
|
|
238
238
|
error: {
|
|
239
|
-
code:
|
|
239
|
+
code: KYA_OS_ERROR_CODES.runtime_error,
|
|
240
240
|
message: 'action: "reputation" is not yet implemented.',
|
|
241
241
|
},
|
|
242
242
|
}),
|
|
@@ -252,8 +252,8 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
252
252
|
text: JSON.stringify({
|
|
253
253
|
success: false,
|
|
254
254
|
error: {
|
|
255
|
-
code:
|
|
256
|
-
message: `Unknown
|
|
255
|
+
code: KYA_OS_ERROR_CODES.invalid_request,
|
|
256
|
+
message: `Unknown _kyaos action: "${action ?? "(missing)"}". Valid actions: ${KYA_OS_ACTIONS.join(", ")}`,
|
|
257
257
|
},
|
|
258
258
|
}),
|
|
259
259
|
},
|
|
@@ -264,8 +264,8 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
264
264
|
}
|
|
265
265
|
/**
|
|
266
266
|
* Auto-create a session for proof generation when no handshake has occurred.
|
|
267
|
-
* In production,
|
|
268
|
-
* This convenience mode allows non-
|
|
267
|
+
* In production, KYA-OS-aware runtimes should execute handshake before tool calls.
|
|
268
|
+
* This convenience mode allows non-KYA-OS clients (like MCP Inspector) to
|
|
269
269
|
* still see proofs without manual handshake.
|
|
270
270
|
*/
|
|
271
271
|
async function ensureSession() {
|
|
@@ -315,7 +315,7 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
315
315
|
result._meta = { proof };
|
|
316
316
|
}
|
|
317
317
|
catch (error) {
|
|
318
|
-
logger.error("[
|
|
318
|
+
logger.error("[kya-os] Proof generation failed", {
|
|
319
319
|
tool: toolName,
|
|
320
320
|
error: error instanceof Error ? error.message : String(error),
|
|
321
321
|
});
|
|
@@ -408,7 +408,7 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
408
408
|
if (leafDelegation.parentId) {
|
|
409
409
|
if (!delegationConfig?.resolveDelegationChain) {
|
|
410
410
|
if (legacyUnsafeDelegationEnabled) {
|
|
411
|
-
logger.warn(`[
|
|
411
|
+
logger.warn(`[kya-os] Legacy delegation mode enabled: accepting parent-linked credential ${leafDelegation.id} without resolveDelegationChain`);
|
|
412
412
|
return { valid: true };
|
|
413
413
|
}
|
|
414
414
|
return {
|
|
@@ -457,7 +457,7 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
457
457
|
seenIds.add(delegation.id);
|
|
458
458
|
if (credential.credentialStatus && !delegationConfig?.statusListResolver) {
|
|
459
459
|
if (legacyUnsafeDelegationEnabled) {
|
|
460
|
-
logger.warn(`[
|
|
460
|
+
logger.warn(`[kya-os] Legacy delegation mode enabled: skipping status-list verification for ${delegation.id}`);
|
|
461
461
|
}
|
|
462
462
|
else {
|
|
463
463
|
return {
|
|
@@ -537,7 +537,7 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
537
537
|
return { valid: true };
|
|
538
538
|
};
|
|
539
539
|
return async (args, sessionId) => {
|
|
540
|
-
const delegationArg = args["
|
|
540
|
+
const delegationArg = args["_kyaos_delegation"];
|
|
541
541
|
if (delegationArg === undefined || delegationArg === null) {
|
|
542
542
|
// No delegation provided — return needs_authorization response
|
|
543
543
|
const tokenBytes = await cryptoProvider.randomBytes(16);
|
|
@@ -571,7 +571,7 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
571
571
|
if (typeof delegationArg === "string") {
|
|
572
572
|
const parsed = parseVCJWT(delegationArg);
|
|
573
573
|
if (!parsed || !parsed.payload.vc) {
|
|
574
|
-
return buildDelegationErrorResponse(
|
|
574
|
+
return buildDelegationErrorResponse(KYA_OS_ERROR_CODES.delegation_invalid, "Invalid VC-JWT format");
|
|
575
575
|
}
|
|
576
576
|
vc = parsed.payload.vc;
|
|
577
577
|
// VC-JWTs don't have an embedded proof — the JWT signature is the
|
|
@@ -592,21 +592,21 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
592
592
|
skipSignature: isVCJWT,
|
|
593
593
|
});
|
|
594
594
|
if (!verificationResult.valid) {
|
|
595
|
-
logger.warn(`[
|
|
596
|
-
return buildDelegationErrorResponse(
|
|
595
|
+
logger.warn(`[kya-os] Delegation verification failed for "${toolName}": ${verificationResult.reason}`);
|
|
596
|
+
return buildDelegationErrorResponse(KYA_OS_ERROR_CODES.delegation_invalid, verificationResult.reason ?? "Unknown delegation validation error");
|
|
597
597
|
}
|
|
598
598
|
const scopes = getDelegationScopes(vc);
|
|
599
599
|
if (!scopes.includes(config.scopeId)) {
|
|
600
|
-
logger.warn(`[
|
|
601
|
-
return buildDelegationErrorResponse(
|
|
600
|
+
logger.warn(`[kya-os] Delegation missing required scope "${config.scopeId}" for "${toolName}"`);
|
|
601
|
+
return buildDelegationErrorResponse(KYA_OS_ERROR_CODES.insufficient_scope, `Required scope "${config.scopeId}" not in delegation scopes`);
|
|
602
602
|
}
|
|
603
|
-
// Strip
|
|
603
|
+
// Strip _kyaos_delegation from args before passing to handler
|
|
604
604
|
const cleanArgs = {};
|
|
605
605
|
for (const [k, v] of Object.entries(args)) {
|
|
606
|
-
if (k !== "
|
|
606
|
+
if (k !== "_kyaos_delegation")
|
|
607
607
|
cleanArgs[k] = v;
|
|
608
608
|
}
|
|
609
|
-
logger.debug(`[
|
|
609
|
+
logger.debug(`[kya-os] Delegation verified for "${toolName}", scope "${config.scopeId}"`);
|
|
610
610
|
return handler(cleanArgs, sessionId);
|
|
611
611
|
};
|
|
612
612
|
}
|
|
@@ -614,12 +614,12 @@ export function createMCPIMiddleware(config, cryptoProvider) {
|
|
|
614
614
|
identity: config.identity,
|
|
615
615
|
sessionManager,
|
|
616
616
|
proofGenerator,
|
|
617
|
-
|
|
617
|
+
kyaOsTool,
|
|
618
618
|
handshakeTool,
|
|
619
|
-
|
|
619
|
+
handleKyaOs,
|
|
620
620
|
handleHandshake,
|
|
621
621
|
wrapWithProof,
|
|
622
622
|
wrapWithDelegation,
|
|
623
623
|
};
|
|
624
624
|
}
|
|
625
|
-
//# sourceMappingURL=with-
|
|
625
|
+
//# sourceMappingURL=with-kya-os.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"with-kya-os.js","sourceRoot":"","sources":["../../src/middleware/with-kya-os.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Proof Generation — Platform-agnostic Protocol Reference
|
|
3
3
|
*
|
|
4
4
|
* Handles JCS canonicalization, SHA-256 digest generation, and Ed25519 JWS
|
|
5
|
-
* signing (compact format) according to
|
|
5
|
+
* signing (compact format) according to KYA-OS requirements 5.1, 5.2, 5.3, 5.6.
|
|
6
6
|
*
|
|
7
7
|
* This module is the authoritative proof implementation. All platform adapters
|
|
8
8
|
* (Node.js, Cloudflare Workers) inject a CryptoProvider and delegate here.
|
package/dist/proof/generator.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Proof Generation — Platform-agnostic Protocol Reference
|
|
3
3
|
*
|
|
4
4
|
* Handles JCS canonicalization, SHA-256 digest generation, and Ed25519 JWS
|
|
5
|
-
* signing (compact format) according to
|
|
5
|
+
* signing (compact format) according to KYA-OS requirements 5.1, 5.2, 5.3, 5.6.
|
|
6
6
|
*
|
|
7
7
|
* This module is the authoritative proof implementation. All platform adapters
|
|
8
8
|
* (Node.js, Cloudflare Workers) inject a CryptoProvider and delegate here.
|
package/dist/proof/verifier.js
CHANGED
|
@@ -280,7 +280,7 @@ export class ProofVerifier {
|
|
|
280
280
|
aud: meta.audience, // Audience (who the token is for)
|
|
281
281
|
sub: meta.did, // Subject (agent DID)
|
|
282
282
|
iss: meta.did, // Issuer (agent DID - self-issued)
|
|
283
|
-
// Custom
|
|
283
|
+
// Custom KYA-OS proof claims
|
|
284
284
|
requestHash: meta.requestHash,
|
|
285
285
|
responseHash: meta.responseHash,
|
|
286
286
|
ts: meta.ts,
|