返回博客2026年3月20日2 分钟阅读

MCP 是什么?5 分钟搞懂 Model Context Protocol

摘要

MCP 是 AI 应用的 USB-C 接口。一文搞懂它是什么、为什么需要它、以及怎么用起来。

MCP 就是 AI 世界的 USB-C:一个标准接口,让 AI 模型能连接任何外部工具和数据源。

你有没有遇到过这种情况:

  • 想让 ChatGPT 查一下你的数据库,但它不行
  • 想让 Claude 帮你发个 Slack 消息,但它不行
  • 想让 AI 读你本地的文件,但它不行

为什么不行?因为 LLM 本身只是一个"大脑"——它能思考、能推理、能生成文本,但它看不见外面的世界,也伸不出手来操作任何东西

MCP 就是来解决这个问题的。


一、MCP 到底是什么

MCP,全称 Model Context Protocol(模型上下文协议),是 Anthropic 在 2024 年底发布的一个开放协议。

用最简单的话说:MCP 定义了 AI 应用和外部工具之间的通信标准。

在 MCP 出现之前,每个 AI 应用想连接外部工具,都得自己写集成代码。想连 GitHub?写一套。想连 Slack?再写一套。想连数据库?又一套。

# 没有 MCP 的世界
AI 应用 A → 自己写 GitHub 集成
AI 应用 A → 自己写 Slack 集成
AI 应用 A → 自己写数据库集成
AI 应用 B → 又自己写 GitHub 集成(和 A 不兼容)
AI 应用 B → 又自己写 Slack 集成(和 A 不兼容)
...

这就像手机充电器的早期时代——每个牌子一个接口,出门得带一堆线。

MCP 做的事情就是统一接口:

# 有了 MCP 的世界
GitHub MCP Server(写一次)
  ↑
  MCP 协议(标准接口)
  ↑
AI 应用 A、B、C、D...(都能连)

一个 MCP Server 写好了,所有支持 MCP 的 AI 应用都能用。


二、三个核心概念

MCP 的架构很简单,就三个角色:

1. MCP Host(宿主)

就是你用的 AI 应用。比如 Claude Desktop、Claude Code、Cursor、Continue 等等。Host 是用户直接交互的那个界面。

2. MCP Client(客户端)

Host 内部用来和 Server 通信的模块。你通常不需要直接接触它,Host 会自动管理。

3. MCP Server(服务器)

这是关键。MCP Server 是一个轻量级程序,负责暴露某个外部工具或数据源的能力。

比如:

  • GitHub MCP Server:让 AI 能创建 Issue、读 PR、管理仓库
  • Postgres MCP Server:让 AI 能查询你的数据库
  • Filesystem MCP Server:让 AI 能读写你本地文件
  • Slack MCP Server:让 AI 能发消息、读频道历史
┌─────────────────────────────────────────┐
│  MCP Host (Claude Desktop)              │
│                                         │
│  ┌─────────┐  ┌─────────┐  ┌─────────┐ │
│  │ Client 1│  │ Client 2│  │ Client 3│ │
│  └────┬────┘  └────┬────┘  └────┬────┘ │
└───────┼────────────┼────────────┼───────┘
        │            │            │
        ▼            ▼            ▼
   ┌─────────┐ ┌─────────┐ ┌─────────┐
   │ GitHub  │ │Postgres │ │  Slack  │
   │ Server  │ │ Server  │ │ Server  │
   └─────────┘ └─────────┘ └─────────┘

三、MCP Server 能做什么

MCP Server 可以暴露三种能力:

Tools(工具)

最常用的。让 AI 能执行操作。

{
  "name": "create_issue",
  "description": "在 GitHub 仓库创建一个 Issue",
  "parameters": {
    "repo": "string",
    "title": "string",
    "body": "string"
  }
}

AI 看到这个 Tool 的描述后,就知道什么时候该调用它。比如你说 "帮我在 verysmallwoods 仓库创建一个 bug report",AI 就会自动调用 create_issue

Resources(资源)

让 AI 能读取数据。类似于 REST API 的 GET 请求。

比如一个文件系统 MCP Server 暴露的 Resource:

file:///Users/me/project/README.md

AI 可以读取这个资源来理解你的项目。

Prompts(提示模板)

预定义的对话模板,帮助用户更好地使用 Server 的能力。

比如一个数据库 MCP Server 可能提供:

"分析这张表的 schema 并给出优化建议"

四、为什么 MCP 重要

你可能会想:Function Calling 不是已经能让 AI 调用工具了吗?为什么还要搞个 MCP?

区别在于标准化

Function Calling 是每个 AI 平台自己定义的接口格式。OpenAI 有自己的格式,Anthropic 有自己的格式,Google 也有自己的。如果你写了一个 GitHub 工具给 OpenAI 用,换到 Claude 就得重写。

MCP 是跨平台的标准协议。一个 MCP Server,任何支持 MCP 的 Host 都能用。

而且 MCP 不只是"调用函数"——它定义了完整的交互模式,包括服务发现、能力协商、安全认证等。

类比一下

  • Function Calling = 你自己焊一根充电线(能用,但只能给特定设备充电)
  • MCP = USB-C 标准(任何设备、任何充电器,插上就能用)

五、5 分钟上手

想体验 MCP?最快的方式是在 Claude Desktop 里配置一个 MCP Server。

第一步:安装 Claude Desktop

从 claude.ai 下载安装。

第二步:配置 MCP Server

编辑配置文件 ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/你的用户名/Documents"
      ]
    }
  }
}

这就配好了一个文件系统 MCP Server,允许 Claude 读取你 Documents 文件夹里的文件。

第三步:重启 Claude Desktop

重启后,你会在对话界面看到一个工具图标,点开能看到 MCP Server 暴露的工具。

现在你可以说:"帮我读一下 Documents 里的 notes.txt",Claude 就真的能读了。

用 Claude Code?更简单

# 直接在项目目录用
claude mcp add github -- npx -y @modelcontextprotocol/server-github

# 查看已配置的 MCP Server
claude mcp list

六、值得关注的 MCP Server

目前社区已经有几百个 MCP Server 了,这里列几个最实用的:

MCP Server用途推荐度
filesystem读写本地文件★★★★★
githubGitHub 操作★★★★★
postgres / sqlite数据库查询★★★★
slackSlack 消息★★★★
playwright浏览器自动化★★★★
fetchHTTP 请求★★★
memory持久化记忆★★★

完整列表可以看:github.com/modelcontextprotocol/servers


总结

三句话概括 MCP:

  1. MCP 是 AI 连接外部世界的标准协议——像 USB-C 一样,统一了 AI 应用和工具之间的接口
  2. MCP Server 是工具的封装——写一个 Server,所有 AI 应用都能用
  3. 它改变了 AI 的能力边界——从"只能聊天"变成"能操作你的整个数字世界"

如果你是开发者,建议现在就开始用 MCP。不管是用现成的 Server,还是自己写一个——理解这个协议,对理解 AI Agent 的未来发展很有帮助。

MCP 官方文档:modelcontextprotocol.io

相关文章

合作伙伴

CompeteMap — 英国及爱尔兰学生竞赛一站式搜索

数学、编程、科学、写作等各类竞赛信息汇总,支持按年龄和科目筛选,再也不错过报名截止日。

准备开始了吗?

先简单说明目标,我会给出最合适的沟通方式。