在这里插入图片描述

MCP入门三部曲 · 第1篇

大家好,我是程序猿Joe。

今天想跟大家聊聊 MCP(Model Context Protocol,模型上下文协议)。

说实话,我之前也是让 Cursor 写写代码、改改文案,从来没想过它能直接操作我的电脑。直到前几天,我给它接了一个 MCP 文件系统服务器,结果你猜怎么着?它能直接读取我桌面上的文件、整理我的下载文件夹、甚至帮我写代码后自动保存到项目目录里!

而且整个过程,我不需要写一行集成代码,就像给手机插了个 USB-C 外设一样简单。

今天就把我研究 MCP 的经验,用最通俗的方式分享给大家。文章有点长,但全是干货,建议先收藏。


一、先搞懂:MCP 到底是啥?

很多人看到"模型上下文协议"这几个字就头大,感觉是什么高深莫测的学术概念。

其实用一个生活场景就能讲明白——智能家居。

1. MCP Host(主机)—— 智能音箱

你家里的小爱同学、天猫精灵,就是一个"主机"。你对着它说话,它理解你的意图,然后指挥各种设备干活。

在 AI 世界里,Cursor、VS Code、Windsurf 这些编辑器就是 MCP Host。它们负责跟用户对话,理解你想干什么。

2. MCP Server(服务器)—— 各种智能设备

你家里的智能灯泡、空调、窗帘、摄像头,这些都是"设备"。每个设备有自己的功能:灯泡能开关和调亮度,空调能调温度,摄像头能录像。

在 MCP 里,MCP Server 就是给 AI 提供能力的"设备"。比如文件系统服务器能让你操作电脑文件,数据库服务器能查数据,GitHub 服务器能管理代码。

3. MCP Client(客户端)—— 连接协议

智能音箱怎么知道怎么控制灯泡?靠的是蓝牙、WiFi、Zigbee 这些通信协议。每个设备都要先跟音箱"配对",告诉音箱:“我会什么功能”。

MCP Client 就是干这个的——它负责把 Host 和 Server 连接起来,让它们能互相通信。Host 问 Server:“你有啥本事?” Server 回答:“我能查天气、能读文件。” 然后 Host 就知道什么时候该调用谁了。

一句话总结:MCP 就是 AI 界的"万能插座",让不同的 AI 应用和外部工具能够即插即用,不需要每次都重新接一遍线。


二、为什么我们需要 MCP?

光说概念太抽象,直接对比一下有 MCP 和没 MCP 的区别,你就明白了。

没有 MCP 的时候(我以前就是这么干的)

假设你想让 Cursor 帮你查一下数据库里的用户数据,然后写个报告保存到桌面。

传统的做法是:

① 写一堆 API 调用代码 —— 先写 Python 脚本连数据库,把查询逻辑封装成 API。

② 再写文件操作代码 —— 再写一段代码把结果保存到本地文件。

③ 最后给 Cursor 接进去 —— 把这些功能封装成 Cursor 能调用的函数,配置权限,调试接口……

问题:每换一个 AI 工具(比如从 Cursor 换到其他 AI 编辑器),或者每加一个新功能(比如再连一个 Slack),你都要重新写一遍集成代码。十几个工具就是十几套接口,维护起来简直是噩梦。

有了 MCP 以后

现在你只需要:

① 装个 MCP 服务器 —— 比如装一个文件系统的 MCP 服务器,配置好它能访问哪些目录。

② AI 自动发现 —— Cursor 打开后就自动识别出:“哦,我现在能操作文件了。”

③ 直接对话使用 —— 你跟 Cursor 说:“帮我整理桌面的图片。” 它直接就能干。

优势:一次配置,到处使用。换个 AI 客户端(比如在不同项目间复用同一套 MCP 服务器配置),只要客户端支持 MCP,之前配好的服务器直接就能用,完全不用改。

维度传统方式MCP 方式
接入成本每个工具都要单独开发接口统一协议,即插即用
跨客户端换一个 AI 要重新集成服务器不变,客户端自动适配
功能发现硬编码在程序里AI 自动发现可用能力
维护成本N 个工具 × M 个客户端N 个工具 + M 个客户端

三、MCP 的三个核心"法宝"

很多人学 MCP,一上来就被工具、资源、提示词这些术语搞蒙了。

其实用智能家居的类比,特别好理解:

1. 工具(Tools)—— 设备的"操作按钮"

你家的空调遥控器上有各种按钮:开关、调温度、调风速。这些都是"工具"。

MCP 里的工具,就是 AI 可以调用的函数。比如文件系统服务器提供的工具可能有:读文件、写文件、创建目录、搜索文件。

关键点:工具是模型控制的。AI 自己判断什么时候该调用哪个工具,不需要你提前指定。当然,每次执行前都会征求你的同意。

划重点:工具让 AI 从"只能聊天"变成了"能干活"。它是 MCP 最核心的能力。

2. 资源(Resources)—— 设备的"状态显示屏"

你家的温湿度传感器,一直在显示当前温度和湿度。这就是"资源"——它提供的是信息,不是操作。

MCP 里的资源,就是 AI 可以读取的数据。比如当前文件夹里的文件列表、数据库的表结构、某个文档的内容。

关键点:资源是应用驱动的。什么时候读取、读取多少,由客户端(也就是 AI 应用)自己决定。

3. 提示词(Prompts)—— “场景模式”

你家的智能家居有个"回家模式":一按按钮,灯亮了、空调开了、窗帘拉上了。这就是预设好的"场景"。

MCP 里的提示词,就是 预设好的对话模板。比如"帮我分析这段代码"、“帮我写个周报”,这些模板里已经定义好了要调用哪些工具、按什么顺序来。

关键点:提示词是用户控制的。需要用户主动选择,不会自动触发。

概念类比控制者例子
工具(Tools)空调遥控器的按钮AI 模型读文件、查数据库
资源(Resources)温湿度显示屏应用程序文件列表、表结构
提示词(Prompts)智能家居场景模式用户代码审查模板

四、MCP 的架构长啥样?

知道概念还不够,了解架构才能理解 MCP 是怎么工作的。

MCP 的架构就两层,特别简洁:

数据层——“说啥”

数据层定义了客户端和服务器之间通信的"语言"。MCP 用的是 JSON-RPC 2.0,就是一种结构化的消息格式。

比如客户端问服务器:“你有啥工具?” 消息长这样:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list"
}

服务器回复:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "tools": [
      {
        "name": "read_file",
        "description": "读取文件内容",
        "inputSchema": { }
      }
    ]
  }
}

传输层——“咋传”

传输层负责消息怎么送过去。MCP 支持两种方式:

  • STDIO(标准输入输出):本地进程之间通信,速度快,适合本地服务器。比如 Cursor 启动一个本地的文件系统服务器。
  • Streamable HTTP:走网络通信,适合远程服务器。比如 Cursor 通过 remote server(HTTP/SSE)连接远程服务器。

记住一个原则:数据层规定"说什么",传输层规定"怎么传"。同一套数据层协议,可以跑在不同的传输层上。


五、常见误区(我踩过的坑)

误区1:MCP 是某个公司的私有技术

MCP 是 Anthropic 发起的,但它是完全开源的开放标准。就像 USB-C 不是苹果独有的一样,Cursor / Windsurf、VS Code 都在支持 MCP。

误区2:用了 MCP 就不需要写代码了

MCP 解决的是"AI 怎么连外部工具"的问题,不是"替代编程"。你要开发新功能,还是得写代码实现 MCP 服务器。但它让集成这件事变得简单了。

误区3:MCP 服务器可以随意访问我电脑的所有东西

完全不是。MCP 服务器只能访问你明确授权的目录和文件。每次执行敏感操作前,AI 都会弹窗问你"要不要执行"。权限完全由你控制。


六、总结

MCP 不是银弹,它只是一种连接方式——让 AI 和外部世界打通的方式。

传统的方式是"每个 AI 单独造轮子",MCP 的方式是"造一个万能插座,大家都往上插"。

让每块积木待在它该待的位置,不要让每个 AI 都重新发明接口!

下一篇,我会手把手教你:怎么给 Cursor 接上本地文件系统和远程数据库,不用写代码,5分钟搞定。


如果觉得这篇文章对你有帮助,欢迎点赞、在看、转发三连!有问题也可以在评论区留言,我会尽量回复。

关于作者:程序猿Joe,从CRUD程序员到架构师的蜕变者,专治各种"代码癌症"。不定期分享技术干货,欢迎关注。

更多推荐