@kya-os/mcp-i-cloudflare 1.4.1-canary.4 → 1.4.1-canary.5
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/agent.d.ts.map +1 -1
- package/dist/agent.js +7 -0
- package/dist/agent.js.map +1 -1
- package/dist/app.d.ts +6 -3
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +8 -1
- package/dist/app.js.map +1 -1
- package/dist/runtime.d.ts +10 -6
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +79 -27
- package/dist/runtime.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +10 -2
- package/dist/server.js.map +1 -1
- package/dist/services/proof.service.d.ts +34 -1
- package/dist/services/proof.service.d.ts.map +1 -1
- package/dist/services/proof.service.js +190 -21
- package/dist/services/proof.service.js.map +1 -1
- package/package.json +2 -1
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAI9C,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,gBAAgB,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,uBAAuB,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,aAAa,EAAE,aAAa,GAAG,eAAe,GAAG,kBAAkB,GAAG,oBAAoB,GAAG,oBAAoB,CAAC;IACpK,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;IACrE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,kBAAkB,CAAC,EAAE,WAAW,CAAC;CAClC;AAKD;;;;;;;;;;GAUG;AACH,8BAAsB,mBAAoB,SAAQ,QAAQ;IAGxD,MAAM,EAAG,SAAS,CAAC;IACnB,SAAS,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAC1C,SAAS,CAAC,GAAG,EAAE,qBAAqB,CAAC;IACrC,OAAO,CAAC,OAAO,CAAC,CAA6B;gBAG3C,KAAK,EAAE,kBAAkB,EACzB,GAAG,EAAE,qBAAqB;IA0E5B;;;OAGG;IACH,MAAM,CAAC,eAAe,CACpB,UAAU,EAAE,OAAO,mBAAmB,EACtC,OAAO,EAAE,0BAA0B,GAClC,IAAI;IAIP;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAS3B;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAExD;;;OAGG;cACa,oBAAoB,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,EACrF,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,GACzC,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAI9C,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,gBAAgB,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,uBAAuB,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,aAAa,EAAE,aAAa,GAAG,eAAe,GAAG,kBAAkB,GAAG,oBAAoB,GAAG,oBAAoB,CAAC;IACpK,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;IACrE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,kBAAkB,CAAC,EAAE,WAAW,CAAC;CAClC;AAKD;;;;;;;;;;GAUG;AACH,8BAAsB,mBAAoB,SAAQ,QAAQ;IAGxD,MAAM,EAAG,SAAS,CAAC;IACnB,SAAS,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAC1C,SAAS,CAAC,GAAG,EAAE,qBAAqB,CAAC;IACrC,OAAO,CAAC,OAAO,CAAC,CAA6B;gBAG3C,KAAK,EAAE,kBAAkB,EACzB,GAAG,EAAE,qBAAqB;IA0E5B;;;OAGG;IACH,MAAM,CAAC,eAAe,CACpB,UAAU,EAAE,OAAO,mBAAmB,EACtC,OAAO,EAAE,0BAA0B,GAClC,IAAI;IAIP;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAS3B;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAExD;;;OAGG;cACa,oBAAoB,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,EACrF,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,GACzC,OAAO,CAAC,OAAO,CAAC;IAsCnB;;OAEG;IACH,aAAa,IAAI,MAAM;CA0BxB"}
|
package/dist/agent.js
CHANGED
|
@@ -114,12 +114,19 @@ export class MCPICloudflareAgent extends McpAgent {
|
|
|
114
114
|
const timestamp = Date.now();
|
|
115
115
|
const sessionId = this.getSessionId() ||
|
|
116
116
|
`ephemeral-${timestamp}-${Math.random().toString(36).substring(2, 10)}`;
|
|
117
|
+
// Get server URL from env var (MCP_SERVER_URL) for consent URL building
|
|
118
|
+
// In production, this should be set to the deployed worker URL
|
|
119
|
+
const mappedEnv = this.options?.envPrefix
|
|
120
|
+
? mapPrefixedEnv(this.env, this.options.envPrefix)
|
|
121
|
+
: this.env;
|
|
122
|
+
const serverUrl = mappedEnv.MCP_SERVER_URL;
|
|
117
123
|
const session = {
|
|
118
124
|
id: sessionId,
|
|
119
125
|
audience: "https://kya.vouched.id",
|
|
120
126
|
agentDid: (await this.mcpiRuntime.getIdentity()).did,
|
|
121
127
|
createdAt: timestamp,
|
|
122
128
|
expiresAt: timestamp + 30 * 60 * 1000, // 30 minutes
|
|
129
|
+
serverOrigin: serverUrl, // Use MCP_SERVER_URL for consent URL building
|
|
123
130
|
};
|
|
124
131
|
// Execute tool with automatic proof generation
|
|
125
132
|
const result = await this.mcpiRuntime.processToolCall(toolName, args, handler, session);
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/app.d.ts
CHANGED
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
* Factory function to create a Hono app with all MCP-I routes configured.
|
|
5
5
|
* Handles framework routes (health, admin, consent, OAuth) and MCP protocol routes.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
7
|
+
import type { ExecutionContext } from "@cloudflare/workers-types";
|
|
8
8
|
import type { CloudflareEnv } from "./types";
|
|
9
9
|
import type { CloudflareRuntimeConfig } from "./config";
|
|
10
|
-
import { MCPICloudflareAgent } from "./agent";
|
|
10
|
+
import { MCPICloudflareAgent, type PrefixedCloudflareEnv } from "./agent";
|
|
11
11
|
export interface CreateMCPIAppOptions {
|
|
12
12
|
/**
|
|
13
13
|
* Environment prefix for KV bindings (e.g., "MYAPP" for MYAPP_NONCE_CACHE)
|
|
@@ -48,5 +48,8 @@ export interface CreateMCPIAppOptions {
|
|
|
48
48
|
* });
|
|
49
49
|
* ```
|
|
50
50
|
*/
|
|
51
|
-
export declare function createMCPIApp(options: CreateMCPIAppOptions):
|
|
51
|
+
export declare function createMCPIApp(options: CreateMCPIAppOptions): {
|
|
52
|
+
fetch: (request: Request, Env?: unknown, executionCtx?: import("hono").ExecutionContext) => Response | Promise<Response>;
|
|
53
|
+
scheduled(event: ScheduledEvent, env: PrefixedCloudflareEnv, ctx: ExecutionContext): Promise<void>;
|
|
54
|
+
};
|
|
52
55
|
//# sourceMappingURL=app.d.ts.map
|
package/dist/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAIxD,OAAO,EAAE,mBAAmB,EAAE,KAAK,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAG1E,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,gBAAgB,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,uBAAuB,CAAC;IAElE;;OAEG;IACH,UAAU,EAAE,OAAO,mBAAmB,CAAC;IAEvC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB;;qBA2HhC,cAAc,OAAO,qBAAqB,OAAO,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;EAK3G"}
|
package/dist/app.js
CHANGED
|
@@ -115,6 +115,13 @@ export function createMCPIApp(options) {
|
|
|
115
115
|
// Runtime behavior is correct
|
|
116
116
|
app.mount("/sse", AgentClass.serveSSE("/sse").fetch, { replaceRequest: false });
|
|
117
117
|
app.mount("/mcp", AgentClass.serve("/mcp").fetch, { replaceRequest: false });
|
|
118
|
-
|
|
118
|
+
// Return Cloudflare Worker export with both fetch and scheduled handlers
|
|
119
|
+
return {
|
|
120
|
+
fetch: app.fetch.bind(app),
|
|
121
|
+
async scheduled(event, env, ctx) {
|
|
122
|
+
const server = await getMcpiServer(env);
|
|
123
|
+
await server.handleScheduled(event);
|
|
124
|
+
},
|
|
125
|
+
};
|
|
119
126
|
}
|
|
120
127
|
//# sourceMappingURL=app.js.map
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
* producing full JWS compact format (header.payload.signature) compatible with
|
|
9
9
|
* AgentShield and the MCP-I proof specification.
|
|
10
10
|
*/
|
|
11
|
-
import { MCPIRuntimeBase, type ProviderRuntimeConfig, ToolProtectionService, type ToolProtectionServiceConfig } from
|
|
12
|
-
import { CloudflareProofGenerator } from
|
|
13
|
-
import type { DetachedProof } from
|
|
14
|
-
import { type KVNamespace } from
|
|
11
|
+
import { MCPIRuntimeBase, type ProviderRuntimeConfig, ToolProtectionService, type ToolProtectionServiceConfig } from "@kya-os/mcp-i-core";
|
|
12
|
+
import { CloudflareProofGenerator } from "./proof-generator";
|
|
13
|
+
import type { DetachedProof } from "@kya-os/contracts/proof";
|
|
14
|
+
import { type KVNamespace } from "./cache/kv-tool-protection-cache";
|
|
15
15
|
/**
|
|
16
16
|
* CloudflareRuntime extends MCPIRuntimeBase with CloudflareProofGenerator
|
|
17
17
|
*/
|
|
@@ -30,6 +30,7 @@ export declare class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
30
30
|
private lastDetachedProof?;
|
|
31
31
|
private lastToolCallContext?;
|
|
32
32
|
private serverUrl?;
|
|
33
|
+
private proofService?;
|
|
33
34
|
constructor(config: ProviderRuntimeConfig, serverUrl?: string);
|
|
34
35
|
/**
|
|
35
36
|
* Initialize runtime and proof generator
|
|
@@ -46,10 +47,13 @@ export declare class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
46
47
|
*/
|
|
47
48
|
createProof(data: any, session?: any): Promise<DetachedProof>;
|
|
48
49
|
/**
|
|
49
|
-
* Override processToolCall to pass tool metadata through session
|
|
50
|
+
* Override processToolCall to pass tool metadata through session,
|
|
51
|
+
* automatically submit proofs to AgentShield, and attach proofs to result for MCP Inspector.
|
|
50
52
|
*
|
|
51
53
|
* This ensures that CloudflareProofGenerator has access to the tool name
|
|
52
|
-
* and parameters for generating accurate
|
|
54
|
+
* and parameters for generating accurate proof hashes, proofs are automatically
|
|
55
|
+
* submitted to AgentShield for dashboard integration, and proofs are included
|
|
56
|
+
* in the response for MCP Inspector.
|
|
53
57
|
*
|
|
54
58
|
* Note: Creates a new session object to avoid mutating the input session.
|
|
55
59
|
*/
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,eAAe,EACf,KAAK,qBAAqB,EAC1B,qBAAqB,EACrB,KAAK,2BAA2B,EACjC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,eAAe,EACf,KAAK,qBAAqB,EAC1B,qBAAqB,EACrB,KAAK,2BAA2B,EACjC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,kCAAkC,CAAC;AAI1C;;GAEG;AACH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,iBAAkB,SAAQ,eAAe;IACpD,OAAO,CAAC,cAAc,CAAC,CAA2B;IAClD,OAAO,CAAC,iBAAiB,CAAC,CAAgB;IAC1C,OAAO,CAAC,mBAAmB,CAAC,CAAkB;IAC9C,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAC,CAAe;gBAExB,MAAM,EAAE,qBAAqB,EAAE,SAAS,CAAC,EAAE,MAAM;IAU7D;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAejC;;;;;;;;OAQG;IACG,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC;IAgGnE;;;;;;;;;;OAUG;IACG,eAAe,CACnB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,EACpC,OAAO,CAAC,EAAE,GAAG,GACZ,OAAO,CAAC,GAAG,CAAC;IAmEf;;OAEG;IACH,iBAAiB,IAAI,wBAAwB,GAAG,SAAS;IAIzD;;;;OAIG;IACH,YAAY,IAAI,aAAa,GAAG,SAAS;IAIzC;;;;;OAKG;IACH,sBAAsB,IAAI,eAAe,GAAG,SAAS;IAIrD;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,eAAe,CACvB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,CAAC,EAAE,GAAG,EACb,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM;IAgDT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,MAAM,CAAC,2BAA2B,CAChC,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,2BAA2B,GAClC,qBAAqB;CAIzB"}
|
package/dist/runtime.js
CHANGED
|
@@ -8,17 +8,21 @@
|
|
|
8
8
|
* producing full JWS compact format (header.payload.signature) compatible with
|
|
9
9
|
* AgentShield and the MCP-I proof specification.
|
|
10
10
|
*/
|
|
11
|
-
import { MCPIRuntimeBase, ToolProtectionService } from
|
|
12
|
-
import { CloudflareProofGenerator } from
|
|
13
|
-
import { KVToolProtectionCache } from
|
|
11
|
+
import { MCPIRuntimeBase, ToolProtectionService, } from "@kya-os/mcp-i-core";
|
|
12
|
+
import { CloudflareProofGenerator } from "./proof-generator";
|
|
13
|
+
import { KVToolProtectionCache, } from "./cache/kv-tool-protection-cache";
|
|
14
|
+
import { ProofService } from "./services/proof.service";
|
|
14
15
|
export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
15
16
|
proofGenerator;
|
|
16
17
|
lastDetachedProof;
|
|
17
18
|
lastToolCallContext;
|
|
18
19
|
serverUrl; // Store server URL for consent URL building
|
|
20
|
+
proofService; // Proof submission service
|
|
19
21
|
constructor(config, serverUrl) {
|
|
20
22
|
super(config);
|
|
21
23
|
this.serverUrl = serverUrl;
|
|
24
|
+
// Initialize ProofService for automatic proof submission
|
|
25
|
+
this.proofService = new ProofService(config, this);
|
|
22
26
|
}
|
|
23
27
|
/**
|
|
24
28
|
* Initialize runtime and proof generator
|
|
@@ -29,8 +33,8 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
29
33
|
const identity = await this.getIdentity();
|
|
30
34
|
this.proofGenerator = new CloudflareProofGenerator(identity);
|
|
31
35
|
if (this.config.audit?.enabled) {
|
|
32
|
-
console.log(
|
|
33
|
-
console.log(
|
|
36
|
+
console.log("[MCP-I] CloudflareRuntime initialized with CloudflareProofGenerator");
|
|
37
|
+
console.log("[MCP-I] DID:", identity.did);
|
|
34
38
|
}
|
|
35
39
|
}
|
|
36
40
|
/**
|
|
@@ -44,10 +48,10 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
44
48
|
*/
|
|
45
49
|
async createProof(data, session) {
|
|
46
50
|
if (!this.proofGenerator) {
|
|
47
|
-
throw new Error(
|
|
51
|
+
throw new Error("CloudflareProofGenerator not initialized. Call initialize() first.");
|
|
48
52
|
}
|
|
49
53
|
if (!session) {
|
|
50
|
-
throw new Error(
|
|
54
|
+
throw new Error("Session required for proof generation");
|
|
51
55
|
}
|
|
52
56
|
// Ensure we have a nonce (generate one if not provided)
|
|
53
57
|
let nonce = session.nonce;
|
|
@@ -59,7 +63,7 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
59
63
|
// Build ToolRequest from session data
|
|
60
64
|
// The processToolCall method should pass toolName in the session
|
|
61
65
|
const request = {
|
|
62
|
-
method: session.toolName ||
|
|
66
|
+
method: session.toolName || "unknown",
|
|
63
67
|
params: session.toolParams || session.args || {},
|
|
64
68
|
};
|
|
65
69
|
// Build ToolResponse
|
|
@@ -69,7 +73,7 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
69
73
|
// Build SessionContext for CloudflareProofGenerator
|
|
70
74
|
const sessionContext = {
|
|
71
75
|
nonce,
|
|
72
|
-
audience: session.audience ||
|
|
76
|
+
audience: session.audience || "mcp-client",
|
|
73
77
|
sessionId: session.id,
|
|
74
78
|
};
|
|
75
79
|
// ✅ NEW: Determine scopeId from session or runtime config
|
|
@@ -94,42 +98,90 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
94
98
|
this.lastDetachedProof = detachedProof;
|
|
95
99
|
// ✅ Store tool call context for AgentShield dashboard
|
|
96
100
|
this.lastToolCallContext = {
|
|
97
|
-
tool: session.toolName ||
|
|
101
|
+
tool: session.toolName || "unknown",
|
|
98
102
|
args: session.toolParams || session.args || {},
|
|
99
103
|
result: data,
|
|
100
|
-
scopeId: scopeId ||
|
|
104
|
+
scopeId: scopeId || "unknown",
|
|
101
105
|
userId: session.userId, // Optional user identifier
|
|
102
106
|
};
|
|
103
107
|
if (this.config.audit?.enabled) {
|
|
104
|
-
console.log(
|
|
108
|
+
console.log("[MCP-I] Proof generated:", {
|
|
105
109
|
did: detachedProof.meta.did,
|
|
106
110
|
sessionId: detachedProof.meta.sessionId,
|
|
107
|
-
requestHash: detachedProof.meta.requestHash.substring(0, 20) +
|
|
108
|
-
responseHash: detachedProof.meta.responseHash.substring(0, 20) +
|
|
111
|
+
requestHash: detachedProof.meta.requestHash.substring(0, 20) + "...",
|
|
112
|
+
responseHash: detachedProof.meta.responseHash.substring(0, 20) + "...",
|
|
109
113
|
scopeId: detachedProof.meta.scopeId, // ← ADDED: Log scopeId
|
|
110
|
-
jwsFormat: detachedProof.jws.split(
|
|
114
|
+
jwsFormat: detachedProof.jws.split(".").length === 3
|
|
115
|
+
? "valid (3 parts)"
|
|
116
|
+
: "invalid",
|
|
111
117
|
});
|
|
112
118
|
}
|
|
113
119
|
return detachedProof;
|
|
114
120
|
}
|
|
115
121
|
/**
|
|
116
|
-
* Override processToolCall to pass tool metadata through session
|
|
122
|
+
* Override processToolCall to pass tool metadata through session,
|
|
123
|
+
* automatically submit proofs to AgentShield, and attach proofs to result for MCP Inspector.
|
|
117
124
|
*
|
|
118
125
|
* This ensures that CloudflareProofGenerator has access to the tool name
|
|
119
|
-
* and parameters for generating accurate
|
|
126
|
+
* and parameters for generating accurate proof hashes, proofs are automatically
|
|
127
|
+
* submitted to AgentShield for dashboard integration, and proofs are included
|
|
128
|
+
* in the response for MCP Inspector.
|
|
120
129
|
*
|
|
121
130
|
* Note: Creates a new session object to avoid mutating the input session.
|
|
122
131
|
*/
|
|
123
132
|
async processToolCall(toolName, args, handler, session) {
|
|
124
133
|
// Enhance session with tool metadata for proof generation
|
|
125
134
|
// Create a new session object to avoid mutating the input (immutability contract)
|
|
126
|
-
const enhancedSession = session
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
135
|
+
const enhancedSession = session
|
|
136
|
+
? {
|
|
137
|
+
...session,
|
|
138
|
+
toolName,
|
|
139
|
+
toolParams: args,
|
|
140
|
+
}
|
|
141
|
+
: undefined;
|
|
142
|
+
// Call parent implementation with enhanced session (generates proof)
|
|
143
|
+
const result = await super.processToolCall(toolName, args, handler, enhancedSession);
|
|
144
|
+
// Get the proof that was generated (stored by createProof)
|
|
145
|
+
const proof = this.lastDetachedProof;
|
|
146
|
+
// Automatically submit proof to AgentShield if available
|
|
147
|
+
if (proof && this.proofService && enhancedSession) {
|
|
148
|
+
try {
|
|
149
|
+
// Determine MCP server URL from session or stored serverUrl
|
|
150
|
+
const mcpServerUrl = enhancedSession.serverOrigin || this.serverUrl;
|
|
151
|
+
// Submit proof asynchronously (don't block tool execution)
|
|
152
|
+
this.proofService
|
|
153
|
+
.submitProof(proof, {
|
|
154
|
+
session: { id: enhancedSession.id || "unknown" },
|
|
155
|
+
toolName,
|
|
156
|
+
args,
|
|
157
|
+
result,
|
|
158
|
+
mcpServerUrl,
|
|
159
|
+
})
|
|
160
|
+
.catch((error) => {
|
|
161
|
+
// Log error but don't fail the tool execution
|
|
162
|
+
console.error("[CloudflareRuntime] Failed to submit proof:", error);
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
catch (error) {
|
|
166
|
+
// Log error but don't fail the tool execution
|
|
167
|
+
console.error("[CloudflareRuntime] Error submitting proof:", error);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
// Attach proof to result for MCP Inspector (if result is an object)
|
|
171
|
+
if (proof &&
|
|
172
|
+
result &&
|
|
173
|
+
typeof result === "object" &&
|
|
174
|
+
!Array.isArray(result)) {
|
|
175
|
+
// Attach proof to _meta field for MCP Inspector compatibility
|
|
176
|
+
if (!result._meta) {
|
|
177
|
+
result._meta = {};
|
|
178
|
+
}
|
|
179
|
+
result._meta.proof = {
|
|
180
|
+
jws: proof.jws,
|
|
181
|
+
meta: proof.meta,
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
return result;
|
|
133
185
|
}
|
|
134
186
|
/**
|
|
135
187
|
* Get the CloudflareProofGenerator instance (for advanced usage)
|
|
@@ -182,11 +234,11 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
182
234
|
});
|
|
183
235
|
// Add project_id if provided (required for consent endpoint)
|
|
184
236
|
if (projectId) {
|
|
185
|
-
params.set(
|
|
237
|
+
params.set("project_id", projectId);
|
|
186
238
|
}
|
|
187
239
|
// Add resume token if provided
|
|
188
240
|
if (resumeToken) {
|
|
189
|
-
params.set(
|
|
241
|
+
params.set("resume_token", resumeToken);
|
|
190
242
|
}
|
|
191
243
|
// Determine server URL with priority:
|
|
192
244
|
// 1. Auto-detected from request origin (session.serverOrigin)
|
|
@@ -204,7 +256,7 @@ export class CloudflareRuntime extends MCPIRuntimeBase {
|
|
|
204
256
|
// Use server-hosted consent page if server URL is available
|
|
205
257
|
if (serverUrl) {
|
|
206
258
|
// Ensure server URL doesn't have trailing slash
|
|
207
|
-
const baseUrl = serverUrl.replace(/\/$/,
|
|
259
|
+
const baseUrl = serverUrl.replace(/\/$/, "");
|
|
208
260
|
return `${baseUrl}/consent?${params.toString()}`;
|
|
209
261
|
}
|
|
210
262
|
// Fallback to AgentShield dashboard (for backward compatibility or when server URL not available)
|
package/dist/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,eAAe,EAEf,qBAAqB,
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,MAAM,WAAW,2BAA2B;IAC1C,GAAG,EAAE,aAAa,CAAC;IACnB,MAAM,EAAE,uBAAuB,CAAC;IAChC,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,OAAO,CAAC,CAAoB;IACpC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,GAAG,CAAgB;gBAEf,OAAO,EAAE,2BAA2B;IAgBhD;;;OAGG;IACG,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAgChF;;OAEG;YACW,mBAAmB;IA6BjC;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,MAAM,WAAW,2BAA2B;IAC1C,GAAG,EAAE,aAAa,CAAC;IACnB,MAAM,EAAE,uBAAuB,CAAC;IAChC,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,OAAO,CAAC,CAAoB;IACpC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,GAAG,CAAgB;gBAEf,OAAO,EAAE,2BAA2B;IAgBhD;;;OAGG;IACG,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAgChF;;OAEG;YACW,mBAAmB;IA6BjC;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3D;;OAEG;IACH,oBAAoB,IAAI,iBAAiB;IAIzC;;OAEG;IACH,eAAe,IAAI,YAAY;IAI/B;;OAEG;IACH,eAAe,IAAI,YAAY,GAAG,SAAS;IAI3C;;OAEG;IACH,iBAAiB,IAAI,cAAc;CAGpC"}
|
package/dist/server.js
CHANGED
|
@@ -93,9 +93,17 @@ export class MCPICloudflareServer {
|
|
|
93
93
|
* Handle scheduled events (cron jobs)
|
|
94
94
|
*/
|
|
95
95
|
async handleScheduled(event) {
|
|
96
|
-
// Placeholder for scheduled tasks
|
|
97
|
-
// Can be extended for proof batch flushing, cache cleanup, etc.
|
|
98
96
|
console.log('[MCPICloudflareServer] Scheduled event:', event.cron);
|
|
97
|
+
// Flush proof batch queue if available
|
|
98
|
+
if (this.proofService) {
|
|
99
|
+
try {
|
|
100
|
+
await this.proofService.flush();
|
|
101
|
+
console.log('[MCPICloudflareServer] Proof batch queue flushed');
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
console.error('[MCPICloudflareServer] Failed to flush proof queue:', error);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
99
107
|
}
|
|
100
108
|
/**
|
|
101
109
|
* Get delegation service (for advanced use cases)
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Handles proof submission to AgentShield API with optional context
|
|
5
5
|
* for dashboard integration.
|
|
6
|
+
*
|
|
7
|
+
* Supports both direct submission and batch queue submission.
|
|
6
8
|
*/
|
|
7
9
|
import type { DetachedProof } from '@kya-os/contracts/proof';
|
|
8
10
|
import type { CloudflareRuntimeConfig } from '../config';
|
|
@@ -19,14 +21,45 @@ export interface ProofSubmissionContext {
|
|
|
19
21
|
export declare class ProofService {
|
|
20
22
|
private config;
|
|
21
23
|
private runtime?;
|
|
24
|
+
private batchQueue?;
|
|
22
25
|
constructor(config: CloudflareRuntimeConfig, runtime?: CloudflareRuntime);
|
|
23
26
|
/**
|
|
24
27
|
* Submit proof to AgentShield API
|
|
25
|
-
* Uses
|
|
28
|
+
* Uses batch queue if available, otherwise falls back to direct submission.
|
|
26
29
|
*
|
|
27
30
|
* Also submits optional context for AgentShield dashboard integration.
|
|
28
31
|
* Context provides plaintext tool/args data while proof provides cryptographic verification.
|
|
29
32
|
*/
|
|
30
33
|
submitProof(proof: DetachedProof, context: ProofSubmissionContext): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Direct proof submission (fallback when batch queue not available)
|
|
36
|
+
*/
|
|
37
|
+
private submitProofDirect;
|
|
38
|
+
/**
|
|
39
|
+
* Flush pending proofs in batch queue
|
|
40
|
+
*
|
|
41
|
+
* Called by scheduled cron job (configured in wrangler.toml).
|
|
42
|
+
*
|
|
43
|
+
* Cron Configuration:
|
|
44
|
+
* Add this to your wrangler.toml to enable automatic proof flushing:
|
|
45
|
+
*
|
|
46
|
+
* [triggers.crons]
|
|
47
|
+
* cron = "every 5 minutes" # Flush proof batches every 5 minutes
|
|
48
|
+
*
|
|
49
|
+
* The cron job will call the scheduled handler exported from your Worker,
|
|
50
|
+
* which routes to MCPICloudflareServer.handleScheduled(), which then calls
|
|
51
|
+
* this flush() method.
|
|
52
|
+
*
|
|
53
|
+
* Why cron instead of timers?
|
|
54
|
+
* - Cloudflare Workers are stateless and don't persist timers across requests
|
|
55
|
+
* - Cron jobs provide reliable cross-request batching
|
|
56
|
+
* - Proofs are still batched within requests (auto-flush when batch size reached)
|
|
57
|
+
*
|
|
58
|
+
* Flush frequency:
|
|
59
|
+
* - Default: Every minute (adjustable in wrangler.toml)
|
|
60
|
+
* - Proofs are also flushed immediately when batch size is reached
|
|
61
|
+
* - Failed proofs are retried with exponential backoff
|
|
62
|
+
*/
|
|
63
|
+
flush(): Promise<void>;
|
|
31
64
|
}
|
|
32
65
|
//# sourceMappingURL=proof.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.service.d.ts","sourceRoot":"","sources":["../../src/services/proof.service.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"proof.service.d.ts","sourceRoot":"","sources":["../../src/services/proof.service.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,YAAY,CAAC;AAIrE,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,OAAO,CAAC,CAAoB;IACpC,OAAO,CAAC,UAAU,CAAC,CAAkB;gBAEzB,MAAM,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE,iBAAiB;IAwExE;;;;;;OAMG;IACG,WAAW,CACf,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,IAAI,CAAC;IAgChB;;OAEG;YACW,iBAAiB;IAmI/B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAM7B"}
|
|
@@ -3,17 +3,82 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Handles proof submission to AgentShield API with optional context
|
|
5
5
|
* for dashboard integration.
|
|
6
|
+
*
|
|
7
|
+
* Supports both direct submission and batch queue submission.
|
|
6
8
|
*/
|
|
9
|
+
import { ProofBatchQueue, AgentShieldProofDestination } from '@kya-os/mcp-i';
|
|
7
10
|
export class ProofService {
|
|
8
11
|
config;
|
|
9
12
|
runtime;
|
|
13
|
+
batchQueue;
|
|
10
14
|
constructor(config, runtime) {
|
|
11
15
|
this.config = config;
|
|
12
16
|
this.runtime = runtime;
|
|
17
|
+
// Log service creation for debugging
|
|
18
|
+
const proofingConfig = this.config.proofing;
|
|
19
|
+
const hasApiKey = proofingConfig?.batchQueue?.destinations?.some((dest) => dest.type === 'agentshield' && dest.apiKey);
|
|
20
|
+
console.log('[ProofService] Initialized:', {
|
|
21
|
+
proofingEnabled: proofingConfig?.enabled || false,
|
|
22
|
+
hasApiKey: !!hasApiKey,
|
|
23
|
+
hasDestinations: !!(proofingConfig?.batchQueue?.destinations?.length),
|
|
24
|
+
destinationCount: proofingConfig?.batchQueue?.destinations?.length || 0,
|
|
25
|
+
});
|
|
26
|
+
// Initialize batch queue if configured
|
|
27
|
+
// Note: In Cloudflare Workers, timers don't persist across requests,
|
|
28
|
+
// so we rely on manual flush() calls via cron jobs instead of automatic timers
|
|
29
|
+
if (proofingConfig?.enabled && proofingConfig.batchQueue?.destinations?.length) {
|
|
30
|
+
try {
|
|
31
|
+
const destinations = [];
|
|
32
|
+
for (const destConfig of proofingConfig.batchQueue.destinations) {
|
|
33
|
+
if (destConfig.type === 'agentshield') {
|
|
34
|
+
// Only create destination if API key is present and not empty
|
|
35
|
+
if (destConfig.apiKey?.length && destConfig.apiUrl?.length) {
|
|
36
|
+
destinations.push(new AgentShieldProofDestination(destConfig.apiUrl, destConfig.apiKey));
|
|
37
|
+
console.log('[ProofService] Added AgentShield destination:', {
|
|
38
|
+
apiUrl: destConfig.apiUrl,
|
|
39
|
+
hasApiKey: !!destConfig.apiKey,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
console.warn('[ProofService] Skipping AgentShield destination - missing API key or URL:', {
|
|
44
|
+
hasApiKey: !!destConfig.apiKey,
|
|
45
|
+
hasApiUrl: !!destConfig.apiUrl,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
if (destinations.length > 0) {
|
|
51
|
+
// Create batch queue without timers (Cloudflare Workers compatible)
|
|
52
|
+
// Timers won't work in Workers, so we rely on manual flush() via cron
|
|
53
|
+
this.batchQueue = new ProofBatchQueue({
|
|
54
|
+
destinations,
|
|
55
|
+
maxBatchSize: proofingConfig.batchQueue.maxBatchSize || 10,
|
|
56
|
+
flushIntervalMs: proofingConfig.batchQueue.flushIntervalMs || 5000,
|
|
57
|
+
maxRetries: proofingConfig.batchQueue.maxRetries || 3,
|
|
58
|
+
debug: proofingConfig.batchQueue.debug || false,
|
|
59
|
+
});
|
|
60
|
+
console.log('[ProofService] Batch queue initialized (Cloudflare Workers mode - manual flush via cron):', {
|
|
61
|
+
maxBatchSize: proofingConfig.batchQueue.maxBatchSize || 10,
|
|
62
|
+
flushIntervalMs: proofingConfig.batchQueue.flushIntervalMs || 5000,
|
|
63
|
+
destinations: destinations.length,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
console.warn('[ProofService] No valid destinations configured - batch queue not initialized');
|
|
68
|
+
// Warn in production if no API key configured
|
|
69
|
+
if (this.config.environment === 'production') {
|
|
70
|
+
console.warn('[ProofService] No AGENTSHIELD_API_KEY configured - proofs will not be submitted');
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
console.error('[ProofService] Failed to initialize batch queue:', error);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
13
78
|
}
|
|
14
79
|
/**
|
|
15
80
|
* Submit proof to AgentShield API
|
|
16
|
-
* Uses
|
|
81
|
+
* Uses batch queue if available, otherwise falls back to direct submission.
|
|
17
82
|
*
|
|
18
83
|
* Also submits optional context for AgentShield dashboard integration.
|
|
19
84
|
* Context provides plaintext tool/args data while proof provides cryptographic verification.
|
|
@@ -23,6 +88,34 @@ export class ProofService {
|
|
|
23
88
|
console.warn('[ProofService] Proof missing jws or meta, skipping submission');
|
|
24
89
|
return;
|
|
25
90
|
}
|
|
91
|
+
// Use batch queue if available (recommended for batching)
|
|
92
|
+
// Note: In Cloudflare Workers, the queue batches within request context
|
|
93
|
+
// but relies on cron jobs for cross-request flushing
|
|
94
|
+
if (this.batchQueue) {
|
|
95
|
+
try {
|
|
96
|
+
console.log('[ProofService] Enqueuing proof to batch queue:', {
|
|
97
|
+
did: proof.meta.did,
|
|
98
|
+
sessionId: proof.meta.sessionId,
|
|
99
|
+
toolName: context.toolName,
|
|
100
|
+
scopeId: proof.meta.scopeId,
|
|
101
|
+
mcpServerUrl: context.mcpServerUrl || 'not-set',
|
|
102
|
+
});
|
|
103
|
+
// Enqueue proof - batch queue will auto-flush when batch size is reached
|
|
104
|
+
this.batchQueue.enqueue(proof);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
console.error('[ProofService] Failed to enqueue proof, falling back to direct submission:', error);
|
|
109
|
+
// Fall through to direct submission
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
// Fallback to direct submission if batch queue not available
|
|
113
|
+
await this.submitProofDirect(proof, context);
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Direct proof submission (fallback when batch queue not available)
|
|
117
|
+
*/
|
|
118
|
+
async submitProofDirect(proof, context) {
|
|
26
119
|
// Get AgentShield config from proofing config
|
|
27
120
|
const proofingConfig = this.config.proofing;
|
|
28
121
|
if (!proofingConfig?.enabled || !proofingConfig.batchQueue?.destinations) {
|
|
@@ -32,11 +125,22 @@ export class ProofService {
|
|
|
32
125
|
// Find AgentShield destination
|
|
33
126
|
const agentShieldDest = proofingConfig.batchQueue.destinations.find((dest) => dest.type === 'agentshield' && dest.apiKey);
|
|
34
127
|
if (!agentShieldDest || !agentShieldDest.apiKey || !agentShieldDest.apiUrl) {
|
|
35
|
-
console.log('[ProofService] No AgentShield destination configured'
|
|
128
|
+
console.log('[ProofService] No AgentShield destination configured:', {
|
|
129
|
+
hasDestinations: !!(proofingConfig.batchQueue.destinations?.length),
|
|
130
|
+
foundDest: !!agentShieldDest,
|
|
131
|
+
hasApiKey: !!agentShieldDest?.apiKey,
|
|
132
|
+
hasApiUrl: !!agentShieldDest?.apiUrl,
|
|
133
|
+
});
|
|
36
134
|
return;
|
|
37
135
|
}
|
|
38
136
|
const apiUrl = agentShieldDest.apiUrl;
|
|
39
137
|
const apiKey = agentShieldDest.apiKey;
|
|
138
|
+
// Log API key presence (not value) for debugging
|
|
139
|
+
console.log('[ProofService] Direct submission config:', {
|
|
140
|
+
apiUrl,
|
|
141
|
+
hasApiKey: !!apiKey,
|
|
142
|
+
apiKeyLength: apiKey?.length || 0,
|
|
143
|
+
});
|
|
40
144
|
// Get tool call context from runtime (if available)
|
|
41
145
|
const toolCallContext = this.runtime?.getLastToolCallContext();
|
|
42
146
|
// Proof already has correct format from CloudflareRuntime
|
|
@@ -67,28 +171,93 @@ export class ProofService {
|
|
|
67
171
|
jwsFormat: proof.jws.split('.').length === 3 ? 'valid (3 parts)' : 'invalid',
|
|
68
172
|
contextTool: requestBody.context.toolCalls[0]?.tool,
|
|
69
173
|
contextScopeId: requestBody.context.toolCalls[0]?.scopeId,
|
|
70
|
-
mcpServerUrl: requestBody.context.mcpServerUrl || 'not-set'
|
|
71
|
-
|
|
72
|
-
const response = await fetch(`${apiUrl}/api/v1/bouncer/proofs`, {
|
|
73
|
-
method: 'POST',
|
|
74
|
-
headers: {
|
|
75
|
-
'Content-Type': 'application/json',
|
|
76
|
-
'Authorization': `Bearer ${apiKey}`
|
|
77
|
-
},
|
|
78
|
-
body: JSON.stringify(requestBody)
|
|
174
|
+
mcpServerUrl: requestBody.context.mcpServerUrl || 'not-set',
|
|
175
|
+
requestBodySize: JSON.stringify(requestBody).length,
|
|
79
176
|
});
|
|
80
|
-
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
|
|
177
|
+
try {
|
|
178
|
+
const response = await fetch(`${apiUrl}/api/v1/bouncer/proofs`, {
|
|
179
|
+
method: 'POST',
|
|
180
|
+
headers: {
|
|
181
|
+
'Content-Type': 'application/json',
|
|
182
|
+
'Authorization': `Bearer ${apiKey}`
|
|
183
|
+
},
|
|
184
|
+
body: JSON.stringify(requestBody)
|
|
185
|
+
});
|
|
186
|
+
const responseText = await response.text();
|
|
187
|
+
if (!response.ok) {
|
|
188
|
+
console.error('[ProofService] Submission failed:', {
|
|
189
|
+
status: response.status,
|
|
190
|
+
statusText: response.statusText,
|
|
191
|
+
response: responseText.substring(0, 500), // Limit response size in logs
|
|
192
|
+
});
|
|
193
|
+
throw new Error(`AgentShield error: ${response.status}`);
|
|
194
|
+
}
|
|
195
|
+
let responseData;
|
|
196
|
+
try {
|
|
197
|
+
responseData = JSON.parse(responseText);
|
|
198
|
+
}
|
|
199
|
+
catch (parseError) {
|
|
200
|
+
console.error('[ProofService] Failed to parse response:', {
|
|
201
|
+
responseText: responseText.substring(0, 500),
|
|
202
|
+
error: parseError,
|
|
203
|
+
});
|
|
204
|
+
throw new Error('Invalid JSON response from AgentShield');
|
|
205
|
+
}
|
|
206
|
+
console.log('[ProofService] Response:', {
|
|
207
|
+
success: responseData.success,
|
|
208
|
+
received: responseData.received,
|
|
209
|
+
processed: responseData.processed,
|
|
210
|
+
accepted: responseData.accepted,
|
|
211
|
+
rejected: responseData.rejected,
|
|
212
|
+
errors: responseData.errors?.length || 0,
|
|
213
|
+
});
|
|
214
|
+
if (responseData.accepted) {
|
|
215
|
+
console.log('[ProofService] ✅ Proofs accepted:', responseData.accepted);
|
|
216
|
+
}
|
|
217
|
+
if (responseData.rejected) {
|
|
218
|
+
console.log('[ProofService] ❌ Proofs rejected:', responseData.rejected);
|
|
219
|
+
}
|
|
220
|
+
if (responseData.errors && responseData.errors.length > 0) {
|
|
221
|
+
console.error('[ProofService] Proof errors:', responseData.errors);
|
|
222
|
+
}
|
|
84
223
|
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
224
|
+
catch (error) {
|
|
225
|
+
console.error('[ProofService] Submission error:', {
|
|
226
|
+
error: error instanceof Error ? error.message : String(error),
|
|
227
|
+
stack: error instanceof Error ? error.stack : undefined,
|
|
228
|
+
});
|
|
229
|
+
throw error;
|
|
89
230
|
}
|
|
90
|
-
|
|
91
|
-
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Flush pending proofs in batch queue
|
|
234
|
+
*
|
|
235
|
+
* Called by scheduled cron job (configured in wrangler.toml).
|
|
236
|
+
*
|
|
237
|
+
* Cron Configuration:
|
|
238
|
+
* Add this to your wrangler.toml to enable automatic proof flushing:
|
|
239
|
+
*
|
|
240
|
+
* [triggers.crons]
|
|
241
|
+
* cron = "every 5 minutes" # Flush proof batches every 5 minutes
|
|
242
|
+
*
|
|
243
|
+
* The cron job will call the scheduled handler exported from your Worker,
|
|
244
|
+
* which routes to MCPICloudflareServer.handleScheduled(), which then calls
|
|
245
|
+
* this flush() method.
|
|
246
|
+
*
|
|
247
|
+
* Why cron instead of timers?
|
|
248
|
+
* - Cloudflare Workers are stateless and don't persist timers across requests
|
|
249
|
+
* - Cron jobs provide reliable cross-request batching
|
|
250
|
+
* - Proofs are still batched within requests (auto-flush when batch size reached)
|
|
251
|
+
*
|
|
252
|
+
* Flush frequency:
|
|
253
|
+
* - Default: Every minute (adjustable in wrangler.toml)
|
|
254
|
+
* - Proofs are also flushed immediately when batch size is reached
|
|
255
|
+
* - Failed proofs are retried with exponential backoff
|
|
256
|
+
*/
|
|
257
|
+
async flush() {
|
|
258
|
+
if (this.batchQueue) {
|
|
259
|
+
console.log('[ProofService] Flushing batch queue...');
|
|
260
|
+
await this.batchQueue.flush();
|
|
92
261
|
}
|
|
93
262
|
}
|
|
94
263
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.service.js","sourceRoot":"","sources":["../../src/services/proof.service.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"proof.service.js","sourceRoot":"","sources":["../../src/services/proof.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kya-os/mcp-i-cloudflare",
|
|
3
|
-
"version": "1.4.1-canary.
|
|
3
|
+
"version": "1.4.1-canary.5",
|
|
4
4
|
"description": "Cloudflare Workers implementation of MCP-I framework",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
"dependencies": {
|
|
41
41
|
"@kya-os/contracts": "1.5.2-canary.2",
|
|
42
42
|
"@kya-os/mcp-i-core": "1.1.13-canary.1",
|
|
43
|
+
"@kya-os/mcp-i": "1.5.6-canary.1",
|
|
43
44
|
"@modelcontextprotocol/sdk": "^1.11.4",
|
|
44
45
|
"base-x": "^5.0.1"
|
|
45
46
|
},
|