plugin.json file is the manifest for your Claude plugin. It lives at .claude-plugin/plugin.json in your plugin directory and defines the plugin’s identity, metadata, and discoverability.
Location
Schema
The unique identifier for your plugin. Use lowercase with hyphens for multi-word names.
Semantic version number following the
major.minor.patch format.A clear, concise description of what your plugin does and who it’s for. This appears in the plugin marketplace and helps users understand the value.
Information about the plugin creator.
URL to the plugin’s homepage, documentation, or repository.
The license under which the plugin is distributed (e.g., “MIT”, “Apache-2.0”, “BSD-3-Clause”).
Array of keywords to improve plugin discoverability in search and filtering.
Examples
Minimal Plugin
Full Plugin with Metadata
Plugin with Keywords
Validation Rules
Naming Conventions: Use lowercase letters and hyphens for plugin names. Avoid spaces, special characters, or uppercase letters.
Version Format: Follow semantic versioning (semver) format:
major.minor.patch. Increment the version number when you publish updates.Best Practices
- Clear Descriptions: Write descriptions that explain both what the plugin does and who should use it. Focus on outcomes, not just features.
-
Accurate Versioning: Update the version number whenever you make changes:
- Patch (0.0.x): Bug fixes and minor improvements
- Minor (0.x.0): New features, backward-compatible
- Major (x.0.0): Breaking changes
- Useful Keywords: Add keywords that match how users might search for your plugin’s functionality.
- Author Attribution: Include your organization or personal name to help users know who maintains the plugin.
- License Clarity: Specify a license if you’re sharing your plugin publicly to clarify usage rights.
Related
- .mcp.json - Configure MCP server connections
- Plugin Structure - Learn about the complete plugin directory structure