anthropics / anthropics/claude-code

[BUG] For marketplace installs the MCP bundle (.mcpb) user_config is never prompted for

Open
#95,683 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area:mcp area:plugins bug platform:windows
Dominant language
TypeScript
Stars
147k
Forks
24k
PR merge metrics
PR metrics pending

Description

Preflight Checklist
  • I have searched existing issues and this hasn't been reported yet
  • This is a single bug report (please file separate reports for different bugs)
  • I am using the latest version of Claude Code
What's Wrong?

What happened

A marketplace plugin whose plugin.json points mcpServers at a bundled .mcpb
installs and enables without any configuration prompt. On the next session
the bundled server is not started and no tools appear. Nothing in the
session says why. The only place the bundle's settings can be entered is
/plugin → Manage plugins → → Configure, which the user has no way
of knowing about.

Details

  • The enable-time prompt only reads a userConfig block in plugin.json. The
    bundle's own user_config section is ignored at install time:

    $ claude plugin install mnemic@hirt-plugins --config owner=Alice --json
    ... "Installed, but --config not applied: --config was given but plugin
    "mnemic@hirt-plugins" declares no userConfig options."

  • At session start the bundle loader does parse user_config, and when a
    required value is missing it returns needs-config and skips the server.
    The only trace is a debug-log line:

    MCPB requires user configuration. User can configure via:
    /plugin → Manage plugins → mnemic → Configure

  • Declaring the same fields as userConfig in plugin.json does not help:
    those values are stored under pluginConfigs[].options, while the
    bundle loader reads pluginConfigs[].mcpServers[] and
    secure storage. The two never meet.

What Should Happen?

What I expected

Either of:

  1. Enabling a plugin with a bundle that has required user_config fields
    opens the same configuration form that the Configure entry opens, so
    the server starts on the first session. This is what the docs lead one
    to expect: "The userConfig field declares values that Claude Code prompts
    the user for when the plugin is enabled."
  2. Failing that, the install summary and the /plugin Errors tab say that
    the server needs configuration and where to enter it, instead of the
    server disappearing silently.
Error Messages/Logs
# Install: the bundle's user_config is not seen at all
$ claude plugin install mnemic@hirt-plugins --config owner=Alice --json
{"command":"install","outcome":"ok","plugin":"mnemic@hirt-plugins","pluginId":"mnemic@hirt-plugins","scope":"user","message":"Successfully installed plugin: mnemic@hirt-plugins (scope: user)\n⚠ Installed, but --config not applied: --config was given but plugin \"mnemic@hirt-plugins\" declares no userConfig options.","configApplied":false}

# Session start with --debug: the server is skipped, nothing is shown to the user
MCPB <path>/mnemic.mcpb requires user configuration. User can configure via: /plugin → Manage plugins → mnemic → Configure
Steps to Reproduce

Steps to reproduce

  1. /plugin marketplace add thegreystone/claude-plugins
  2. /plugin install mnemic@hirt-plugins
    (the bundle's manifest declares "owner" as required with no default)
  3. Start a new session. No mnemic tools are available, no message is shown.
  4. Run with --debug to see the "requires user configuration" line.
  5. /plugin → Manage plugins → mnemic → Configure, fill in the form, start a
    new session: the tools appear.

Environment

  • Claude Code 2.1.278, native binary, Windows 11 Pro 10.0.26200
  • Marketplace: https://github.com/thegreystone/claude-plugins, bundle
    committed in the repository and referenced as "mcpServers": "./mnemic.mcpb"
  • claude plugin validate passes for the marketplace and the plugin
Claude Model

None

Is this a regression?

No, this never worked

Last Working Version

No response

Claude Code Version

2.1.278

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

Windows Terminal

Additional Information

Notes

This is not Windows-specific. The install command and the bundle loader take
the same code path on every platform; Windows is only where it was observed.

The same plugin installed in Claude Desktop from the same marketplace is
dropped there too, for a different reason (Desktop's plugin path does not
support user_config at all). Reported separately through the app.

Contributor guide

No contributing guide indexed for this repository

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 by reproducing the issue with claude plugin install ... --config and a marketplace plugin whose bundled .mcpb manifest requires owner, then trace the install-time configuration path and the session-start bundle loader. Compare the configuration form opened through /plugin → Manage plugins → Configure with the values consumed by the bundle. Done means required bundle configuration is prompted or clearly surfaced, and the server starts with its tools available.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.