Claude Code Marketplace
Claude Code plugin marketplace catalog.
| Type | object |
|---|---|
| File match |
**/.claude-plugin/marketplace.json
.claude-plugin/marketplace.json
|
| Schema URL | https://catalog.lintel.tools/schemas/claude-code/marketplace/latest.json |
Validate with Lintel
npx @lintel/lintel check
Schema for Claude Code marketplace catalog (.claude-plugin/marketplace.json). Marketplaces distribute plugins to teams and communities, providing centralized discovery, version tracking, and automatic updates. Each marketplace lists plugins with their sources (local paths, GitHub repos, git URLs, npm packages, or pip packages). Users add marketplaces via /plugin marketplace add and install individual plugins with /plugin install plugin-name@marketplace-name.
Properties
Marketplace identifier (kebab-case, no spaces). This is public-facing — users see it when installing plugins (e.g. /plugin install my-tool@your-marketplace). Reserved names (cannot be used): claude-code-marketplace, claude-code-plugins, claude-plugins-official, anthropic-marketplace, anthropic-plugins, agent-skills, life-sciences. Names that impersonate official marketplaces are also blocked.
Marketplace maintainer information.
2 nested properties
Name of the maintainer or team.
Contact email for the maintainer.
List of available plugins in this marketplace. Each entry needs at minimum a name and source. Plugin entries can also include any field from the plugin manifest schema (description, version, author, commands, hooks, etc.).
Optional marketplace-level metadata.
3 nested properties
Brief marketplace description.
Marketplace catalog version.
Base directory prepended to relative plugin source paths. For example, setting this to ./plugins lets you write "source": "formatter" instead of "source": "./plugins/formatter".
Definitions
Marketplace maintainer information.
Name of the maintainer or team.
Contact email for the maintainer.
Optional marketplace-level metadata.
Brief marketplace description.
Marketplace catalog version.
Base directory prepended to relative plugin source paths. For example, setting this to ./plugins lets you write "source": "formatter" instead of "source": "./plugins/formatter".
A plugin listed in the marketplace. Includes marketplace-specific fields (source, category, tags, strict) plus any field from the plugin manifest schema (description, version, author, commands, hooks, etc.).
Plugin identifier (kebab-case, no spaces). This is public-facing — users see it when installing (e.g. /plugin install my-plugin@marketplace).
Brief plugin description shown when browsing the marketplace.
Plugin version. If the plugin also has a version in its plugin.json, the plugin.json version takes priority. For relative-path plugins, set the version here. For remote plugins, set it in plugin.json. See version resolution.
Plugin author information.
Plugin homepage or documentation URL.
Source code repository URL.
Tags for plugin discovery and categorization.
Plugin category for organization.
Tags for searchability.
Controls whether plugin.json is the authority for component definitions. When true (default), plugin.json is authoritative and the marketplace entry can supplement it with additional components (both are merged). When false, the marketplace entry is the entire definition — if the plugin also has a plugin.json that declares components, that's a conflict and the plugin fails to load. See strict mode.
Custom paths to command files or directories, relative to the plugin root.
Custom paths to agent files, relative to the plugin root.
Custom paths to skill directories, relative to the plugin root.
Hook configuration — paths to JSON config files or inline definitions.
MCP server configuration — paths to JSON config files or inline definitions.
Custom paths to output style files or directories.
LSP server configuration — paths to JSON config files or inline definitions.
Fetch the plugin from a GitHub repository. Supports pinning to a branch, tag, or exact commit SHA.
GitHub repository in owner/repo format.
Git branch or tag. Defaults to the repository's default branch.
Full 40-character git commit SHA to pin to an exact version.
Fetch the plugin from a git URL (GitHub, GitLab, Bitbucket, self-hosted, etc.).
Full git repository URL (must end with .git).
Git branch or tag. Defaults to the repository's default branch.
Full 40-character git commit SHA to pin to an exact version.
Install the plugin from an npm registry via npm install.
npm package name.
Version range or exact version.
Custom npm registry URL.
Install the plugin via pip.
Python package name.
Version specifier.
Custom PyPI registry URL.