封面

Tina Huang · 26:23 · 发布 2025-10-15 · 23.2万次观看(截至抓取) · 观看原视频

🔥 观众最高回放 03:41 — Tina 演示挑选 Alpha Vantage MCP server(实时/历史股票数据)、展示复制配置段落到 Claude Desktop 即可接入的「三步接入」最短路径,作为「用起来多简单」最直观的证据回看段。

主旨

26 分钟内讲清 MCP 是什么、用 USB 比喻解释为何需要它、拆解其 Host-Client-Server 三件套架构与 server 内三大构件(tools / resources / prompt templates)、讲清楚 client 与 server 之间的通信生命周期与三类 transport,最后各用一段实操(NA10 no-code + Claude Desktop code)演示如何自己构建一个 MCP server;主线是「MCP 是把 AI 接入工具与数据的开放标准协议,让任何 agent 像 USB 那样即插即用地接入一切」。

核心论点

  1. MCP 是把 AI 接入工具与数据的「开放 USB 标准」——一次性接入、跨应用复用——把 agent 接外部系统从「每接一个写一段代码」变成「照同一个协议即插即用」,这是过去 68 个月所有热门叙事背后真正的接口层变化。(→ 详解2)
  2. MCP 架构由 Host-Client-Server 三件套组成,client-server 是一一对应的连接——「谁想做 host」「谁提供 server」「谁负责连接」三件事分清楚,理解 MCP 任何动作的一半难题就解决了。(→ 详解3)
  3. 一个 MCP server 内能放三类东西:tools(可调函数)、resources(只读数据)、prompt templates(预设提示词)——三者覆盖「给 agent 干活、给 agent 看资料、给 agent 出题」的完整需求面,远不止 function-call 那一面。(→ 详解4)
  4. 通信生命周期分三阶段 + transport 分三类,streamable HTTP 是当下推荐——init/msg-exchange/terminate 三步走完一次交互,本地用 stdio、远程有过渡方案 HTTP+SSE(已 deprecated)与当前推荐 streamable HTTP(stateful + stateless 都支持)。(→ 详解5)
  5. 自己搭 MCP server 有 no-code 与 code 两条路——前者(NA10)快但只给 tools,后者(代码)给到 tools + resources + prompt templates 完整三件——理解这两条路的边界,就知道「我想做什么 agent」要付出多大搭建代价。(→ 详解6 / 详解7)

知识点详解

1. Intro & 视频概览 00:00

Tina 在 00:02 用一句玩笑开场:“I learned MCP for you.”——把过去 68 个月大家嘴边的 MCP hype 一句总结为对。她声明自己为团队和几家 B2B 客户搭过 MCP server/client,且把 MCP 内容编进了 AI Agents boot camp——所以这期既是科普也是她经验浓缩。

随后在 00:44 把视频结构切成两半:上半讲 MCP 是什么、为什么重要、怎么用;下半潜到协议层讲概念框架;最后用两段实操(no-code + code)演示如何自己搭一个 MCP server。中间嵌 4 个 quiz 题强制观众边看边答,这是 26 分钟信息密度的关键承重——你看一眼不答就错过概念核对。

视频在 00:41 声明 Bolt 是 sponsor(影响见「立场与利益」节),Tina 用一段口播做了 Bolt 推广,但赞助段独立于 MCP 主线之外,不影响教程内容。

2. MCP Definition:用 USB 比喻理解 MCP 01:06

Anthropic 官方定义在 01:08 给出:“MCP, which is the abbreviation of model context protocol, is defined by Anthropic”——关键词是「open protocol + standardize + how LM applications connect to tools and data sources」,即「一个标准接口协议」。

Tina 觉得这个定义太抽象,直接用 USB 比喻翻译:01:27 “MCP is like this USB plug here. It allows any device to be able to connect to any other devices to be able to work together.”——USB 之前每个设备有各自的接口与配线、想互联得写专门适配代码;USB 把接口形状钉死之后,所有设备即插即用。MCP 对 LLM 应用做的事跟 USB 对外设做的事是同一个事:把接口标准化。

为了把这层「历史重复感」点透,她在 01:38 强调:“Prior to this universal standard of the USB port, if you wanted to connect things to each other”——类比到 MCP 之前:每个外部系统都有自己的 API 与权限模型,做调度 agent 的人想接日历、邮件、笔记、Zoom、Calendly,每接一个都要为那个特定工具单独写胶水代码,工作量随接入数量线性甚至超线性上涨

然后她在 02:16 给出问题升级版:“if you have your agent and you wanted to give it access to different tools”——MCP 出现的「叙事支持」是这种重复造轮子的痛苦真的广泛存在。

有了 MCP 之后的故事在 03:10 给出:03:10 “Now there’s over 20,000 pre-built MCP servers that you can just grab and give your AI agent”——几个月内 MCP 可用 server 数从无到两万+,任何人都能轻易写、发布、复用。这是 MCP 真正成为「生态系统级别协议」的量化证据,而不仅仅是单点协议。

3. Fundamentals of MCP:Host-Client-Server 三件套 04:38

定义不够,接下来 Tina 直接进入协议骨架。核心是三件套缩写 HCS——在 06:11 给出:06:11 “host client and server, HCS for short. And the way that they relate to each other is the host houses the MCP client, which goes through the MCP protocol in order to have access to the MCP server.”

三件分工:

  • Host(宿主)——想用 MCP 拿数据/工具的 LLM 应用。Claude Desktop、n10、Cursor、IDEs、定制 agent 应用——任何 LLM 应用形态都可以是 host(05:46 起)。
  • MCP Client——住在 host 内部、负责按 MCP 协议连 server,一对一维持连接。
  • MCP Server——轻量级程序,把特定能力(Alpha Vantage 股票数据、Time 时区转换、Postgres SQL 只读、GitLab 等)按 MCP 协议暴露出来供调用。

Tina 给出一组具体示例让”server 长什么样”具象化:Time(time zone)、Alpha Vantage(stock data)、Cherry Studio(LM provider/assistants)、Postgres(只读 SQL)、GitLab、Reddit 等都已经是现成 MCP server。

两件互逆的复利:同一家 MCP server(如 Google Drive)可以被多种 host 复用——MCP 兼容的 AI assistant、AI agent、IDE 都可接;反之,每个 MCP 兼容 host 可以接各种 server,数据/CRM/版本控制 plug-and-play。这两个方向同时成立,是 MCP「生态级标准」的最直接体现(05:23 前后图表)。

最后 Tina 在 07:25 收束一语定锚:07:25 “MCP client lives in MCP host to invoke the MCP protocol in order to have access to the MCP servers”——client 住在 host 内,通过 MCP 协议去拿 server 的能力,三者各司其职。

4. Tools / Resources / Prompt Templates:一个 MCP server 能装的三类东西 07:54

很多科普把 MCP 简化为「给 agent 接工具」,但 Tina 强调 一个 server 实际能装三类东西,这是了解 server 的关键。

Tools(可调函数)——“three major things. These are tools, resources, and prompt templates”(07:54)。这是大家最熟悉的:client 可主动调用的函数。比如 Alpha Vantage 暴露的时间序列/日内序列/股票搜索/报价查询、Gmail 发送邮件、Calculator 计算、数据库查/写/删。

Resources(server 暴露的只读数据)——08:25 “resources which are readonly data that is exposed by the server. So this is the data that the client is able to query but cannot change.”——client 能读但不能改。典型例子:server 上保存的 markdown 笔记、记录天气 API 历史调用的日志、合同/会议记录/笔记等数据库存档。为什么需要 resources:有些数据反复出现,每次都让 agent 调一次 tool 才能拿,既浪费又可能被流速/调用次数卡住;放在 resource 里就支持反复查询。

Prompt Templates(结构化提示词蓝图)——09:09 “prompt templates. These are structured prompt blueprints so that you don’t have to force your user to have to come up with their own prompts.”——把 prompt 工程负担从用户转移到 server 作者。用户只需填变量,完整提示词由 server 内置。她用”总结会议记录→生成报告”的场景示范:用户随手写”总结成 key action items 再生成报告”效果差,server 内嵌完整模板后用户只需填几个变量就拿到更稳的结果。

这三件也可以同时存在。Tina 的完整例子是 SQLite MCP server:tools 是 read/insert/update/delete SQL 数据;resource 是数据库变更日志;prompt templates 是访问该数据库的最佳实践 prompt——同一个 server 三类齐全时覆盖最大需求面。

5. Communication Life Cycle & Transport:连接怎么握手、消息怎么走 12:18

最后一条核心概念(连接与通信),Tina 把它切到 12:14:“the final concept that I want to cover for MCP before diving into actually building them is the communication life cycle”——分两段,先生命周期,再 transport。

生命周期三阶段——12:23 “first step is the initialization”——client 发起「我想要你给我东西」、server 认可并建立连接;接下来是消息交换,client 请求调某个工具、server 返回结果;最后是 termination,client/server 拆开停止交互。这是抽象到任何 MCP 连接都成立的三段式。

Transport 是消息怎么走——12:54 “messages are done is called a transport. The transport handles the underlying mechanics of how messages are sent and received between the client and the server.”——分两类情境。

本地(server 与 host 同一台机器)——用 stdio(standard output),client/server 在同一台机内传纸条过日子,不需任何中间件。

远程(server 在云上另一台)——两个方案:

  • HTTP + SSE(Server-Sent Events):维护有状态连接。她用「正式餐厅」比喻:坐下来点单,侍者记得你之前点了什么,想再来一杯只需说”再来一杯同样的”,无需重新报全部;server 持续维持这次会话的状态。
  • Streamable HTTP:无状态(类 McDonald’s),每次点单独立。但她在 15:17 给出关键判断:15:17 “streamable HTTP is the preferred transport method because it’s able to support both stateful and stateless”——既能跑有状态也能跑无状态,是当下推荐;HTTP+SSE 在 NA10 当时已被标记为 deprecated(见详解6)。

6. Building MCP Server (No-code):用 NA10 拼一个 Gmail MCP server 15:47

Tina 用 NA10 演示如何无代码搭一个 MCP server,只暴露 tools(calculator + Gmail 发送邮件)。

核心步骤:① 新建一个 workflow 当 MCP server;② 添加 tools(calculator + Gmail 各占一个节点);③ 设置 Gmail 凭证并把操作设为”send”,让模型自行决定 to/subject/message;④ 激活 server 并复制 production URL(= 公开 endpoint)。全流程无需写一行代码。

消费侧测试(在 NA10 内建一个 AI agent workflow):① 加 MCP client 节点,把刚才 server 的 endpoint 粘进去;② transport 选 “HTTP streamable”(老 SSE 已被 NA10 标 deprecated);③ 让用户问”calculate 11 * 99”——agent 自动路由到 calculator tool 拿到 1089 并返回;再问”send an email to Tina@lonelyoctopus.com asking her to grab coffee”——agent 用 Gmail tool 自动起草并发送。

同一 server 给不同 host 复用——把 Claude Desktop 切到 developer mode → 打开 claude_desktop_config.json → 把同一段 MCP server 配置粘进去并重启 Claude → 现在 Claude Desktop 的 tool 列表里也出现 “send a message in Gmail” 与 calculator。两次操作完全不重写 server,只换 host,这是 MCP 真正的胜利。

No-code 的边界——Tina 在 20:57 直接说:20:57 “you as of right now cannot do that using NAT. You can’t actually put in the prompt templates and specify those and you also can’t put in additional resources as well.”——NA10(no-code)目前只能暴露 tools,无法加 resources 和 prompt templates,这是为何接下来要演示 code 版。

7. Building MCP Server (Code):Claude Desktop + Sheets/Forms 完整三件 20:42

Code demo 演示的是一个完整暴露 tools + resources + prompt templates 三件的 MCP server,以 Google Sheets / Google Forms 为目标。

Tools 演示:让 Claude Desktop 列出可用 spreadsheet(21:42 “list out the spreadsheets that are available”),agent 调 list_spreadsheets tool 拿到 20 个 spreadsheet 名;用户再要求读某 sheet 的列结构。

Resources 演示:在读 sheet 时,read_sheet 实际上 是 resource 而非 tool22:22 “read sheet and this is actually a resource. So it allows you it’s a readonly file where you can actually read what the column names are.”——把数据挂成 resource,让 Claude 可以”读文件”式访问,而非每次都触发改数据的 tool,职责更清。

Prompt Templates 演示:22:43 “add from sheets, here are some of the prompt templates”——挑 “analyze sheet data” 模板,填入 spreadsheet 名字(匿名 feedback 表)并要求”生成 dashboard”。Prompt template 内部已写好”列数据 → 分类 → 出 dashboard”的完整工作流;agent 不需要用户重新提示,就能跑完分析并生成可视化仪表盘。

代码侧的最小骨架:用装饰器(@mcp.tool / @mcp.resource / @mcp.prompt)把函数标记成不同类型——三件共用同一份 server 文件但类型不同,注册后即被 host 识别。这是[MCP server]从「能跑」到「专业」的关键一行。

最终 host 同样可换——同一个 code MCP server 可以让 Claude Desktop、NA10、任何自建 LLM 应用接。这部分与[详解6]的 NA10 server 是同一逻辑:server 一次写好,host 随意切。

可执行步骤

  • 从 MCP server 目录(如 mcp.so、Anthropic 官方列表)挑一个能力相关的 server(邮件/GitHub/数据库/日历),按 server README 提供的配置段落到目标 host(Claude Desktop / NA10 / Cursor 等),验证至少一个 tool 能调用。
  • 列出你日常反复调用的外部系统(本机文件夹、Notion、Slack、数据库),排序哪些值得包成 MCP server,先挑内部高频的 1-2 个。
  • 先用 NA10(或类似 no-code 工作流工具)搭一个只暴露 tools 的 MCP server(选择你能授权的 API,如 Gmail),把”模型自动决定 to/subject/message”这种灵活字段留给 LLM。
  • 把同一个 server 用 HTTP streamable transport(不用 SSE)接到至少两个不同 host(例如 Claude Desktop + NA10 内置 agent),验证”server 一次搭建、多 host 复用”是否真成立。
  • 如果需要暴露 resources(只读日志)或 prompt templates(总结/报告的标准化提示词),那就得用 code 路径而不是 no-code——评估投入产出比是否仍然值得。
  • 在配置侧永远用 HTTP streamable transport(除非某个老旧 server 还停留在 SSE),保持与生态当前推荐一致。

关联

  • Agentic课·导论:本片给出 MCP 的 USB 比喻与三件套(HCS)的速通版定义;该课 [19-MCP 章](MxyRjL7NG18-Agentic 工作流课/19-MCP与输入上下文窗口)更深:从上下文窗口容量、信息密度、Compaction 等角度解释为什么「工具与上下文必须被标准化」——先读本片拿直觉,再读那章拿深度
  • MCP:本片是 MCP 在「日常科普 + 26 分钟上手」的体例切面,与已有 [MxyRjL7NG18-Agentic 工作流课/01-导论|Agentic课·导论] 中的抽象定义互补;本片独有的是 HCS 三件套的明示拆分、TRP(tool / resource / prompt)三类的实操演示、与 NA10 + Claude Desktop 两条搭建路径的并列展示
  • 用n8n MCP为工作流生成前端界面:两条路都是「让 agent 拿现成工具作为 context」,但本片演示通用工具型 MCP server(n10 + Gmail/计算器),那篇走 n8n workflow 当 MCP server(让 agent 取细节当工作流接口)——互补:覆盖范围不同但同构 MCP 取用模型

一手来源与延伸

  • Anthropic MCP Course (DeepLearning.AI 联合出品):Tina 在视频里明确说这是她见过讲 MCP 基础最好的课,内容结构覆盖 define → framework → build,适合作为本片的延伸课堂。
  • Tina 自家 MCP demo 代码:用于 20:42 起的 code demo,展示 Google Sheets / Forms MCP server 的完整 tools + resources + prompt templates 三件套实现;自带 README 与运行说明。
  • Network Chuck 的 Docker MCP 教学:Tina 引用为另一条推荐路径——用 Docker 跑 MCP,适合想把整个 server 容器化部署的人(本片 26 分钟未涉及)。
  • Anthropic 官方对 MCP 的定义本视频口播整段照录(已嵌入详解 2 引文)。

术语

  • MCP(Model Context Protocol):Anthropic 发起的开放协议,把 LLM 应用接入工具/数据的方式钉成同一标准,被本视频比喻为”AI 时代的 USB”。
  • MCP Host:在 MCP 架构中承载 MCP client、想通过协议访问工具/数据的 LLM 应用外壳(Claude Desktop、NA10、IDE 等)。
  • MCP Client:住在 host 内、负责按 MCP 协议一对一连接 server 的内部组件(本片写作 client-server 必须一一对应)。
  • MCP server:轻量级程序,按 MCP 协议暴露特定能力(Alpha Vantage 股票数据、Postgres 只读、Gmail 发送等)供 host 调用。
  • Host-Client-Server (HCS):MCP 三件套架构缩写。
  • MCP Tools:server 暴露的、可被 client 调用的函数(发邮件/算数学/读 sheet)。
  • MCP Resources:server 暴露的只读数据(client 可查不能改,常用于日志/存档型数据)。
  • MCP Prompt Templates:server 内置的结构化提示词模板,把 prompt 工程负担从用户转嫁给 server 作者。
  • MCP Transport:client 与 server 之间收发消息的底层机制,本地用 stdio,远程有 HTTP+SSE(streamable HTTP 推荐前的过渡方案)与 streamable HTTP(stateful + stateless 都支持)。
  • Stateful vs Stateless connection:stateful 是 server 维护整段会话的状态与记忆(餐厅侍者比喻);stateless 是每次请求独立、server 不记过去(快餐店比喻)。
  • HTTP+SSE:早期 MCP 远程 transport,server 通过 server-sent events 单向维护有状态连接,在 20:42 起实操中被 NA10 标记 deprecated。
  • Streamable HTTP:当前 MCP 推荐的远程 transport,同时支持 stateful 与 stateless;在 NA10 UI 中直接替代 SSE 选项。

金句

“MCP is like this USB plug here. It allows any device to be able to connect to any other devices to be able to work together.”(01:27) — 全片最浓缩的一句比喻,把抽象的协议定义翻译成大众都熟的「USB 标准化前夜」故事;读者此后想到 MCP 会立刻回到这个画面。

“host client and server, HCS for short. And the way that they relate to each other is the host houses the MCP client, which goes through the MCP protocol in order to have access to the MCP server.”(06:11) — HCS 三件套分工的最精炼描述;任何 MCP 故障排查都可以回到这句问”哪个角色没干该干的事”。

“the way that the messages are done is called a transport. The transport handles the underlying mechanics of how messages are sent and received between the client and the server.”(12:54) — 给「连接怎么发生」一个统一名字;从此看到 stdio/SSE/streamable HTTP 都有归属。

立场与利益

  • 与利益同向(待印证):no-code 实操段(Tina 用 NA10 演示搭建)和 code 实操段开头对 NA10/Claude Desktop 的反复选型,本身有”工具示范”色彩——但她对 NA10 局限(no-code 不能加 resources/prompt templates)做了显式标注(20:57),并且指向了另一种做法(代码 + Anthropic 官方课)作为对照,因此这部分只算”轻度引导”而非隐瞒式推销。
  • 利益中性:MCP 定义、USB 比喻、HCS 三件套、TRP(tools/resources/prompt templates)三类、生命周期与 transport 选择——这些是协议层的通用知识,与博主变现无直接挂钩,且她反复指向 Anthropic + DeepLearning.AI 官方课程作为权威来源,按内容本身采信即可
  • 与利益反向(可信度最高):她在 20:57 主动声明 NA10 无法暴露 prompt templates 和 resources——这是直接承认她正示范的工具的能力短板,引导观众去 code 路径或选别的方案——这种承认工具限制的做法与典型卖课话术正相反,这一节主张(NA10 不是万能工具,需要时切换 code)采信折扣最低

利益证据(取自 description):视频开始声明 Bolt 是 sponsor(独立推广段),其余链接包括 AI Agent Bootcamp 候补名单(自家产品)、Anthropic 官方课程(Tina 推荐)、MCP GitHub demo(自家仓库)、Network Chuck 视频(同领域他人)、以及 365 Data Science / StrataScratch 的 affiliate。Bolt 赞助段与 MCP 主线独立,不影响教程准确性。

价值定位

对目标学习者的价值:

  • 适合谁:已经被”MCP 名词刷屏但说不清它到底做了什么”的从业者——听过 MCP,想用一次搞清楚它的协议骨架与上手路径;或者已经在用某 MCP server 但不知道背后的 client-server 架构与 transport 区分。
  • 解决什么:给你 MCP 的完整心智模型:USB 比喻(为什么需要)、HCS 三件套(谁是谁)、TRP 三类(能装什么)、init/msg-exchange/terminate + transport(怎么连起来)、no-code vs code 两条路(怎么搭起来)。这一整套词 26 分钟内齐全。
  • 认知 vs 实操:认知为主,实操为辅——视频后半段的两段 demo 是”看着搭一遍”,不是”教你搭”;真要复现要回到 description 给的 GitHub/DeepLearning.AI 课程。
  • MCP 概念首见笔记 [MxyRjL7NG18-Agentic 工作流课/01-导论|Agentic课·导论] 的关系:重叠(都讲 MCP 是什么 + 怎么用),但本片独有——(1)HCS 三件套架构的简明拆解与关系图;(2)TRP 三类组件(tool/resource/prompt template)的完整展示与 code 演示;(3)NA10 no-code vs code 两条搭建路径的并列比较;(4)transport 的 stdin/HTTP+SSE/streamable HTTP 三档分类与对 SSE 已 deprecated 的说明。

自检问题

  1. MCP 的 USB 比喻里,“pre-USB port days”对应的 MCP 时代痛点是什么? 答案:每个外部系统各自有 API/权限模型,做调度 agent 想多接一个工具就得为它专门写胶水代码,接入数量与开发量超线性上涨。锚定笔记「MCP Definition」段。 02:16
  2. HCS 三件套各自负责什么?client 与 server 的连接关系是几对几? 答案:Host = 想用 MCP 拿数据/工具的 LLM 应用外壳;MCP Client = 住在 host 内、维持到 server 连接的内部组件;MCP Server = 按 MCP 协议暴露能力的轻量程序。Client 与 server 是一一对应连接。锚定笔记「Fundamentals of MCP」段。 07:25
  3. 一个 MCP server 内能装的三类东西是什么?NA10 no-code 路径能装哪几类? 答案:Tools(可调函数)、Resources(只读数据)、Prompt Templates(预设提示词蓝图)。NA10 no-code 路径目前只能装 tools,不能装 resources 和 prompt templates。锚定笔记「Tools/Resources/Prompt Templates」+「Building (No-code)」段。 20:57
  4. MCP client-server 通信生命周期分几个阶段?当前推荐的远程 transport 是什么? 答案:三阶段——initialization、message exchange、termination。当前推荐远程 transport 是 streamable HTTP(同时支持有状态与无状态);HTTP+SSE 已被 NA10 实操演示时标记 deprecated。锚定笔记「Communication Life Cycle」段。 15:17