@kya-os/mcp-i-cloudflare 1.6.15 → 1.6.16-canary.clientinfo.20251126041014
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/__tests__/e2e/test-config.d.ts +37 -0
- package/dist/__tests__/e2e/test-config.d.ts.map +1 -0
- package/dist/__tests__/e2e/test-config.js +62 -0
- package/dist/__tests__/e2e/test-config.js.map +1 -0
- package/dist/adapter.d.ts +2 -1
- package/dist/adapter.d.ts.map +1 -1
- package/dist/adapter.js +14 -2
- package/dist/adapter.js.map +1 -1
- package/dist/agent.d.ts +36 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +258 -51
- package/dist/agent.js.map +1 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +16 -8
- package/dist/app.js.map +1 -1
- package/dist/runtime/oauth-handler.d.ts.map +1 -1
- package/dist/runtime/oauth-handler.js +56 -9
- package/dist/runtime/oauth-handler.js.map +1 -1
- package/dist/services/admin.service.d.ts.map +1 -1
- package/dist/services/admin.service.js +4 -1
- package/dist/services/admin.service.js.map +1 -1
- package/dist/services/consent.service.d.ts.map +1 -1
- package/dist/services/consent.service.js +11 -3
- package/dist/services/consent.service.js.map +1 -1
- package/dist/services/kta-client-lookup.d.ts +59 -0
- package/dist/services/kta-client-lookup.d.ts.map +1 -0
- package/dist/services/kta-client-lookup.js +153 -0
- package/dist/services/kta-client-lookup.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/client-info.d.ts +69 -0
- package/dist/utils/client-info.d.ts.map +1 -0
- package/dist/utils/client-info.js +178 -0
- package/dist/utils/client-info.js.map +1 -0
- package/dist/utils/error-formatter.d.ts +103 -0
- package/dist/utils/error-formatter.d.ts.map +1 -0
- package/dist/utils/error-formatter.js +245 -0
- package/dist/utils/error-formatter.js.map +1 -0
- package/dist/utils/initialize-context.d.ts +91 -0
- package/dist/utils/initialize-context.d.ts.map +1 -0
- package/dist/utils/initialize-context.js +169 -0
- package/dist/utils/initialize-context.js.map +1 -0
- package/dist/utils/known-clients.d.ts +46 -0
- package/dist/utils/known-clients.d.ts.map +1 -0
- package/dist/utils/known-clients.js +138 -0
- package/dist/utils/known-clients.js.map +1 -0
- package/dist/utils/oauth-identity.d.ts +58 -0
- package/dist/utils/oauth-identity.d.ts.map +1 -0
- package/dist/utils/oauth-identity.js +215 -0
- package/dist/utils/oauth-identity.js.map +1 -0
- package/package.json +3 -3
package/dist/agent.js
CHANGED
|
@@ -12,7 +12,7 @@ import { createCloudflareRuntime } from "./index";
|
|
|
12
12
|
import { mapPrefixedEnv } from "./helpers/env-mapper";
|
|
13
13
|
import { STORAGE_KEYS } from "./constants/storage-keys";
|
|
14
14
|
import { z } from "zod";
|
|
15
|
-
import { OAuthService, IdpTokenResolver, ToolContextBuilder, DelegationRequiredError, } from "@kya-os/mcp-i-core";
|
|
15
|
+
import { OAuthService, IdpTokenResolver, ToolContextBuilder, DelegationRequiredError, SessionRegistrationService, } from "@kya-os/mcp-i-core";
|
|
16
16
|
// CRITICAL: Import the OAuth service registry - this triggers globalThis registration
|
|
17
17
|
// at module load time, preventing esbuild from tree-shaking the OAuth services
|
|
18
18
|
import { getOAuthServices, isOAuthServicesAvailable, } from "./utils/oauth-service-registry";
|
|
@@ -20,6 +20,8 @@ import { KVOAuthConfigCache } from "./cache/kv-oauth-config-cache";
|
|
|
20
20
|
import { IdpTokenStorage } from "./services/idp-token-storage";
|
|
21
21
|
import { OAuthSecurityService } from "./services/oauth-security.service";
|
|
22
22
|
import { WorkersFetchProvider } from "./providers/storage";
|
|
23
|
+
import { resolveClientIdentity, } from "./services/kta-client-lookup";
|
|
24
|
+
import { findKnownClient } from "./utils/known-clients";
|
|
23
25
|
// CRITICAL: Force OAuth registry evaluation at module load time
|
|
24
26
|
// This creates an observable side effect that esbuild cannot tree-shake
|
|
25
27
|
// Without this, esbuild may eliminate oauth-service-registry.ts entirely
|
|
@@ -53,6 +55,7 @@ export class MCPICloudflareAgent extends McpAgent {
|
|
|
53
55
|
});
|
|
54
56
|
mcpiRuntime;
|
|
55
57
|
env;
|
|
58
|
+
_environment = "production";
|
|
56
59
|
constructor(state, env) {
|
|
57
60
|
// Call super() with just state and env (agents@0.2.21+ only accepts 2 parameters)
|
|
58
61
|
// The config is no longer passed to the constructor - it's set via the server property
|
|
@@ -76,6 +79,8 @@ export class MCPICloudflareAgent extends McpAgent {
|
|
|
76
79
|
mappedEnv._durableObjectState = state;
|
|
77
80
|
// Load runtime configuration from subclass
|
|
78
81
|
const runtimeConfig = this.getRuntimeConfigInternal(mappedEnv);
|
|
82
|
+
// Store environment for logging checks
|
|
83
|
+
this._environment = runtimeConfig.environment || "production";
|
|
79
84
|
// Create tool protection service if configured
|
|
80
85
|
const toolProtectionService = runtimeConfig.toolProtection &&
|
|
81
86
|
mappedEnv.TOOL_PROTECTION_KV &&
|
|
@@ -112,6 +117,182 @@ export class MCPICloudflareAgent extends McpAgent {
|
|
|
112
117
|
runtimeConfig, // Pass full CloudflareRuntimeConfig for proofing support
|
|
113
118
|
});
|
|
114
119
|
}
|
|
120
|
+
/**
|
|
121
|
+
* Lifecycle hook called when the Durable Object starts/wakes.
|
|
122
|
+
* We use this to extract and log clientInfo since setInitializeRequest
|
|
123
|
+
* doesn't work via RPC dispatch (the agents library bypasses our override).
|
|
124
|
+
*/
|
|
125
|
+
async onStart() {
|
|
126
|
+
// Call parent to do all setup (init, transport, reinitialize)
|
|
127
|
+
await super.onStart();
|
|
128
|
+
// Now extract and log clientInfo from stored initialize request
|
|
129
|
+
await this.extractAndLogClientInfo();
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Extract clientInfo from the stored initialize request and log it.
|
|
133
|
+
* This is called from onStart() after the parent has stored the init request.
|
|
134
|
+
*/
|
|
135
|
+
async extractAndLogClientInfo() {
|
|
136
|
+
try {
|
|
137
|
+
const initializeRequest = await this.getInitializeRequest();
|
|
138
|
+
if (!initializeRequest)
|
|
139
|
+
return;
|
|
140
|
+
// Extract clientInfo from initialize request params
|
|
141
|
+
const params = initializeRequest?.params;
|
|
142
|
+
const clientInfo = params?.clientInfo;
|
|
143
|
+
const protocolVersion = params?.protocolVersion;
|
|
144
|
+
const capabilities = params?.capabilities;
|
|
145
|
+
// Store client info for later retrieval (always, not just in dev)
|
|
146
|
+
if (clientInfo || protocolVersion) {
|
|
147
|
+
await this.ctx.storage.put("mcpClientInfo", {
|
|
148
|
+
clientInfo,
|
|
149
|
+
protocolVersion,
|
|
150
|
+
capabilities,
|
|
151
|
+
timestamp: Date.now(),
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
// Resolve client identity from KTA registry (always, for session registration)
|
|
155
|
+
const envPrefix = this.getEnvPrefix();
|
|
156
|
+
const mappedEnv = envPrefix
|
|
157
|
+
? mapPrefixedEnv(this.env, envPrefix)
|
|
158
|
+
: this.env;
|
|
159
|
+
const ktaApiUrl = mappedEnv.KTA_API_URL || "https://knowthat.ai";
|
|
160
|
+
const clientIdentity = await resolveClientIdentity(clientInfo, ktaApiUrl);
|
|
161
|
+
// Store client identity for use in sessions/proofs
|
|
162
|
+
await this.ctx.storage.put("clientIdentity", clientIdentity);
|
|
163
|
+
// Register session with AgentShield (fire-and-forget) - always in production too
|
|
164
|
+
await this.registerSessionWithAgentShield(clientInfo, clientIdentity, protocolVersion);
|
|
165
|
+
// Skip balloon logging in production (only skip the visual output)
|
|
166
|
+
if (this._environment !== "development")
|
|
167
|
+
return;
|
|
168
|
+
// Log prominent balloon-style output (development only)
|
|
169
|
+
const knownClient = findKnownClient(clientInfo?.name);
|
|
170
|
+
const isRegistered = clientIdentity.source === "knowthat.ai";
|
|
171
|
+
const clientName = clientInfo?.name || "Unidentified Client";
|
|
172
|
+
const clientVersion = clientInfo?.version || "unknown";
|
|
173
|
+
const protocol = protocolVersion || "unknown";
|
|
174
|
+
const statusIcon = isRegistered ? "✓" : "○";
|
|
175
|
+
const statusText = isRegistered ? "REGISTERED" : "UNREGISTERED";
|
|
176
|
+
console.log("");
|
|
177
|
+
console.log("╔════════════════════════════════════════════════════════╗");
|
|
178
|
+
console.log("║ MCP CLIENT INFO ║");
|
|
179
|
+
console.log("╠════════════════════════════════════════════════════════╣");
|
|
180
|
+
console.log(`║ Client: ${clientName.padEnd(44)}║`);
|
|
181
|
+
console.log(`║ Version: ${clientVersion.padEnd(44)}║`);
|
|
182
|
+
console.log(`║ Protocol: ${protocol.padEnd(44)}║`);
|
|
183
|
+
if (clientInfo?.vendor || knownClient?.vendor) {
|
|
184
|
+
const vendor = clientInfo?.vendor || knownClient?.vendor || "";
|
|
185
|
+
console.log(`║ Vendor: ${vendor.padEnd(44)}║`);
|
|
186
|
+
}
|
|
187
|
+
if (clientInfo?.platform) {
|
|
188
|
+
console.log(`║ Platform: ${clientInfo.platform.padEnd(44)}║`);
|
|
189
|
+
}
|
|
190
|
+
console.log("╠════════════════════════════════════════════════════════╣");
|
|
191
|
+
console.log(`║ Status: ${statusIcon} ${statusText.padEnd(42)}║`);
|
|
192
|
+
console.log(`║ DID: ${clientIdentity.did.slice(0, 40).padEnd(44)}║`);
|
|
193
|
+
console.log(`║ Source: ${clientIdentity.source.padEnd(44)}║`);
|
|
194
|
+
console.log("╚════════════════════════════════════════════════════════╝");
|
|
195
|
+
console.log("");
|
|
196
|
+
}
|
|
197
|
+
catch (error) {
|
|
198
|
+
// Don't fail if we can't extract clientInfo
|
|
199
|
+
console.warn("[MCPICloudflareAgent] Failed to extract clientInfo:", error);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Register session with AgentShield for dashboard visibility
|
|
204
|
+
* This is a fire-and-forget operation - failures are logged but don't block
|
|
205
|
+
*/
|
|
206
|
+
async registerSessionWithAgentShield(clientInfo, clientIdentity, protocolVersion) {
|
|
207
|
+
try {
|
|
208
|
+
const envPrefix = this.getEnvPrefix();
|
|
209
|
+
const mappedEnv = envPrefix
|
|
210
|
+
? mapPrefixedEnv(this.env, envPrefix)
|
|
211
|
+
: this.env;
|
|
212
|
+
// Check if we have the required config
|
|
213
|
+
if (!mappedEnv.AGENTSHIELD_API_KEY || !mappedEnv.AGENTSHIELD_PROJECT_ID) {
|
|
214
|
+
// Skip silently - AgentShield integration is optional
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
// Get agent DID
|
|
218
|
+
const identity = await this.mcpiRuntime?.getIdentity();
|
|
219
|
+
if (!identity?.did) {
|
|
220
|
+
console.warn("[SessionRegistration] No agent DID available");
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
// ✅ CRITICAL: Use same session ID resolution logic as executeToolWithProof
|
|
224
|
+
// This ensures session registration uses the same ID that proofs will use
|
|
225
|
+
// Priority: getSessionId() (from agents SDK) > DO ID fallback
|
|
226
|
+
const timestamp = Date.now();
|
|
227
|
+
const mcpSessionId = this.getSessionId();
|
|
228
|
+
const doId = this.ctx.id.toString();
|
|
229
|
+
const sessionId = mcpSessionId ||
|
|
230
|
+
doId ||
|
|
231
|
+
`ephemeral-${timestamp}-${Math.random().toString(36).substring(2, 10)}`;
|
|
232
|
+
// Log session ID source for debugging (matches executeToolWithProof pattern)
|
|
233
|
+
if (this._environment === "development") {
|
|
234
|
+
console.log("[SessionRegistration] Session ID resolved:", {
|
|
235
|
+
fromGetSessionId: !!mcpSessionId,
|
|
236
|
+
fromDoId: !mcpSessionId && !!doId,
|
|
237
|
+
isEphemeral: !mcpSessionId && !doId,
|
|
238
|
+
sessionId: sessionId.slice(0, 30) + "...",
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
// Create fetch provider wrapper for the service
|
|
242
|
+
const fetchProvider = {
|
|
243
|
+
resolveDID: async () => null,
|
|
244
|
+
fetchStatusList: async () => null,
|
|
245
|
+
fetchDelegationChain: async () => [],
|
|
246
|
+
fetch: (url, options) => fetch(url, options),
|
|
247
|
+
};
|
|
248
|
+
const service = new SessionRegistrationService({
|
|
249
|
+
baseUrl: mappedEnv.AGENTSHIELD_API_URL || "https://kya.vouched.id",
|
|
250
|
+
apiKey: mappedEnv.AGENTSHIELD_API_KEY,
|
|
251
|
+
fetchProvider,
|
|
252
|
+
logger: this._environment === "development"
|
|
253
|
+
? (msg, data) => console.log(msg, data)
|
|
254
|
+
: undefined,
|
|
255
|
+
});
|
|
256
|
+
// Register session (fire-and-forget)
|
|
257
|
+
service.registerSessionAsync({
|
|
258
|
+
session_id: sessionId,
|
|
259
|
+
agent_did: identity.did,
|
|
260
|
+
project_id: mappedEnv.AGENTSHIELD_PROJECT_ID,
|
|
261
|
+
created_at: Date.now(),
|
|
262
|
+
client_info: {
|
|
263
|
+
name: clientInfo?.name || "Unidentified",
|
|
264
|
+
version: clientInfo?.version,
|
|
265
|
+
protocol_version: protocolVersion,
|
|
266
|
+
platform: clientInfo?.platform,
|
|
267
|
+
vendor: clientInfo?.vendor,
|
|
268
|
+
},
|
|
269
|
+
client_identity: {
|
|
270
|
+
did: clientIdentity.did,
|
|
271
|
+
source: clientIdentity.source,
|
|
272
|
+
// Registered if DID came from knowthat.ai registry OR KTA API lookup
|
|
273
|
+
registered: clientIdentity.source === "knowthat.ai" ||
|
|
274
|
+
clientIdentity.source === "kta-lookup",
|
|
275
|
+
},
|
|
276
|
+
server_did: identity.did,
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
catch (error) {
|
|
280
|
+
// Don't fail the main flow if session registration fails
|
|
281
|
+
console.warn("[SessionRegistration] Failed to register session:", error);
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Get stored MCP client info from the initialize message
|
|
286
|
+
*/
|
|
287
|
+
async getMcpClientInfo() {
|
|
288
|
+
return this.ctx.storage.get("mcpClientInfo");
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Get resolved client identity from KTA
|
|
292
|
+
*/
|
|
293
|
+
async getClientIdentity() {
|
|
294
|
+
return this.ctx.storage.get("clientIdentity");
|
|
295
|
+
}
|
|
115
296
|
/**
|
|
116
297
|
* Get agent version
|
|
117
298
|
* Subclasses can override this to provide a custom version
|
|
@@ -583,6 +764,43 @@ export class MCPICloudflareAgent extends McpAgent {
|
|
|
583
764
|
// Use non-null assertion since we've already validated it
|
|
584
765
|
const safeProjectId = projectId;
|
|
585
766
|
const agentDid = (await this.mcpiRuntime.getIdentity()).did;
|
|
767
|
+
// First, determine if we can use direct OAuth mode (need to know before building state)
|
|
768
|
+
let configuredProvider = null;
|
|
769
|
+
let providerConfig = null;
|
|
770
|
+
let isDirectPKCE = false;
|
|
771
|
+
const oauthServices = isOAuthServicesAvailable() ? getOAuthServices() : null;
|
|
772
|
+
if (oauthServices && env.TOOL_PROTECTION_KV) {
|
|
773
|
+
try {
|
|
774
|
+
const { OAuthConfigService, OAuthProviderRegistry } = oauthServices;
|
|
775
|
+
// Initialize services
|
|
776
|
+
const oauthConfigCache = new KVOAuthConfigCache({
|
|
777
|
+
kv: env.TOOL_PROTECTION_KV,
|
|
778
|
+
});
|
|
779
|
+
const configService = new OAuthConfigService({
|
|
780
|
+
baseUrl: agentShieldUrl,
|
|
781
|
+
apiKey: env.AGENTSHIELD_API_KEY || "",
|
|
782
|
+
fetchProvider: new WorkersFetchProvider(),
|
|
783
|
+
cache: oauthConfigCache,
|
|
784
|
+
});
|
|
785
|
+
const registry = new OAuthProviderRegistry(configService);
|
|
786
|
+
// Load providers and get configured provider
|
|
787
|
+
await registry.loadFromAgentShield(safeProjectId);
|
|
788
|
+
configuredProvider = registry.getConfiguredProvider();
|
|
789
|
+
if (configuredProvider) {
|
|
790
|
+
providerConfig = registry.getProvider(configuredProvider);
|
|
791
|
+
// Direct PKCE requires: supportsPKCE=true AND proxyMode=false
|
|
792
|
+
// Providers with proxyMode=true (like GitHub OAuth Apps with client_secret)
|
|
793
|
+
// must use AgentShield bouncer for token exchange
|
|
794
|
+
// See consent.service.ts and oauth-service.ts for same pattern
|
|
795
|
+
isDirectPKCE = !!(providerConfig &&
|
|
796
|
+
providerConfig.supportsPKCE &&
|
|
797
|
+
!providerConfig.proxyMode);
|
|
798
|
+
}
|
|
799
|
+
}
|
|
800
|
+
catch (err) {
|
|
801
|
+
console.warn("[MCPICloudflareAgent] Failed to get provider config, will use fallback:", err);
|
|
802
|
+
}
|
|
803
|
+
}
|
|
586
804
|
// Generate PKCE challenge if OAuthSecurityService is available
|
|
587
805
|
let codeChallenge;
|
|
588
806
|
let stateParam;
|
|
@@ -591,17 +809,25 @@ export class MCPICloudflareAgent extends McpAgent {
|
|
|
591
809
|
const oauthSecurityService = new OAuthSecurityService(env.DELEGATION_STORAGE, env.OAUTH_ENCRYPTION_SECRET);
|
|
592
810
|
const pkceChallenge = await oauthSecurityService.generatePKCEChallenge();
|
|
593
811
|
codeChallenge = pkceChallenge.challenge;
|
|
594
|
-
// Build state data
|
|
812
|
+
// Build state data with provider info for direct PKCE flow
|
|
813
|
+
// Generate temporary delegation ID (will be replaced after OAuth callback)
|
|
814
|
+
const delegationId = `temp-${Date.now()}`;
|
|
595
815
|
const stateData = {
|
|
596
816
|
project_id: safeProjectId,
|
|
597
817
|
agent_did: agentDid,
|
|
598
818
|
session_id: sessionId || "",
|
|
819
|
+
delegation_id: delegationId,
|
|
599
820
|
scopes: error.requiredScopes,
|
|
600
821
|
storedAt: Date.now(),
|
|
601
822
|
code_verifier: pkceChallenge.verifier,
|
|
602
823
|
code_challenge: pkceChallenge.challenge,
|
|
603
824
|
redirect_uri: `${serverUrl}/oauth/callback`,
|
|
604
825
|
};
|
|
826
|
+
// Add provider info for direct PKCE flow (required for callback routing)
|
|
827
|
+
if (isDirectPKCE && configuredProvider) {
|
|
828
|
+
stateData.provider = configuredProvider;
|
|
829
|
+
stateData.direct_pkce = true;
|
|
830
|
+
}
|
|
605
831
|
// Store state securely
|
|
606
832
|
const randomBytes = crypto.getRandomValues(new Uint8Array(32));
|
|
607
833
|
const stateValue = btoa(String.fromCharCode(...randomBytes))
|
|
@@ -613,77 +839,58 @@ export class MCPICloudflareAgent extends McpAgent {
|
|
|
613
839
|
}
|
|
614
840
|
catch (err) {
|
|
615
841
|
console.warn("[MCPICloudflareAgent] Failed to generate PKCE challenge, using insecure state:", err);
|
|
616
|
-
//
|
|
842
|
+
// CRITICAL: Disable direct PKCE mode for fallback paths
|
|
843
|
+
// Without proper PKCE state storage, the callback handler won't have
|
|
844
|
+
// code_verifier for token exchange, causing authentication failures
|
|
845
|
+
isDirectPKCE = false;
|
|
846
|
+
// Fallback to insecure state encoding (no PKCE, uses bouncer mode)
|
|
617
847
|
const stateData = {
|
|
618
848
|
project_id: safeProjectId,
|
|
619
849
|
agent_did: agentDid,
|
|
620
850
|
session_id: sessionId || "",
|
|
851
|
+
delegation_id: `temp-${Date.now()}`,
|
|
621
852
|
scopes: error.requiredScopes,
|
|
622
853
|
};
|
|
623
854
|
stateParam = btoa(JSON.stringify(stateData));
|
|
624
855
|
}
|
|
625
856
|
}
|
|
626
857
|
else {
|
|
627
|
-
//
|
|
858
|
+
// CRITICAL: Disable direct PKCE mode when storage is not available
|
|
859
|
+
// Direct PKCE requires DELEGATION_STORAGE to persist state data
|
|
860
|
+
// (code_verifier, provider, etc.) between authorization and callback
|
|
861
|
+
isDirectPKCE = false;
|
|
862
|
+
// Fallback to insecure state encoding (no PKCE, uses bouncer mode)
|
|
628
863
|
const stateData = {
|
|
629
864
|
project_id: safeProjectId,
|
|
630
865
|
agent_did: agentDid,
|
|
631
866
|
session_id: sessionId || "",
|
|
867
|
+
delegation_id: `temp-${Date.now()}`,
|
|
632
868
|
scopes: error.requiredScopes,
|
|
633
869
|
};
|
|
634
870
|
stateParam = btoa(JSON.stringify(stateData));
|
|
635
871
|
}
|
|
636
872
|
// Build OAuth authorization URL
|
|
637
|
-
// Try to use direct OAuth mode if we have the provider's authorization URL
|
|
638
873
|
let oauthUrl;
|
|
639
874
|
let clientId = safeProjectId;
|
|
640
|
-
//
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
await registry.loadFromAgentShield(safeProjectId);
|
|
658
|
-
const configuredProvider = registry.getConfiguredProvider();
|
|
659
|
-
if (configuredProvider) {
|
|
660
|
-
const providerConfig = registry.getProvider(configuredProvider);
|
|
661
|
-
// Direct OAuth Mode: Use provider's authorization URL for PKCE-capable providers
|
|
662
|
-
// This bypasses AgentShield bouncer and redirects straight to GitHub/Google/etc.
|
|
663
|
-
if (providerConfig && providerConfig.supportsPKCE) {
|
|
664
|
-
console.log("[MCPICloudflareAgent] Using direct OAuth mode (PKCE)", {
|
|
665
|
-
provider: configuredProvider,
|
|
666
|
-
authorizationUrl: providerConfig.authorizationUrl,
|
|
667
|
-
supportsPKCE: providerConfig.supportsPKCE,
|
|
668
|
-
});
|
|
669
|
-
oauthUrl = new URL(providerConfig.authorizationUrl);
|
|
670
|
-
clientId = providerConfig.clientId || safeProjectId;
|
|
671
|
-
oauthUrl.searchParams.set("response_type", "code");
|
|
672
|
-
oauthUrl.searchParams.set("client_id", clientId);
|
|
673
|
-
oauthUrl.searchParams.set("redirect_uri", `${serverUrl}/oauth/callback`);
|
|
674
|
-
oauthUrl.searchParams.set("scope", error.requiredScopes.join(" "));
|
|
675
|
-
oauthUrl.searchParams.set("state", stateParam);
|
|
676
|
-
if (codeChallenge) {
|
|
677
|
-
oauthUrl.searchParams.set("code_challenge", codeChallenge);
|
|
678
|
-
oauthUrl.searchParams.set("code_challenge_method", "S256");
|
|
679
|
-
}
|
|
680
|
-
return oauthUrl.toString();
|
|
681
|
-
}
|
|
682
|
-
}
|
|
683
|
-
}
|
|
684
|
-
catch (err) {
|
|
685
|
-
console.warn("[MCPICloudflareAgent] Failed to get provider config, using fallback:", err);
|
|
875
|
+
// Use direct OAuth mode if we determined earlier that provider supports PKCE
|
|
876
|
+
if (isDirectPKCE && configuredProvider && providerConfig) {
|
|
877
|
+
console.log("[MCPICloudflareAgent] Using direct OAuth mode (PKCE)", {
|
|
878
|
+
provider: configuredProvider,
|
|
879
|
+
authorizationUrl: providerConfig.authorizationUrl,
|
|
880
|
+
supportsPKCE: providerConfig.supportsPKCE,
|
|
881
|
+
});
|
|
882
|
+
oauthUrl = new URL(providerConfig.authorizationUrl);
|
|
883
|
+
clientId = providerConfig.clientId || safeProjectId;
|
|
884
|
+
oauthUrl.searchParams.set("response_type", "code");
|
|
885
|
+
oauthUrl.searchParams.set("client_id", clientId);
|
|
886
|
+
oauthUrl.searchParams.set("redirect_uri", `${serverUrl}/oauth/callback`);
|
|
887
|
+
oauthUrl.searchParams.set("scope", error.requiredScopes.join(" "));
|
|
888
|
+
oauthUrl.searchParams.set("state", stateParam);
|
|
889
|
+
if (codeChallenge) {
|
|
890
|
+
oauthUrl.searchParams.set("code_challenge", codeChallenge);
|
|
891
|
+
oauthUrl.searchParams.set("code_challenge_method", "S256");
|
|
686
892
|
}
|
|
893
|
+
return oauthUrl.toString();
|
|
687
894
|
}
|
|
688
895
|
// Fallback to AgentShield bouncer endpoint for non-PKCE or proxy-mode providers
|
|
689
896
|
console.log("[MCPICloudflareAgent] Using AgentShield bouncer OAuth (fallback mode)");
|
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.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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;AAe1E,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;CACxC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB;;
|
|
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;AAe1E,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;CACxC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB;;qBAuhB9C,cAAc,OAChB,qBAAqB,OACrB,gBAAgB,GACpB,OAAO,CAAC,IAAI,CAAC;EAKnB"}
|
package/dist/app.js
CHANGED
|
@@ -187,15 +187,23 @@ export function createMCPIApp(options) {
|
|
|
187
187
|
// Get server instance for potential fallback
|
|
188
188
|
const server = await getMcpiServer(c.env);
|
|
189
189
|
// Get Durable Object namespace from environment
|
|
190
|
-
//
|
|
191
|
-
//
|
|
190
|
+
//
|
|
191
|
+
// Resolution order (short-circuits on first truthy value):
|
|
192
|
+
// 1. mappedEnv.MCP_OBJECT - If prefix exists, this contains PREFIX_MCP_OBJECT value
|
|
193
|
+
// 2. Explicit PREFIX_MCP_OBJECT - Redundant if #1 hit, but covers edge cases
|
|
194
|
+
// 3. Unprefixed MCP_OBJECT - Fallback when prefixed version doesn't exist
|
|
195
|
+
// 4-6. Same pattern for AGENT (legacy/custom name)
|
|
196
|
+
//
|
|
197
|
+
// NOTE: This chain is intentionally redundant for robustness. JavaScript's ||
|
|
198
|
+
// short-circuits, so if mappedEnv.MCP_OBJECT is truthy, later checks are skipped.
|
|
199
|
+
// The unprefixed fallback (line 3) only triggers when the prefixed version doesn't exist.
|
|
192
200
|
const prefixUpper = options.envPrefix?.toUpperCase();
|
|
193
|
-
const agentNamespace = mappedEnv.MCP_OBJECT || //
|
|
194
|
-
(prefixUpper && c.env[`${prefixUpper}_MCP_OBJECT`]) ||
|
|
195
|
-
c.env.MCP_OBJECT ||
|
|
196
|
-
mappedEnv.AGENT || // Legacy
|
|
197
|
-
(prefixUpper && c.env[`${prefixUpper}_AGENT`]) ||
|
|
198
|
-
c.env.AGENT;
|
|
201
|
+
const agentNamespace = mappedEnv.MCP_OBJECT || // 1. Mapped (prefix-stripped if prefix exists)
|
|
202
|
+
(prefixUpper && c.env[`${prefixUpper}_MCP_OBJECT`]) || // 2. Explicit prefixed
|
|
203
|
+
c.env.MCP_OBJECT || // 3. Unprefixed fallback
|
|
204
|
+
mappedEnv.AGENT || // 4. Legacy mapped name
|
|
205
|
+
(prefixUpper && c.env[`${prefixUpper}_AGENT`]) || // 5. Legacy prefixed
|
|
206
|
+
c.env.AGENT; // 6. Legacy unprefixed fallback
|
|
199
207
|
if (!agentNamespace) {
|
|
200
208
|
console.warn("[App] AGENT namespace not found, falling back to AdminService cache clear");
|
|
201
209
|
// Fall back to regular AdminService handling (cache clear at this edge location)
|