Skip to content

git-subdir source type in marketplace.json breaks older Claude Code clients #585

Description

@factory-davidgu

Commit bd04149 introduced a new git-subdir source type for the Semgrep plugin entry (plugin index 56):

{
  "name": "semgrep",
  "source": {
    "source": "git-subdir",
    "url": "https://github.com/semgrep/mcp-marketplace.git",
    "path": "plugin"
  }
}

This is a breaking schema change. Prior to this commit, all plugin source fields were either a relative path string (e.g. "./plugins/semgrep") or an object with "source": "url". The git-subdir discriminator is not recognized by some existing Claude Code clients, causing the entire marketplace.json manifest to fail validation.

Impact:

  • Claude Code v2.1.66 fails to add the official marketplace:
Failed to parse marketplace file at .../.claude-plugin/marketplace.json:
Invalid schema: plugins.56.source: Invalid input
  • Any third-party client that strictly validates the marketplace manifest against the documented schema is also broken.
  • This affects fresh installs as well as marketplace updates for existing users.

Reproduction:

  1. Open Claude Code v2.1.66 (or any version <v2.1.69)
  2. Run /plugin and add https://github.com/anthropics/claude-plugins-official
  3. Observe validation failure.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions