ext-apps/examples
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Mel Ludowise a990780293
Require PKCE and bind redirect_uri in lazy-auth-server token exchange (#681)
* Require PKCE and bind redirect_uri in lazy-auth-server token exchange

Hardens the example's mock authorization server:

- /authorize now requires a PKCE S256 code_challenge (the MCP auth
  spec mandates PKCE for clients; previously a code issued without a
  challenge skipped verification at the token endpoint)
- /token rejects authorization-code exchanges where a provided
  redirect_uri does not match the authorization request (RFC 6749
  §4.1.3); OAuth 2.1 clients that omit it still work, relying on the
  now-mandatory PKCE binding

* Enforce single-use authorization codes

Track redeemed code IDs (jti) in memory until the code's own 5-minute
expiry; replaying a code at the token endpoint now fails with
invalid_grant (RFC 6749 §4.1.2). Also documents why wildcard CORS is
intentional for this demo (browser-based hosts must read
WWW-Authenticate; no ambient credentials exist to protect).
2026-06-02 13:30:49 +01:00
..
basic-host chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
basic-server-preact chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
basic-server-react chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
basic-server-solid chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
basic-server-svelte chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
basic-server-vanillajs chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
basic-server-vue chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
budget-allocator-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
cohort-heatmap-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
customer-segmentation-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
debug-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
integration-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
lazy-auth-server Require PKCE and bind redirect_uri in lazy-auth-server token exchange (#681) 2026-06-02 13:30:49 +01:00
map-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
pdf-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
qr-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
quickstart chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
say-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
scenario-modeler-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
shadertoy-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
sheet-music-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
system-monitor-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
threejs-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
transcript-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
video-resource-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
wiki-explorer-server chore: bump ext-apps to 1.7.3 (#680) 2026-06-01 12:10:47 +01:00
run-all.ts add EXAMPLE=folder-name support for tests & basic-host (#292) 2026-01-19 20:16:37 +00:00