@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.
Files changed (79) hide show
  1. package/CHANGELOG.md +32 -10
  2. package/LICENSE +1 -1
  3. package/README.md +14 -14
  4. package/dist/auth/handshake.d.ts +1 -1
  5. package/dist/auth/handshake.js +1 -1
  6. package/dist/delegation/cascading-revocation.d.ts +1 -1
  7. package/dist/delegation/cascading-revocation.js +1 -1
  8. package/dist/delegation/delegation-graph.d.ts +1 -1
  9. package/dist/delegation/delegation-graph.js +1 -1
  10. package/dist/delegation/did-web-resolver.d.ts +51 -1
  11. package/dist/delegation/did-web-resolver.d.ts.map +1 -1
  12. package/dist/delegation/did-web-resolver.js +108 -0
  13. package/dist/delegation/did-web-resolver.js.map +1 -1
  14. package/dist/delegation/outbound-headers.d.ts +14 -14
  15. package/dist/delegation/outbound-headers.d.ts.map +1 -1
  16. package/dist/delegation/outbound-headers.js +15 -15
  17. package/dist/delegation/outbound-headers.js.map +1 -1
  18. package/dist/delegation/outbound-proof.d.ts +2 -2
  19. package/dist/delegation/outbound-proof.js +2 -2
  20. package/dist/delegation/vc-issuer.d.ts +1 -1
  21. package/dist/delegation/vc-issuer.js +1 -1
  22. package/dist/delegation/vc-verifier.d.ts +2 -1
  23. package/dist/delegation/vc-verifier.d.ts.map +1 -1
  24. package/dist/delegation/vc-verifier.js +1 -1
  25. package/dist/delegation/vc-verifier.js.map +1 -1
  26. package/dist/errors.d.ts +6 -6
  27. package/dist/errors.d.ts.map +1 -1
  28. package/dist/errors.js +3 -3
  29. package/dist/errors.js.map +1 -1
  30. package/dist/index.d.ts +5 -5
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +4 -4
  33. package/dist/index.js.map +1 -1
  34. package/dist/logging/logger.d.ts +1 -1
  35. package/dist/logging/logger.js +1 -1
  36. package/dist/middleware/index.d.ts +6 -6
  37. package/dist/middleware/index.d.ts.map +1 -1
  38. package/dist/middleware/index.js +6 -6
  39. package/dist/middleware/index.js.map +1 -1
  40. package/dist/middleware/{mcpi-transport.d.ts → kya-os-transport.d.ts} +8 -8
  41. package/dist/middleware/kya-os-transport.d.ts.map +1 -0
  42. package/dist/middleware/{mcpi-transport.js → kya-os-transport.js} +9 -9
  43. package/dist/middleware/kya-os-transport.js.map +1 -0
  44. package/dist/middleware/{with-mcpi-server.d.ts → with-kya-os-server.d.ts} +24 -24
  45. package/dist/middleware/with-kya-os-server.d.ts.map +1 -0
  46. package/dist/middleware/{with-mcpi-server.js → with-kya-os-server.js} +26 -26
  47. package/dist/middleware/with-kya-os-server.js.map +1 -0
  48. package/dist/middleware/{with-mcpi.d.ts → with-kya-os.d.ts} +40 -40
  49. package/dist/middleware/with-kya-os.d.ts.map +1 -0
  50. package/dist/middleware/{with-mcpi.js → with-kya-os.js} +41 -41
  51. package/dist/middleware/with-kya-os.js.map +1 -0
  52. package/dist/proof/generator.d.ts +1 -1
  53. package/dist/proof/generator.js +1 -1
  54. package/dist/proof/verifier.js +1 -1
  55. package/dist/proof/verifier.js.map +1 -1
  56. package/dist/providers/base.d.ts +32 -3
  57. package/dist/providers/base.d.ts.map +1 -1
  58. package/dist/providers/base.js.map +1 -1
  59. package/dist/providers/node-crypto.d.ts +2 -2
  60. package/dist/providers/node-crypto.js +2 -2
  61. package/dist/session/manager.d.ts +5 -5
  62. package/dist/session/manager.d.ts.map +1 -1
  63. package/dist/session/manager.js +9 -9
  64. package/dist/session/manager.js.map +1 -1
  65. package/dist/types/protocol.d.ts +3 -3
  66. package/dist/types/protocol.js +3 -3
  67. package/package.json +4 -4
  68. package/schemas/README.md +6 -6
  69. package/schemas/delegation-credential.json +3 -3
  70. package/schemas/detached-proof.json +1 -1
  71. package/schemas/handshake-request.json +3 -3
  72. package/schemas/handshake-response.json +2 -2
  73. package/schemas/well-known-mcpi.json +7 -7
  74. package/dist/middleware/mcpi-transport.d.ts.map +0 -1
  75. package/dist/middleware/mcpi-transport.js.map +0 -1
  76. package/dist/middleware/with-mcpi-server.d.ts.map +0 -1
  77. package/dist/middleware/with-mcpi-server.js.map +0 -1
  78. package/dist/middleware/with-mcpi.d.ts.map +0 -1
  79. package/dist/middleware/with-mcpi.js.map +0 -1
@@ -1,21 +1,21 @@
1
1
  /**
2
- * McpServer Adapter for MCP-I
2
+ * McpServer Adapter for KYA-OS
3
3
  *
4
- * Adds MCP-I identity, session management, and proof generation to a
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 { withMCPI } from '@kya-os/mcp/middleware';
9
- * const mcpi = await withMCPI(server, { crypto: new NodeCryptoProvider() });
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 { MCPI_ACTIONS, createMCPIMiddleware, } from "./with-mcpi.js";
15
- import { createMCPITransport } from "./mcpi-transport.js";
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 MCP-I.
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 MCP-I to a McpServer instance.
34
+ * Add KYA-OS to a McpServer instance.
35
35
  *
36
36
  * 1. Auto-generates Ed25519 identity (or uses provided one)
37
- * 2. Registers `_mcpi` tool by default (`handshakeExposure: "tool"`)
37
+ * 2. Registers `_kyaos` tool by default (`handshakeExposure: "tool"`)
38
38
  * 3. Patches `server.connect()` to transparently wrap the transport with
39
- * MCPITransport, which injects detached proofs into all `tools/call`
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 mcpi = await withMCPI(server, { crypto: new NodeCryptoProvider() });
47
- * await server.connect(transport); // MCPITransport wraps silently
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 MCPIMiddleware instance for advanced usage (wrapWithDelegation, etc.)
52
+ * @returns The KyaOsMiddleware instance for advanced usage (wrapWithDelegation, etc.)
53
53
  */
54
- export async function withMCPI(server, options) {
54
+ export async function withKyaOs(server, options) {
55
55
  const identity = options.identity ?? (await generateIdentity(options.crypto));
56
- const mcpi = createMCPIMiddleware({
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 _mcpi tool for protocol operations.
64
- server.registerTool("_mcpi", {
65
- description: "MCP-I protocol — identity verification, session handshake, and server metadata",
66
- annotations: { title: "MCP-I Protocol", readOnlyHint: true },
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(MCPI_ACTIONS)
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 mcpi.handleMCPI(args);
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 MCPITransport before McpServer sees it.
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 = ["_mcpi", "_mcpi_handshake", ...(options.excludeTools ?? [])];
103
+ const exclude = ["_kyaos", "_kyaos_handshake", ...(options.excludeTools ?? [])];
104
104
  const originalConnect = server.connect.bind(server);
105
- server.connect = (transport) => originalConnect(createMCPITransport(transport, mcpi, exclude));
105
+ server.connect = (transport) => originalConnect(createKyaOsTransport(transport, kyaos, exclude));
106
106
  }
107
- return mcpi;
107
+ return kyaos;
108
108
  }
109
- //# sourceMappingURL=with-mcpi-server.js.map
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
- * MCP-I Middleware — Core Implementation
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 `withMCPI()` adapter from
7
- * `./with-mcpi-server.ts` which (by default) auto-registers the handshake
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 { withMCPI } from '@kya-os/mcp';
11
- * await withMCPI(server, { crypto: new NodeCryptoProvider() });
10
+ * import { withKyaOs } from '@kya-os/mcp';
11
+ * await withKyaOs(server, { crypto: new NodeCryptoProvider() });
12
12
  *
13
- * `createMCPIMiddleware()` in this file is the lower-level API used
14
- * internally by `withMCPI()` and for advanced use cases like the
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 MCPIIdentityConfig {
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 MCPI_ACTIONS: readonly ["handshake", "identity", "reputation"];
30
- export interface MCPIDelegationConfig {
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 MCP-I §11.6 (Confused Deputy Attacks).
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 MCPIConfig {
77
+ export interface KyaOsConfig {
78
78
  /** Agent identity (DID + key material) */
79
- identity: MCPIIdentityConfig;
79
+ identity: KyaOsIdentityConfig;
80
80
  /** Session configuration overrides */
81
81
  session?: Omit<SessionConfig, "nonceCache">;
82
82
  /** Delegation verification overrides */
83
- delegation?: MCPIDelegationConfig;
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 `_mcpi` handshake flow.
88
- * In production, MCP-I-aware runtimes should execute handshake before tool calls.
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 MCPIToolDefinition {
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 MCPIToolHandler<T extends Record<string, unknown> = Record<string, unknown>> {
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 MCPIServer {
117
+ export interface KyaOsServer {
118
118
  setRequestHandler(schema: unknown, handler: (...args: unknown[]) => unknown): void;
119
119
  }
120
- export interface MCPIMiddleware {
120
+ export interface KyaOsMiddleware {
121
121
  /** The identity config used by this middleware instance */
122
- identity: MCPIIdentityConfig;
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 `_mcpi`.
128
+ * Unified tool definition for `_kyaos`.
129
129
  * Include this in your ListToolsRequest handler's tool list.
130
130
  */
131
- mcpiTool: MCPIToolDefinition;
131
+ kyaOsTool: KyaOsToolDefinition;
132
132
  /**
133
- * @deprecated Use `mcpiTool` (`_mcpi` with `action: "handshake"`).
134
- * Tool definition for `_mcpi_handshake`.
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: MCPIToolDefinition;
137
+ handshakeTool: KyaOsToolDefinition;
138
138
  /**
139
- * Handle a unified `_mcpi` action. Use this in your CallToolRequest handler
140
- * when `request.params.name === '_mcpi'`.
139
+ * Handle a unified `_kyaos` action. Use this in your CallToolRequest handler
140
+ * when `request.params.name === '_kyaos'`.
141
141
  */
142
- handleMCPI(args: Record<string, unknown>): Promise<{
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 `handleMCPI` with `action: "handshake"`.
150
+ * @deprecated Use `handleKyaOs` with `action: "handshake"`.
151
151
  * Handle a handshake call. Use this in your CallToolRequest handler
152
- * when `request.params.name === '_mcpi_handshake'`.
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: MCPIToolHandler<T>): MCPIToolHandler;
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 `_mcpi_delegation` in the tool args.
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 `_mcpi_delegation` and calls the handler.
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: MCPIToolHandler): MCPIToolHandler;
177
+ }, handler: KyaOsToolHandler): KyaOsToolHandler;
178
178
  }
179
179
  /**
180
- * Create MCP-I middleware for a standard MCP SDK Server.
180
+ * Create KYA-OS middleware for a standard MCP SDK Server.
181
181
  *
182
- * For most use cases, prefer {@link withMCPI} from `./with-mcpi-server.ts`
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 `createMCPIMiddleware` directly when:
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 createMCPIMiddleware(config: MCPIConfig, cryptoProvider: CryptoProvider): MCPIMiddleware;
202
- //# sourceMappingURL=with-mcpi.d.ts.map
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":"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"}
@@ -1,17 +1,17 @@
1
1
  /**
2
- * MCP-I Middleware — Core Implementation
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 `withMCPI()` adapter from
7
- * `./with-mcpi-server.ts` which (by default) auto-registers the handshake
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 { withMCPI } from '@kya-os/mcp';
11
- * await withMCPI(server, { crypto: new NodeCryptoProvider() });
10
+ * import { withKyaOs } from '@kya-os/mcp';
11
+ * await withKyaOs(server, { crypto: new NodeCryptoProvider() });
12
12
  *
13
- * `createMCPIMiddleware()` in this file is the lower-level API used
14
- * internally by `withMCPI()` and for advanced use cases like the
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 { MCPI_ERROR_CODES } from "../errors.js";
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 MCPI_ACTIONS = ["handshake", "identity", "reputation"];
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 MCP-I middleware for a standard MCP SDK Server.
82
+ * Create KYA-OS middleware for a standard MCP SDK Server.
83
83
  *
84
- * For most use cases, prefer {@link withMCPI} from `./with-mcpi-server.ts`
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 `createMCPIMiddleware` directly when:
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 createMCPIMiddleware(config, cryptoProvider) {
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: "_mcpi_handshake",
122
- description: "MCP-I identity handshake — establishes a cryptographic session",
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 mcpiTool = {
141
- name: "_mcpi",
142
- description: "MCP-I protocol — identity verification, session handshake, and server metadata",
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: [...MCPI_ACTIONS],
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: MCPI_ERROR_CODES.handshake_failed,
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 handleMCPI(args) {
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: MCPI_ERROR_CODES.runtime_error,
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: MCPI_ERROR_CODES.invalid_request,
256
- message: `Unknown _mcpi action: "${action ?? "(missing)"}". Valid actions: ${MCPI_ACTIONS.join(", ")}`,
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, MCP-I-aware runtimes should execute handshake before tool calls.
268
- * This convenience mode allows non-MCP-I clients (like MCP Inspector) to
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("[mcpi] Proof generation failed", {
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(`[mcpi] Legacy delegation mode enabled: accepting parent-linked credential ${leafDelegation.id} without resolveDelegationChain`);
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(`[mcpi] Legacy delegation mode enabled: skipping status-list verification for ${delegation.id}`);
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["_mcpi_delegation"];
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(MCPI_ERROR_CODES.delegation_invalid, "Invalid VC-JWT format");
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(`[mcpi] Delegation verification failed for "${toolName}": ${verificationResult.reason}`);
596
- return buildDelegationErrorResponse(MCPI_ERROR_CODES.delegation_invalid, verificationResult.reason ?? "Unknown delegation validation error");
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(`[mcpi] Delegation missing required scope "${config.scopeId}" for "${toolName}"`);
601
- return buildDelegationErrorResponse(MCPI_ERROR_CODES.insufficient_scope, `Required scope "${config.scopeId}" not in delegation scopes`);
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 _mcpi_delegation from args before passing to handler
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 !== "_mcpi_delegation")
606
+ if (k !== "_kyaos_delegation")
607
607
  cleanArgs[k] = v;
608
608
  }
609
- logger.debug(`[mcpi] Delegation verified for "${toolName}", scope "${config.scopeId}"`);
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
- mcpiTool,
617
+ kyaOsTool,
618
618
  handshakeTool,
619
- handleMCPI,
619
+ handleKyaOs,
620
620
  handleHandshake,
621
621
  wrapWithProof,
622
622
  wrapWithDelegation,
623
623
  };
624
624
  }
625
- //# sourceMappingURL=with-mcpi.js.map
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 MCP-I requirements 5.1, 5.2, 5.3, 5.6.
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.
@@ -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 MCP-I requirements 5.1, 5.2, 5.3, 5.6.
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.
@@ -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 MCP-I proof claims
283
+ // Custom KYA-OS proof claims
284
284
  requestHash: meta.requestHash,
285
285
  responseHash: meta.responseHash,
286
286
  ts: meta.ts,