Error text / 报错原文
401 Unauthorizedremote MCP unauthorizedinvalid token
What it means
ChatGPT reached the remote MCP server, but the server rejected the token, session, or OAuth scope.
Most common causes
- Expired access token
- Wrong audience or issuer
- Missing scope
- Server checks bearer token but client uses session-based auth
Fastest fix
- Reproduce the smallest failing case outside the agent.
- Confirm auth, session, and transport before changing app code.
- Disable unrelated tools or servers and retry once.
- Capture the exact timestamp, client version, and raw error text.
Safe fix
- Keep secrets in environment variables or the platform secret store.
- Use least-privilege scopes and read-only tools by default.
- Add validation around manifests, schemas, and callback URLs.
- Document the working local and production configuration.
What not to do
- Do not paste OAuth tokens or session IDs into public logs.
- Do not bypass TLS, CSP, or permission prompts as a permanent fix.
- Do not enable every MCP tool globally just to make one task pass.
Diagnostic commands
node --version curl -I "$MCP_SERVER_URL" echo "$OAUTH_CLIENT_ID"