[Windows] plugin-scoped Context7 MCP disable override is silently ignored
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.5k
- PR merge metrics
- PR metrics pending
Description
Environment
- Codex Desktop:
26.810.6296.0 - Codex CLI:
0.147.0 - Plugin:
context7@context7-marketplaceversion1.0.1 - Platform: Windows x64
Summary
A one-run plugin-scoped config override is accepted without an error but does not disable the plugin's MCP server.
The installed plugin inventory reports Context7 as installed and enabled. The baseline MCP inventory contains one enabled context7 streamable-HTTP server.
Reproduction
Run the read-only inventory with this one-run override:
codex mcp list --json --config 'plugins."context7@context7-marketplace".mcp_servers.context7.enabled=false'
Actual result:
{
"name": "context7",
"enabled": true,
"disabled_reason": null
}
The command exits normally and does not report that the key was unsupported or ignored.
As a control, the equivalent top-level override is honored:
codex mcp list --json --config 'mcp_servers.context7.enabled=false'
With that control, the Context7 MCP entry is absent from the resulting inventory. This confirms that --config forwarding is functioning and isolates the mismatch to the plugin-scoped path.
Expected behavior
One of the following should happen deterministically:
- the plugin-scoped MCP override disables only that plugin MCP server for the invocation; or
- Codex rejects the unsupported key with an actionable validation error.
Actual impact
The supported-looking override silently has no effect. Users cannot rely on it to keep a plugin installed while disabling only its MCP surface for one bounded invocation.
This report does not claim a provider or authentication failure. No Context7 tool or external data request was made; only local plugin/MCP inventory commands were used.
Suggested correction
- Apply plugin-scoped
mcp_servers.<name>.enabledoverrides during effective MCP inventory construction; or - reject unknown/unsupported nested plugin keys instead of silently accepting them;
- add a regression test comparing plugin-scoped and top-level one-run overrides.
No account identifiers, credentials, private data, local paths, or raw unrelated logs are included.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the reproduced codex mcp list --json command and compare the plugin-scoped and top-level --config overrides. Trace effective MCP inventory construction, then add a regression test covering both paths; done means the plugin-scoped override disables only the selected server or returns an actionable validation error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 70/100