{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreiflifvmlyckdcfsgpf2sbxzf7ekw2b6l2dya4lla5br2hb4j6r4si",
    "uri": "at://did:plc:lk3jfj3zq4k4wxnk474axylu/app.bsky.feed.post/3mhj3vf3nqv52"
  },
  "path": "/t/mcp-oauth-succeeds-token-initialize-ok-but-chatgpt-web-still-re-opens-auth-on-tool-call/1377373#post_1",
  "publishedAt": "2026-03-20T17:57:10.000Z",
  "site": "https://community.openai.com",
  "textContent": "We are debugging a reproducible re-auth loop on ChatGPT web with a custom MCP server.\n\nEnvironment\n\n  * MCP server behind OAuth endpoints authorize/token/register\n  *     * Transport: streamable HTTP (stateless)\n  * Observed behavior\n  *     1. Connector setup succeeds in ChatGPT (OAuth completes and connector appears active).\n  *     2. In chat, invoking a tool triggers Connect/auth again.\n  *     3. This repeats even though backend logs show successful auth + MCP handshake.\n\n\n\nWhat server logs confirm\n\n  * register returns 201 (public client, token_endpoint_auth_method=none)\n  *     * authorize issues code (302)\n    *       * token returns 200 with refresh token\n      *         * api/mcp receives and authorizes bearer token\n        *           * initialize, notifications/initialized, tools/list, resources/list return 200\n          *             * Mcp-Session-Id is returned and later\n\n",
  "title": "MCP OAuth succeeds (token + initialize OK) but ChatGPT web still re-opens auth on tool call"
}