In the agent ecosystem (Claude, opencode, Cursor, etc.), “Skills”, “Tools”, “Plugins”, and “MCP” are often used interchangeably, but they operate at different levels.
One-liner distinction
| Concept | What it is | Example |
|---|---|---|
| Tool | A single callable function/API | read_file, run_bash, web_search |
| Skill | Instructions + resources that teach the model “how to do something” | A TDD workflow, a code-review process |
| MCP | A standard transport protocol for tools | MCP servers for GitHub, databases |
| Plugin | Usually an IDE/framework extension shell | VSCode extension, LangChain package |
Tool: the execution unit
A Tool is the smallest execution unit; the model triggers it via function calling. It has well-defined capabilities and parameters — the model only decides “when to call it”.
Skill: procedural knowledge
A Skill doesn’t perform actions directly. It provides procedural knowledge: a Markdown guide (how to do it, the steps, gotchas) plus optional scripts/resources. The model reads it and follows the process. For example, a “TDD skill” instructs the model to write a failing test first, then implement, then refactor.
Key difference: Tools answer “what can you do”, Skills answer “how should you do it”.
MCP: the distribution protocol for tools
MCP (Model Context Protocol) turns tools into pluggable standard services. An MCP server can expose many tools over the network or locally, discovered and called by the model through a unified protocol. The benefit is decoupling: the same MCP server can be reused by multiple agents.
How they relate
Skill ──guides──> Model ──calls──> Tool / MCP
- A Skill execution may use multiple Tools
- An MCP server may expose multiple Tools
- Skills and Tools/MCP are complementary: Tools provide capability, Skills provide methodology
Choosing what to use
- Single, well-defined action → Tool
- A process that must be followed correctly → Skill
- Integrating external systems, reused across agents → MCP
- Extending an IDE → Plugin
Common misconceptions
- “Skills can run commands” — No. A Skill is just documentation; execution happens via Tools.
- “MCP is a Tool” — MCP is a protocol; Tools are one of its products.
- “Plugins are the same as Skills” — Plugins are host extensions; Skills are in-model instructions.