Repository navigation
Description
Description
Problem
MCP server presentation differs across TUI views.
Naming
The same concept currently appears as:
MCPsin the toggle dialogMCPin the sidebarMCP Serversin the status dialogToggle MCPsin the command palette
Status wording
The toggle dialog displays the same runtime state twice:
mcp-label-1 connected ✓ Enabled
mcp-label-2 disabled ○ Disabled
The left description comes from status.status. The right status comes from
local.mcp.isEnabled(name), which also returns true only when
status === "connected".
This makes Enabled appear to represent persisted configuration, although the
dialog controls the current runtime connection. Connect and disconnect does not
persist the configured enabled value.
Other views use different labels for the same states:
- connected / Connected
- disabled / Disabled
- Enabled
Styling
Status colors, bullet points, check symbols, casing, and placement also differ between
the MCP sidebar, toggle dialog, and status dialog.
Proposed change
- Use
MCP serversas the display label everywhere. - Use
Toggle MCP serversas the palette or autocomplete action. - Keep /mcps unchanged for compatibility.
- Use 'Disconnected' rather than
Disabled - Harmonize upper and lower case representation of statuses
Suggested visual structure
▼ MCP servers
• confluence disconnected
• jenkins connected
• jira disconnected
▶ MCP servers (1 connected)
For the toggle dialog, show one status rather than duplicated synonyms:
confluence ✓ Connected
jenkins ○ Disconnected
jira ✕ Failed
Implementation suggestion
Centralize MCP status presentation in a small shared helper or component so
the sidebar, toggle dialog, and status dialog cannot drift.
Likely affected files:
- packages/tui/src/component/dialog-mcp.tsx
- packages/tui/src/feature-plugins/sidebar/mcp.tsx
- packages/tui/src/component/dialog-status.tsx
- packages/tui/src/app.tsx
- shared MCP status presentation helper/component
Acceptance criteria
- All TUI views use MCP servers as the display label.
- /mcps remains available and unchanged.
- Toggle dialog no longer shows both connected and Enabled.
- Runtime status labels are consistent across all MCP views.
- disabled is displayed as Disconnected.
- Status colors and symbols are consistent.
- Existing connect/disconnect behavior remains unchanged.
Considerations
If it should be possible to enable or disable a mcp server in the config (persistence)? If yes, further UI considerations need to be made.
Plugins
RTK, Ponytail, Custom plugins
OpenCode version
1.18.32
Steps to reproduce
- Start OpenCode
- Run /status
- Run /mcps
- Look at the sidebar
- Toggle MCP list
- See differences in presentation and styling
Screenshot and/or share link
No response
Operating System
macOS 27
Terminal
cmux
Activity
github-actions commentedon Sep 25, 2026
This issue might be a duplicate of existing issues. Please check:
thdxr commentedon Oct 11, 2026
Thanks for the report! OpenCode 2.0 is now out and development is focused on V2, so we're closing issues filed against OpenCode 1. Please upgrade (
opencode upgrade --major, details: https://anoma.ly/notes/opencode-2-0), and if this is still relevant on 2.0, reopen this issue or open a new one with your 2.0 version.— from 𝕺𝖕𝖊𝖓𝕮𝖔𝖉𝖊