openai / openai/codex

[Windows Desktop 26.810.41047] Local STDIO MCP process groups accumulate and consume ~7 GB RAM

Open
#38,526 3 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

app bug mcp performance windows-os
Dominant language
Rust
Stars
125k
Forks
19.5k
PR merge metrics
PR metrics pending

Description

Title: [Windows Desktop 26.810.41047] Local STDIO MCP process groups accumulate and consume ~7 GB RAM

Environment:

  • Windows
  • ChatGPT/Codex desktop app 26.810.41047
  • Local STDIO MCP servers: Playwright, todo-query, node_repl

Actual behavior:
After starting/resuming multiple Codex threads, local MCP process groups accumulate and are not reclaimed when most threads become idle or unloaded.

Observed:

  • 26 identical MCP process groups
  • 183 processes total
  • Approximately 7 GB RAM and 1,200 threads
  • Each group contains:
    • 1 node_repl.exe
    • 2 Python processes for todo-query
    • 2 cmd.exe and 2 node.exe processes for Playwright MCP
  • The app listed only 1 active and approximately 4 idle threads at the time
  • System became noticeably unresponsive

Logs show each thread/start initializing a new MCP manager and launching the configured STDIO servers. Some temporary groups exit gracefully, but many remain attached to the main Codex process.

Expected behavior:
MCP processes belonging to closed, unloaded, or expired thread runtimes should be terminated or reused instead of accumulating.

Workaround:
Restarting the app or disabling local MCP servers releases/prevents the accumulated processes.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the thread/start flow that initializes the MCP manager and launches the configured STDIO servers; the payload does not name source files or tests. Reproduce on Windows with the listed local servers, then verify that closed, unloaded, or expired runtimes terminate or reuse their MCP processes instead of accumulating groups.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, playwright, python, rust
Domain
desktop, devtools, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.