Skills vs MCP vs Plugins vs Subagents: A Complete Guide
Confused about the different ways to extend AI agents? Learn the key differences between Skills, MCP servers, Plugins, and Subagents, and when to use each one.
Awesome Skills Team

Skills vs MCP vs Plugins vs Subagents: A Complete Guide
When extending AI agents like Claude, you have multiple options at your disposal: Skills, MCP servers, Plugins, and Subagents. Each serves a distinct purpose and understanding the differences is crucial for building effective AI-powered workflows.
In this comprehensive guide, we'll break down each extensibility mechanism, compare their use cases, and help you choose the right tool for your needs.
Quick Comparison Table
| Feature | Skills | MCP | Plugins | Subagents |
|---|---|---|---|---|
| Purpose | Knowledge & instructions | External tool access | Bundle extensions | Specialized AI instances |
| Format | Markdown (SKILL.md) | Protocol-based servers | Package with metadata | YAML configuration |
| Complexity | Low | Medium-High | Medium | Low-Medium |
| Execution | Context injection | Tool calls | Loads components | Parallel processing |
| Best for | Workflows, guidelines | APIs, databases | Distribution | Isolated tasks |
What Are Skills?
Agent Skills are markdown-based knowledge packages that extend Claude's capabilities with specialized instructions and workflows. They're the simplest way to give Claude domain-specific expertise.
How Skills Work
- Discovery: Claude scans for SKILL.md files and loads only their names and descriptions
- Activation: When a request matches a skill's description, the full instructions are loaded
- Execution: Claude follows the skill's guidance to complete the task
Skills Example
---
name: code-review
description: Review code for best practices, security, and performance issues.
---
# Code Review
## When to use
Use this skill when reviewing pull requests or code changes.
## Instructions
1. Check for security vulnerabilities
2. Evaluate code readability
3. Suggest performance improvements
Best Use Cases for Skills
- Coding standards: Enforce team conventions and best practices
- Workflow automation: Step-by-step guides for complex processes
- Documentation patterns: Templates for consistent documentation
- Domain expertise: Industry-specific knowledge and terminology
Learn more in the official Claude Skills documentation.
What Is MCP (Model Context Protocol)?
The Model Context Protocol is an open standard for connecting AI agents to external tools and data sources. Unlike Skills which provide knowledge, MCP gives Claude the ability to take actions in the real world.
How MCP Works
MCP servers expose tools, resources, and prompts that Claude can invoke. These servers can run locally (stdio) or remotely (HTTP/SSE), connecting the AI to databases, APIs, file systems, and more.
MCP Example
With an MCP server for GitHub, Claude can:
# Claude can now:
- Create and review pull requests
- Search issues and repositories
- Manage branches and commits
- Automate GitHub workflows
Popular MCP Servers
| Server | Capability |
|---|---|
| GitHub | Repository management, PRs, issues |
| PostgreSQL | Database queries and schema exploration |
| Sentry | Error monitoring and debugging |
| Slack | Message sending and channel management |
| Figma | Design file access and inspection |
You can find hundreds of community-built MCP servers on MCP.SO.
Best Use Cases for MCP
- External integrations: Connect to APIs, databases, and services
- Automation: Trigger actions in external systems
- Data access: Query databases, fetch monitoring data
- Workflow orchestration: Chain actions across multiple tools
What Are Plugins?
Plugins are distribution packages that bundle multiple Claude Code extensions together. Think of them as containers for sharing a collection of Skills, slash commands, agents, hooks, and MCP servers.
Plugin Structure
my-plugin/
├── .claude-plugin/
│ └── plugin.json # Plugin metadata
├── commands/ # Slash commands
├── agents/ # Custom subagents
├── skills/ # SKILL.md files
├── hooks/ # Lifecycle hooks
├── .mcp.json # MCP servers
└── .lsp.json # LSP servers
When to Use Plugins vs Standalone Configuration
| Use Standalone Config When... | Use Plugins When... |
|---|---|
| Customizing a single project | Sharing with team/community |
| Personal, experimental setup | Same features across multiple projects |
Want short command names (/hello) | Need version control and updates |
| Distributing via a marketplace |
Best Use Cases for Plugins
- Team tooling: Share standardized workflows across your organization
- Community distribution: Publish reusable extensions to the ecosystem
- Complex integrations: Bundle related Skills, commands, and MCP servers together
- Versioned releases: Track changes and provide updates to users
Read the official Plugins documentation for more details.
What Are Subagents?
Subagents are specialized AI instances that run in isolation from your main Claude conversation. They're ideal for tasks that benefit from focused context, specific tool restrictions, or parallel execution.
Built-in Subagents
Claude Code comes with several pre-configured subagents:
| Subagent | Model | Purpose |
|---|---|---|
| Explore | Haiku (fast) | File discovery, code search |
| Plan | Inherited | Read-only codebase research |
| General | Inherited | Complex multi-step operations |
Subagent Configuration
# ~/.claude/agents/code-reviewer.yaml
name: code-reviewer
description: Reviews code for quality and best practices
model: claude-sonnet
tools:
allowed:
- read_file
- grep_search
- view_file_outline
denied:
- write_to_file
- run_command
Foreground vs Background Subagents
- Foreground: Blocks main conversation, can ask clarifying questions
- Background: Runs in parallel, uses pre-approved permissions only
Best Use Cases for Subagents
- Isolated research: Keep exploration out of main context
- Constrained execution: Limit which tools can be used
- Parallel tasks: Run multiple investigations simultaneously
- Cost optimization: Route simple tasks to faster, cheaper models
Learn more in the Subagents documentation.
Choosing the Right Extension
Here's a decision framework to help you choose:
Use Skills When...
✅ You need to provide knowledge or instructions
✅ The task follows a repeatable workflow or pattern
✅ You want a simple, markdown-based solution
✅ The expertise should auto-activate based on context
Use MCP When...
✅ You need to connect to external APIs or databases
✅ The AI should take actions in external systems
✅ You want to query live data from services
✅ The capability requires executable code
Use Plugins When...
✅ You're bundling multiple extensions together
✅ You want to share capabilities across projects or teams
✅ You need versioned distribution of your tools
✅ You're building for a marketplace or community
Use Subagents When...
✅ The task produces verbose output you don't need in context
✅ You want to enforce specific tool restrictions
✅ The work is self-contained and can return a summary
✅ You're running parallel research or exploration
Combining Extensions
The real power comes from combining these mechanisms. Here are some patterns:
Skills + MCP
Use a Skill to define how to use an MCP server effectively:
---
name: database-query-expert
description: Expert guidance for querying our PostgreSQL database
---
When using the PostgreSQL MCP server:
1. Always check the schema before writing queries
2. Use parameterized queries for safety
3. Limit results to avoid memory issues
Plugins + Subagents
Bundle a custom subagent within a plugin for team distribution:
team-toolkit/
├── .claude-plugin/plugin.json
├── agents/
│ └── security-scanner.yaml
└── skills/
└── SKILL.md
Skills + Subagents
Reference Skills from within subagent configurations for specialized expertise:
name: documentation-writer
description: Writes technical documentation
skills:
- documentation-standards
- api-style-guide
Conclusion
Understanding the differences between Skills, MCP, Plugins, and Subagents is essential for building effective AI-powered workflows:
- Skills = Knowledge and instructions (markdown)
- MCP = External tool access (protocol)
- Plugins = Distribution packages (bundles)
- Subagents = Specialized AI instances (isolation)
Start with Skills for simple workflows, add MCP for external integrations, use Plugins for distribution, and leverage Subagents for isolated tasks.
Ready to explore? Browse our curated collection of Skills or learn how to create your own.
