How to build a Claude Cowork plugin
This summarizes Anthropic's documentation. A plugin is a folder that packages skills, connectors, commands and agents. There are two routes: have Claude make it for you, or write the files.
Route 1: create it with Claude (no files)
In claude.ai or the desktop app, go to Customize > Plugins and select Add > Create with Claude. Describe the job the plugin should help with, answer Claude's questions (for example which connectors to use), then select Save plugin. It lives on your account and is listed under Yours. On a Team or Enterprise plan you can share it with specific people or your organization. Anthropic notes that a plugin made this way is not a directory listing.
Route 2: write the files
Anthropic's quickstart builds an example plugin named expense-reports. The steps are:
- 1
Write the manifest
Create a folder with .claude-plugin/plugin.json holding the name, displayName, version, description, author and license. Only the manifest goes inside .claude-plugin/.
- 2
Add a skill
Create skills/<name>/SKILL.md. A skill tells Claude when and how to do a task; the description line decides when Claude loads it.
- 3
Add a connector (optional)
If your product has a remote MCP server, reference it by URL in .mcp.json at the plugin root. Do not put API keys or other secrets in this file.
- 4
Write the README and check the license
The README needs at least 40 words and should say what the plugin does, how to use it, and what data it sends. Add a LICENSE file or a license field.
- 5
Test it in Claude Code
Run claude --plugin-dir ./your-plugin and call your skill as /your-plugin:skill-name.
- 6
Push to GitHub
Push the plugin to a public GitHub repository, then submit it to Anthropic's directory or to this site.
Sources: quickstart and plugin structure and testing.
Get it listed here
Once the plugin is in a public GitHub repository, you can submit it to this directory. Read plugin security first so your README states what data the plugin sends.