Skip to content

.mcp.json server name collides with namespaced plugin registration in Claude Code, and OAuth redirect_uri mismatch #42

Description

@vmiscow

Hi! Two issues hit while using this plugin via Claude Code.

Environment

  • Claude Code: 2.1.141
  • Plugin: slack@claude-plugins-official v1.0.0
  • macOS

1. .mcp.json self-collision on plugin load

The bundled .mcp.json declares the server with key "slack":

{
  "mcpServers": {
    "slack": {
      "type": "http",
      "url": "https://mcp.slack.com/mcp",
      ...
    }
  }
}

When Claude Code loads it as a plugin, the loader appears to attempt registration twice — once namespaced and once plain — and the second one is dropped. /doctor reports the following warning on every reload, with no actionable fix on the user side:

Plugin (slack @ plugin:slack:slack): MCP server "slack" skipped — same command/URL as already-configured "slack"

claude mcp list confirms the plugin is registered as plugin:slack:slack and tools work normally. The warning seems purely cosmetic but never clears.

Suggested fix: rename the internal server key inside .mcp.json from slack to something like slack-mcp so the namespaced ID (plugin:slack:slack-mcp) does not collide with the plain key.

2. OAuth redirect_uri mismatch

Following the OAuth URL returned by the auth flow yields:

redirect_uri did not match any configured URIs. Passed URI: http://...

The passed redirect_uri is http://localhost:3118/callback. The Slack OAuth app behind client_id=1601185624273.8899143856786 (the one declared in .mcp.json) does not seem to have this redirect URI configured.

Worth noting: the plugin also ships a .cursor-mcp.json with a different client_id (3660753192626.8903469228982), suggesting separate OAuth apps for Claude Code vs Cursor — perhaps the Claude-targeted one is missing the http://localhost:3118/callback redirect URI in its Slack app config.

Happy to provide more detail if helpful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions