SHAO Zelian

人而无信,不知其可也 | 学不可以已

MCP (Model Context Protocol)

随着AI技术的快速发展,越来越多的名词铺天盖地地涌现出来,让我这个IT老兵一时无法适从。由于年龄和国内环境的原因,我从一个土生土长的程序员被推到了技术管理岗位,自然也多年没有接触太多代码工作了。对于AI也是观望而已,最多也是使用公司的AI工具做一些简单的办公效率提升的事情,比如搜索、翻译、帮助写一下PPT之类的基本工作,并没有深入研究,也甚至产生了躺平的念头。

2005年春节放假回来,突然国内被DeepSeek的事情搅动起来,公司在各级管理层会议上非AI不讨论的地步,讲什么都尽可能跟AI沾点边。突然我也有了危机感,平时瞧不上的某些人也张嘴闭嘴Promopt, ChatGPT,LLM之类的夸夸其谈了,顿时让我也感到了危机,深感如果不了解AI可能会很快被淘汰。所以也平时刻意去了解一些AI的知识。

MCP是最近听说最多的新名词之一,在油管上看了一个简短的视频觉得很有启发意义,特别是对于我这种AI小白的人来说,言简意赅,所以就总结了其中的精华,作者以一个示例图阐述了整个交互过程,在此分享。

MCP是为AI模型推理提供标准化的上下文交信息互协议。我们大致可以用电脑和显示器的连接方式来做类比解释。

下面的流程图就阐述了整个交互过程。(备注:Cline是Code Agent工具, MCP Server - 以weather服务为例)

---
Title: MCP交互示意图 
--- 
%%{init: {"theme": "default","logLevel": "info", "htmlLabels": true, "curve": "natural, "fontSize": 12 }}%%
sequenceDiagram
    actor User
    participant MCP Server
    participant Cline
    participant Model

    critical 在Cline中首次注册MCP Server过程
    Cline->>MCP Server: 启动MCP Server
    Cline->>MCP Server: Hi, this is Cline.
    MCP Server->>Cline: Hi, this is Weather.
    Cline->>MCP Server: 你都有什么工具?
    MCP Server->>Cline: 我有get-forecast和get-alerts工具
    end

    User->>Cline: 纽约明天天气如何?
    Cline->>Model: 纽约明天天气如何?我还有一些工具,分别是...
    Model->>Cline: 你可以调用get-forecast工具,参数是...
    Cline->>MCP Server: 我要调用get-forecast工具,参数是...
    MCP Server->>Cline: 调用完毕,结果是...
    Cline->>Model: 调用完毕,结果是...
    Model->>Cline: 纽约明天的天气是这样的...
    Cline->>User: 纽约明天的天气是这样的...