Skip to content

Plugin manifest + marketplace entry

The two JSON files that make a plugin installable: the manifest inside the plugin, and the catalog entry a marketplace lists. Only name is strictly required in the manifest; everything else improves discovery.

Parameter What to supply
name kebab-case, unique within a marketplace
source path or repo the marketplace installs from
Plugin manifest + marketplace entry
// .claude-plugin/plugin.json — inside the plugin
{
"name": "plugin-dev",
"description": "Comprehensive toolkit for developing Claude Code plugins with expert guidance on hooks, MCP integration, plugin structure, and marketplace publishing.",
"version": "0.1.0",
"author": {
"name": "Patterson Engineering",
"email": "eng@example.com"
},
"homepage": "https://github.com/example/plugin-dev",
"repository": "https://github.com/example/plugin-dev",
"license": "MIT",
"keywords": ["plugins", "development", "hooks", "mcp", "skills", "agents"]
}
// marketplace.json — the catalog that lists it
{
"name": "patterson-design",
"owner": { "name": "Patterson Engineering" },
"plugins": [
{
"name": "plugin-dev",
"source": "./plugins/plugin-dev",
"description": "Toolkit for developing Claude Code plugins",
"version": "0.1.0",
"keywords": ["development", "toolkit"]
}
]
}