Skip to content

Commit ac391eb

Browse files
committed
Add support for bearer auth with user API tokens
1 parent 8a2913f commit ac391eb

File tree

16 files changed

+108
-72
lines changed

16 files changed

+108
-72
lines changed

apps/ai-gateway/src/ai-gateway.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -95,8 +95,8 @@ const AIGatewayScopes = {
9595

9696
export default {
9797
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
98-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
99-
return await handleDevMode(AIGatewayMCP, req, env, ctx)
98+
if (await isApiTokenRequest(req, env)) {
99+
return await handleApiTokenMode(AIGatewayMCP, req, env, ctx)
100100
}
101101

102102
return new OAuthProvider({

apps/auditlogs/src/auditlogs.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -95,8 +95,8 @@ const AuditlogScopes = {
9595

9696
export default {
9797
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
98-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
99-
return await handleDevMode(AuditlogMCP, req, env, ctx)
98+
if (await isApiTokenRequest(req, env)) {
99+
return await handleApiTokenMode(AuditlogMCP, req, env, ctx)
100100
}
101101

102102
return new OAuthProvider({

apps/autorag/src/autorag.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -95,8 +95,8 @@ const LogPushScopes = {
9595

9696
export default {
9797
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
98-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
99-
return await handleDevMode(AutoRAGMCP, req, env, ctx)
98+
if (await isApiTokenRequest(req, env)) {
99+
return await handleApiTokenMode(AutoRAGMCP, req, env, ctx)
100100
}
101101

102102
return new OAuthProvider({

apps/browser-rendering/src/browser.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -95,8 +95,8 @@ const BrowserScopes = {
9595

9696
export default {
9797
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
98-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
99-
return await handleDevMode(BrowserMCP, req, env, ctx)
98+
if (await isApiTokenRequest(req, env)) {
99+
return await handleApiTokenMode(BrowserMCP, req, env, ctx)
100100
}
101101

102102
return new OAuthProvider({

apps/cloudflare-one-casb/src/cf1-casb.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -93,8 +93,8 @@ const CloudflareOneCasbScopes = {
9393

9494
export default {
9595
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
96-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
97-
return await handleDevMode(CASBMCP, req, env, ctx)
96+
if (await isApiTokenRequest(req, env)) {
97+
return await handleApiTokenMode(CASBMCP, req, env, ctx)
9898
}
9999

100100
return new OAuthProvider({

apps/dex-analysis/src/dex-analysis.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -95,8 +95,8 @@ const DexScopes = {
9595

9696
export default {
9797
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
98-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
99-
return await handleDevMode(CloudflareDEXMCP, req, env, ctx)
98+
if (await isApiTokenRequest(req, env)) {
99+
return await handleApiTokenMode(CloudflareDEXMCP, req, env, ctx)
100100
}
101101

102102
return new OAuthProvider({

apps/dns-analytics/src/dns-analytics.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -102,8 +102,8 @@ const AnalyticsScopes = {
102102

103103
export default {
104104
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
105-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
106-
return await handleDevMode(DNSAnalyticsMCP, req, env, ctx)
105+
if (await isApiTokenRequest(req, env)) {
106+
return await handleApiTokenMode(DNSAnalyticsMCP, req, env, ctx)
107107
}
108108

109109
return new OAuthProvider({

apps/graphql/src/graphql.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -103,8 +103,8 @@ const GraphQLScopes = {
103103

104104
export default {
105105
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
106-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
107-
return await handleDevMode(GraphQLMCP, req, env, ctx)
106+
if (await isApiTokenRequest(req, env)) {
107+
return await handleApiTokenMode(GraphQLMCP, req, env, ctx)
108108
}
109109

110110
return new OAuthProvider({

apps/logpush/src/logpush.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -96,8 +96,8 @@ const LogPushScopes = {
9696

9797
export default {
9898
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
99-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
100-
return await handleDevMode(LogsMCP, req, env, ctx)
99+
if (await isApiTokenRequest(req, env)) {
100+
return await handleApiTokenMode(LogsMCP, req, env, ctx)
101101
}
102102

103103
return new OAuthProvider({

apps/radar/src/radar.app.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import OAuthProvider from '@cloudflare/workers-oauth-provider'
22
import { McpAgent } from 'agents/mcp'
33

4+
import { handleApiTokenMode, isApiTokenRequest } from '@repo/mcp-common/src/api-token-mode'
45
import {
56
createAuthHandlers,
67
handleTokenExchangeCallback,
78
} from '@repo/mcp-common/src/cloudflare-oauth-handler'
8-
import { handleDevMode } from '@repo/mcp-common/src/dev-mode'
99
import { getUserDetails, UserDetails } from '@repo/mcp-common/src/durable-objects/user_details.do'
1010
import { getEnv } from '@repo/mcp-common/src/env'
1111
import { RequiredScopes } from '@repo/mcp-common/src/scopes'
@@ -98,8 +98,8 @@ const RadarScopes = {
9898

9999
export default {
100100
fetch: async (req: Request, env: Env, ctx: ExecutionContext) => {
101-
if (env.ENVIRONMENT === 'development' && env.DEV_DISABLE_OAUTH === 'true') {
102-
return await handleDevMode(RadarMCP, req, env, ctx)
101+
if (await isApiTokenRequest(req, env)) {
102+
return await handleApiTokenMode(RadarMCP, req, env, ctx)
103103
}
104104

105105
return new OAuthProvider({

0 commit comments

Comments
 (0)