Codex MCP OAuth 503 on discovery: check Sume's two URLs
Codex 0.156.0 refreshes MCP credentials after an OAuth discovery 503. To see if it came from Sume, curl its two well-known metadata URLs.

If Codex reports a 503 during MCP OAuth discovery, request Sume's two public metadata URLs with curl -i and read the status line. In Sume's server code both handlers answer with a plain 200 JSON body, so a persistent 503 more likely comes from another hop or a transient fault than from the metadata routes.
Codex CLI 0.156.0 (2026-09-22) lists a fix to "refresh MCP credentials when OAuth discovery returns a 503 error". The changelog line says no more than that. Sume URLs are from MCP OAuth and API keys, read 2026-10-01.
Which two URLs does Codex need from Sume?
Sume documents both as public metadata endpoints on the MCP host. The protected-resource document says which authorization server to use (authorization_servers is the MCP origin, not www or app.sume.com); the authorization-server document describes that server.
| Document | URL |
|---|---|
| Protected-resource metadata | https://mcp.sume.com/.well-known/oauth-protected-resource/mcp |
| Authorization-server metadata | https://mcp.sume.com/.well-known/oauth-authorization-server |
curl -i https://mcp.sume.com/.well-known/oauth-protected-resource/mcp
curl -i https://mcp.sume.com/.well-known/oauth-authorization-serverWhat does a healthy response look like?
A 200 status with a JSON body. The code also serves protected-resource metadata at the root /.well-known/oauth-protected-resource path. If both return 200 from your network, discovery is not failing at Sume's metadata routes.
What if one of them is not 200?
Copy the status code and, if the response carries one, the Sume request id from the headers, and report those; Sume's error docs say the request id is exposed in response headers. Leave API keys and signed URLs out of any report. Try again from a different network too, since a corporate proxy can return its own 503.
Is it safe to just retry in Codex?
Codex's own fix refreshes credentials after the 503, per its changelog. Discovery is read-only: it submits no generation, so a retry cannot create a paid job. Once the session is connected, paid and write tools still need mcp:write and an idempotency_key. For registration steps, see Codex MCP OAuth client registration for Sume.
Sources
Related posts
More in Developers
- Codex MCP input schema budget: how many Sume tools you load
Codex 0.158.0 makes MCP and Code Mode input schema budgets configurable. Sume keeps tool descriptions short and shows fewer tools to a read-only session.
- Apply a LUT to video by API: no .cube file, use lutrgb curves
Sume's video filter cannot load a .cube LUT because lut3d is not allowlisted. Per-channel curves with lutrgb or lutyuv are the supported way to grade.
- Colossyan callback vs polling, and Sume terminal-only webhooks
Colossyan posts finished or failed to your callback, or you poll every 5 s. Sume webhooks are terminal-only, so keep status_url polling as a backup.
- Colossyan intrinsicDurationTrackReference vs Sume scene duration
Colossyan can size a scene to the actor's speech. In Sume avatar videos you set voice.duration per scene, silence beats need it, and the total stays 4-60 s.
Written by Sume