Claude Cowork Plugins: Extending Your AI Assistant's Capabilities
By Learnia Team
Claude Cowork Plugins: Extending Your AI Assistant's Capabilities
📅 Last updated: March 10, 2026 — Covers the Cowork plugin catalog and the Plugin creation API.
📚 Related articles: Skills vs Projects vs Plugins | Skills User Guide | MCP Protocol
What Is a Cowork Plugin?
A Cowork plugin is an extension that connects Claude to external services, APIs, and tools. Plugins allow Claude to:
- →Read data from external sources (Google Drive, Notion, databases)
- →Write to third-party services (Slack, GitHub, email)
- →Transform data with specialized tools (Mermaid, LaTeX, image analysis)
- →Execute actions in external environments (deployments, CI/CD)
Plugins vs Skills vs MCP
| Aspect | Cowork Plugins | Skills | MCP Servers |
|---|---|---|---|
| Nature | Service connections | Internal procedures | Open tool standard |
| Installation | Integrated catalog | SKILL.md file | Server configuration |
| Interface | Native GUI | CLI / files | JSON-RPC |
| Network access | Yes | No (local) | Yes |
| Target audience | End users | Developers/Power users | Developers |
Exploring the Plugin Catalog
The catalog is accessible from the Claude interface via Menu > Plugins or in Claude Cowork via the extensions icon.
Navigation and Search
The catalog organizes plugins by category:
| Category | Description | Plugin Count |
|---|---|---|
| Productivity | Google Drive, Notion, Slack, Trello | 25+ |
| Development | GitHub, GitLab, Code Review, CI/CD | 20+ |
| Visualization | Mermaid, Chart.js, LaTeX, Excalidraw | 15+ |
| Data | SQL, MongoDB, Google Sheets, Airtable | 12+ |
| Communication | Email, Teams, Discord, Webhooks | 10+ |
| Research | Web Search, Academic Papers, News | 8+ |
Available Filters
- →By category: Productivity, Dev, Data, etc.
- →By popularity: Installation count
- →By rating: Community reviews
- →By compatibility: Claude Pro, Team, Enterprise
- →By publisher: Anthropic, Verified, Community
Default Installed Plugins
Some plugins come pre-installed with Claude Cowork:
Code Review
The Code Review plugin automatically analyzes shared code:
- →Potential bug detection
- →Performance suggestions
- →Best practices verification
- →Multi-language support (Python, JS, TypeScript, Java, Go, Rust)
You: [Upload file.py]
Claude (via plugin):
🔍 Code Review Analysis
├── 2 potential bugs detected (lines 42, 87)
├── 3 optimization suggestions
└── Quality score: 7.2/10
Mermaid Diagrams
The Mermaid plugin generates visual diagrams directly in conversation:
- →Flowcharts
- →Sequence diagrams
- →Class diagrams
- →Gantt charts
- →Entity-Relationship diagrams
Web Search
The Web Search plugin gives Claude access to up-to-date information:
- →Real-time web search
- →Page content extraction
- →Fact verification
- →News monitoring
File Converter
The File Converter plugin transforms files between formats:
- →Markdown → PDF, DOCX, HTML
- →CSV → Excel, JSON
- →Images → optimized formats
- →Code → formatted snippets
Top 10 Must-Have Plugins
| Rank | Plugin | Category | Usage | Rating |
|---|---|---|---|---|
| 1 | GitHub Integration | Dev | Read issues, PRs, create branches | ⭐ 4.9 |
| 2 | Google Drive | Productivity | Read/write docs and sheets | ⭐ 4.8 |
| 3 | Mermaid Diagrams | Visualization | Generate technical diagrams | ⭐ 4.8 |
| 4 | SQL Explorer | Data | Query databases in natural language | ⭐ 4.7 |
| 5 | Notion Sync | Productivity | Sync with Notion pages/databases | ⭐ 4.7 |
| 6 | Code Review Pro | Dev | In-depth code review with metrics | ⭐ 4.6 |
| 7 | Slack Messenger | Communication | Send/receive Slack messages | ⭐ 4.6 |
| 8 | Chart Builder | Visualization | Create interactive charts | ⭐ 4.5 |
| 9 | Academic Search | Research | Search scientific publications | ⭐ 4.5 |
| 10 | Jira Connector | Productivity | Manage tickets and sprints | ⭐ 4.4 |
Creating a Custom Plugin
Plugin Architecture
📁 my-plugin/
├── manifest.json → Metadata and declarations
├── src/
│ ├── index.ts → Entry point
│ ├── handlers/ → Request handlers
│ └── utils/ → Utilities
├── schemas/
│ ├── input.json → Input schema
│ └── output.json → Output schema
├── tests/
│ └── plugin.test.ts → Tests
└── README.md → Documentation
The Manifest File
{
"name": "weather-plugin",
"version": "1.0.0",
"description": "Fetches weather forecasts for any city",
"author": "your-name",
"permissions": ["network:read"],
"endpoints": [
{
"name": "get_weather",
"description": "Get the current weather for a city",
"input_schema": {
"type": "object",
"properties": {
"city": { "type": "string", "description": "City name" },
"units": { "type": "string", "enum": ["celsius", "fahrenheit"] }
},
"required": ["city"]
}
}
]
}
Implementing the Handler
// src/handlers/weather.ts
import { PluginHandler, PluginRequest, PluginResponse } from '@anthropic/plugin-sdk';
export const getWeather: PluginHandler = async (req: PluginRequest): Promise<PluginResponse> => {
const { city, units = 'celsius' } = req.input;
const response = await fetch(
`https://api.weather.example/v1/current?city=${encodeURIComponent(city)}&units=${units}`
);
if (!response.ok) {
return { error: `Unable to fetch weather for ${city}` };
}
const data = await response.json();
return {
result: {
city: data.city,
temperature: data.temp,
conditions: data.description,
humidity: data.humidity
}
};
};
Testing Locally
# Install the development SDK
npm install -g @anthropic/plugin-dev
# Launch the test server
plugin-dev serve --manifest ./manifest.json
# Test an endpoint
plugin-dev test get_weather --input '{"city": "Paris"}'
Publishing to the Catalog
# Validate the plugin
plugin-dev validate
# Submit for review
plugin-dev publish --manifest ./manifest.json
The review process typically takes 3 to 5 business days.
Security Model
Granular Permissions
Each plugin declares the permissions it needs:
| Permission | Description | Example |
|---|---|---|
network:read | HTTP read requests | Weather API |
network:write | HTTP write requests | Post to Slack |
files:read | Read shared files | Analyze a CSV |
files:write | Create/modify files | Generate a PDF |
user:profile | Access user profile | Personalize responses |
oauth:* | OAuth authentication | Google Drive |
Verification Process
Plugins go through a security pipeline before publication:
- →Static analysis: Code checked for known vulnerabilities
- →Sandbox testing: Execution in an isolated environment
- →Manual review: Anthropic team review for high-permission plugins
- →Continuous monitoring: Abnormal behavior surveillance post-publication
Security Best Practices
| Practice | Description |
|---|---|
| Principle of least privilege | Only request necessary permissions |
| Encryption in transit | All data via HTTPS |
| No secret storage | Use the built-in vault for tokens |
| Audit logs | Trace all plugin actions |
| Rate limiting | Limit API calls to prevent abuse |
Plugin API — Reference
Plugin Lifecycle
Installation → Authorization → Activation → Execution → Deactivation
│ │ │ │ │
▼ ▼ ▼ ▼ ▼
Manifest Permissions Trigger Handler Cleanup
parsed granted matched called resources
SDK Events
| Event | Trigger | Usage |
|---|---|---|
onInstall | Plugin installed | Initialization, configuration |
onActivate | Plugin activated in a conversation | Resource loading |
onRequest | Claude calls an endpoint | Request processing |
onError | Error during execution | Error handling, logging |
onDeactivate | Conversation ended | Resource release |
Tips for Plugin Developers
Do's ✅
| Tip | Reason |
|---|---|
| Clear endpoint descriptions | Claude chooses plugins based on descriptions |
| Strict input schemas | Reduces call errors |
| Concise responses | Saves tokens in context |
| Thorough testing | Guarantees reliability |
| Full documentation | Facilitates adoption |
Don'ts ❌
| Anti-pattern | Risk |
|---|---|
| Overly broad permissions | Rejection during verification |
| Endpoints without descriptions | Claude doesn't know when to use them |
| Overly verbose responses | Exceeds context limits |
| Hardcoded secrets | Sensitive data leaks |
| No error handling | Degraded user experience |
Conclusion
Cowork plugins transform Claude from a conversational assistant into a productivity hub connected to your everyday tools. Whether you use existing plugins or build your own, the ecosystem offers flexibility suited to all skill levels.
Next steps:
- →Explore the plugin catalog in your Claude interface
- →Build your first plugin with the developer SDK
- →Combine plugins and Skills for maximum impact — see our comparison
Module 0 — Prompting Fundamentals
Build your first effective prompts from scratch with hands-on exercises.
Weekly AI Insights
Tools, techniques & news — curated for AI practitioners. Free, no spam.
Free, no spam. Unsubscribe anytime.
→Related Articles
FAQ
What is a Claude Cowork plugin?+
A Cowork plugin is an extension that connects Claude to external services or adds specific capabilities. Unlike Skills that add internal procedures, plugins interact with third-party APIs and tools.
How do I install a Cowork plugin?+
Open the plugin catalog in the Claude interface, search for the desired plugin, and click 'Install.' Some plugins require OAuth authorization to access your third-party service accounts.
Can I create my own plugins?+
Yes. The Plugin API lets you create custom plugins by defining endpoints, input/output schemas, and permissions. The development SDK provides testing and debugging tools.
Are plugins secure?+
Plugins go through a verification process before publication. They work with granular permissions (read-only, write, etc.) and data is transmitted via encrypted connections.
What's the difference between a plugin and an MCP server?+
A Cowork plugin is a native extension of the Claude interface with an integrated catalog. An MCP server is an open standard for connecting tools to any LLM client. Plugins can use MCP internally.