Skip to content

Commit f9f0bb6

Browse files
WP-2564: Be explicit with oauth error messages (cloudflare#238)
* WP-2564: Be explicit with auth error messages * prettier * changeset
1 parent 30b77e0 commit f9f0bb6

File tree

2 files changed

+27
-10
lines changed

2 files changed

+27
-10
lines changed

.changeset/deep-steaks-wave.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@repo/mcp-common': minor
3+
---
4+
5+
Be explicit in oauth error messages

packages/mcp-common/src/cloudflare-oauth-handler.ts

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -230,13 +230,19 @@ export function createAuthHandlers({
230230
return Response.redirect(res.authUrl, 302)
231231
} catch (e) {
232232
c.var.sentry?.recordError(e)
233+
let message: string | undefined
233234
if (e instanceof Error) {
234-
metrics.logEvent(
235-
new AuthUser({
236-
errorMessage: `Authorize Error: ${e.name}: ${e.message}`,
237-
})
238-
)
235+
message = `${e.name}: ${e.message}`
236+
} else if (typeof e === 'string') {
237+
message = e
238+
} else {
239+
message = 'Unknown error'
239240
}
241+
metrics.logEvent(
242+
new AuthUser({
243+
errorMessage: `Authorize Error: ${message}`,
244+
})
245+
)
240246
if (e instanceof McpError) {
241247
return c.text(e.message, { status: e.code })
242248
}
@@ -307,14 +313,20 @@ export function createAuthHandlers({
307313
return Response.redirect(redirectTo, 302)
308314
} catch (e) {
309315
c.var.sentry?.recordError(e)
316+
let message: string | undefined
310317
if (e instanceof Error) {
311318
console.error(e)
312-
metrics.logEvent(
313-
new AuthUser({
314-
errorMessage: `Callback Error: ${e.name}: ${e.message}`,
315-
})
316-
)
319+
message = `${e.name}: ${e.message}`
320+
} else if (typeof e === 'string') {
321+
message = e
322+
} else {
323+
message = 'Unknown error'
317324
}
325+
metrics.logEvent(
326+
new AuthUser({
327+
errorMessage: `Callback Error: ${message}`,
328+
})
329+
)
318330
if (e instanceof McpError) {
319331
return c.text(e.message, { status: e.code })
320332
}

0 commit comments

Comments
 (0)