Streamable HTTP MCP initializes successfully but tools never become available in VS Code
What version of Codex CLI is running?
codex-cli 0.145.0-alpha.18
What subscription do you have?
ChatGPT Plus (using the ChatGPT VS Code extension)
Which model were you using?
openai.chatgpt 26.715.31925
What platform is your computer?
OS: Windows 10 22H2 (Build 19045.6456)
What terminal emulator and version are you using (if applicable)?
VS Code
Codex doctor report
not available
What issue are you seeing?
When using a Streamable HTTP MCP server in the ChatGPT VS Code extension, the server initializes successfully but MCP tools never become available.
The server returns a valid InitializeResult, but tools/list never completes, has_cached_tools remains false, and every MCP startup task is cancelled when the startup timeout expires.
What steps can reproduce the bug?
- Install the ChatGPT VS Code extension.
- Configure a Streamable HTTP MCP server in ~/.codex/config.toml, for example:
[mcp_servers.mp_manager]
url = "https://<server-url>"
[mcp_servers.mp_manager.http_headers]
Authorization = "Bearer <token>"
X-Organization-Id = "<organization-id>"
- Restart VS Code.
- Open a new Codex chat.
- Ask Codex to use any tool provided by the MCP server.
- Observe the MCP startup sequence.
Result
- The MCP server returns a successful
InitializeResult. - The server advertises the
toolscapability. tools/listnever completes.has_cached_toolsremainsfalse.- No
mcp__...tools appear. - The MCP startup task is cancelled when
startup_timeout_secexpires (30s by default, 120s if increased).
Expected
After a successful InitializeResult, Codex should complete tools/list, cache the tools and expose them as mcp__... tools.
What is the expected behavior?
After receiving a valid InitializeResult, the ChatGPT VS Code extension should:
- complete the MCP handshake;
- successfully retrieve the tool list (
tools/list); - cache the discovered tools;
- expose them as
mcp__...tools in the Codex chat; - keep the MCP connection alive for subsequent tool calls.
The MCP startup task should not be cancelled if the server is functioning correctly.
Additional information
Environment
- Windows 10
- ChatGPT Plus
- ChatGPT VS Code extension: 26.715.31925
- codex-cli: 0.145.0-alpha.18
- rmcp: 1.8.0
Additional observations
- The same MCP server works correctly in MCP Inspector.
initializesucceeds andtools/listcompletes successfully in Inspector.- The issue only occurs in the ChatGPT VS Code extension.
I collected detailed trace logs.
The traces consistently show:
- three concurrent MCP initialization owners;
- three successful
InitializeResultresponses; - no HTTP, TLS, DNS or transport errors;
has_cached_tools=false;- each MCP startup task is cancelled when
startup_timeout_secexpires.
Increasing startup_timeout_sec from 30 seconds to 120 seconds only delays the cancellation to approximately 120 seconds. The behavior is otherwise identical.
This suggests the timeout is not the root cause. The problem appears to occur after a successful InitializeResult and before the tool list is cached.
I can provide sanitized logs if needed.
1 Comment
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action