Claude Code Skills、插件和MCP服务器对比:你应该用哪个?

dev.to 2026-07-28T17:20:01.293749

MCP 服务器:工具访问

MCP 服务器是一个运行中的程序,它使用“模型上下文协议”(Model Context Protocol,简称 MCP)——这是 Anthropic 制定的开放标准,用来把 AI 代理连接到外部系统。MCP 服务器让 Claude Code 能做它本来做不到的事:读数据库、触发 GitHub Action、控制浏览器、调用外部 API。

Claude Code 与 MCP 服务器交互的方式,就是调用该服务器暴露出来的工具。举个例子:一个 Postgres MCP 服务器可能会暴露 query_databaselist_tablesdescribe_table 等工具;一个 GitHub MCP 服务器则可能暴露 create_issueget_pull_requestlist_files_in_repo 等。

MCP 服务器不做什么?它不会教 AI 代理怎么高效地使用自己。比如,代理之前没见过你具体的数据库表结构,那 Postgres MCP 服务器虽然给了它运行查询的能力,但代理还得自己想清楚:该查什么语句?你的表叫什么名?你的代码仓库里有什么模式?这些知识得从别的地方来。

什么时候用 MCP 服务器?

如何配置(在 claude_desktop_config.json 里,或者用 /mcp 命令):

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-postgres",
        "postgresql://..."
      ]
    }
  }
}

Skills:代理智能

Skill 是一套指令集,存储在仓库中(文件名叫 SKILL.md),它教 Claude Code 如何正确且可重复地完成某件事。

Skills不会给智能体新增工具权限——它们只是约束智能体如何使用已有的工具。一条典型的Skill包含:

举个例子,一条「代码审查」Skill可以要求智能体:读取当前diff中所有变更的文件、对照特定检查清单逐一评估、并按特定结构整理审查结论——而不是根据训练数据做泛泛的审查。

Skills解决的是「代码里没有的知识」问题。你的项目有团队约定、代码范式、决策依据,这些都在你同事的脑子里。一条Skill把这些约定编码到智能体在关键时刻能读取的位置。

Skills做不到的事:让智能体访问外部系统。一条写着「查询数据库获取当前用户订单」的Skill,如果没有数据库连接(对应MCP服务器)根本跑不起来。

什么时候用Skill

安装Skill

# 从官方市场安装
claude skill add context7/docs-lookup

# 从URL安装
claude skill add https://github.com/yourorg/skills/tree/main/database-conventions

Plugins: Skill + MCP + 生命周期管理

Plugin是Skill、MCP服务器(或CLI)以及生命周期钩子的打包组合——从市场当做一个整体安装。不需要:

你需要做的只是:

生命周期钩子尤其重要。一个设计良好的Plugin会包含SessionStart钩子,在第一次提问前就验证后端连接是否有效。如果连接出问题,你第一时间就能发现——而不是等到会话进行到一半、查询突然失败时才抓狂。

查看原文