[BUG] Plugins Installed UI nests only the first bundled MCP server (still reproducible in 2.1.175)

Status Fixed / completed
Reported on v2.1.175
Maintainer reply None cached
Activity 4 comments · opened Jun 12, 2026 · closed Jun 17, 2026

Preflight Checklist

  • [x] I searched existing open issues and found no active report for this bug.
  • [x] This is a single bug report.
  • [x] I am using Claude Code 2.1.175, installed with the official Windows native PowerShell installer.

What's Wrong?

When a plugin bundles multiple MCP servers through one .mcp.json, the Plugins > Installed TUI renders only the first MCP server as a child of the plugin. Every later MCP server is rendered at the top level, visually implying that it is an independent user MCP.

This remains reproducible in Claude Code 2.1.175. The earlier report #55955 was closed automatically for inactivity with a request to open a new issue if the problem remained relevant.

The underlying ownership is correct. Both claude plugin details and claude mcp list identify both servers as components of the same plugin, so this appears to be a tree-rendering/indentation bug only.

Actual TUI layout:

smart-search Plugin · smart-search · enabled
└ brave-search MCP · connected
tavily-search MCP · connected
chrome-devtools MCP · connected

Because tavily-search has the same indentation as chrome-devtools, it appears unrelated to smart-search even though it belongs to the plugin.

What Should Happen?

All MCP servers declared by the plugin should render at the same child indentation level:

smart-search Plugin · smart-search · enabled
├ brave-search MCP · connected
└ tavily-search MCP · connected
chrome-devtools MCP · connected

At minimum, every bundled MCP row should retain the plugin-child indentation, regardless of which branch glyph is used.

Error Messages/Logs

$ claude --version
2.1.175 (Claude Code)

$ claude mcp list
plugin:smart-search:brave-search: npx -y @brave/brave-search-mcp-server --transport stdio - Connected
plugin:smart-search:tavily-search: npx -y tavily-mcp - Connected
chrome-devtools: cmd /c npx -y chrome-devtools-mcp@latest --auto-connect - Connected

$ claude plugin details smart-search@smart-search
Component inventory
  MCP servers (2)  brave-search, tavily-search

Steps to Reproduce

  1. Create a plugin whose .claude-plugin/plugin.json references an MCP configuration:
{
  "name": "smart-search",
  "mcpServers": "./.mcp.json"
}
  1. Put at least two servers in .mcp.json:
{
  "mcpServers": {
    "brave-search": {
      "command": "npx",
      "args": ["-y", "@brave/brave-search-mcp-server", "--transport", "stdio"]
    },
    "tavily-search": {
      "command": "npx",
      "args": ["-y", "tavily-mcp"]
    }
  }
}
  1. Install and enable the plugin.
  2. Open /plugin and select the Installed tab.
  3. Expand or inspect the plugin entry.
  4. Observe that only the first MCP row is visually nested beneath the plugin.
  5. Run claude mcp list or claude plugin details smart-search@smart-search and observe that both MCPs are correctly owned by the plugin.

Minimal public reproduction plugin: https://github.com/JiangHe12/smart-search

Claude Model

Not sure / Multiple models. The bug occurs before model interaction in the local plugin management TUI.

Is this a regression?

I don't know.

Last Working Version

Unknown.

Claude Code Version

2.1.175 (Claude Code)

Installation Method

Official Windows native installer, run from PowerShell:

irm https://claude.ai/install.ps1 | iex

Installed binary: C:\Users\12542\.local\bin\claude.exe (ProductVersion 2.1.175.0). This is not an npm installation.

Platform

Other (third-party Anthropic-compatible endpoint). This appears independent of API platform because it occurs in the local TUI.

Operating System

Windows 11 Home, version 10.0.26200, build 26200.

Terminal/Shell

PowerShell / Windows terminal environment.

Additional Information

  • Previous report: #55955
  • Previous report was labeled area:mcp, area:plugins, area:ui, and platform:windows.
  • It was closed by the stale bot on June 1, 2026, not because the bug was fixed.
  • Impact is visual but meaningful: the Installed screen communicates incorrect component ownership and can lead users to investigate nonexistent duplicate or user-level MCP registrations.

View original on GitHub ↗

4 Comments

github-actions[bot] · 4 months ago

Found 1 possible duplicate issue:

  1. https://github.com/anthropics/claude-code/issues/55955

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

JiangHe12 · 4 months ago

This is still reproducible in Claude Code 2.1.175 installed through the official Windows native PowerShell installer.

#55955 was not closed because the bug was fixed or confirmed as a duplicate. It was automatically closed for inactivity, and the closing bot explicitly said: "Please open a new issue if this is still relevant."

This new issue follows that instruction and adds current-version evidence, native installer details, CLI ownership output, and a complete reproduction. Please keep #67841 open as the active report rather than auto-closing it against the stale, closed issue.

JiangHe12 · 4 months ago

Verified fixed in 2.1.179.

The Plugins Installed TUI now correctly renders all bundled MCP servers as children of their parent plugin, not just the first one.

Closing as resolved.

github-actions[bot] · 1 month ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.