5分钟快速入门MCP

512 阅读5分钟

Why MCP?

MCP全称模型上下⽂协议(Model Context Protocol),由Anthropic于24年底开源发布:www.anthropic.com/news/model-…

使用MCP协议开发AI大模型的标准化工具箱,就好比多啦A梦的口袋,⼤模型可以利⽤这些⼯具与外界互动,获取信息并且完成任务。

image.png

为什么MCP火了起来?这就要看MCP能解决什么问题,在MCP出现之前我们使用AI的现状是什么?

⼤模型(LLM)再强,也总有不知道的东⻄,怎么办?让它“查资料”“调⼯具”成了近两年最热的技术⽅向。

从最早的 RAG(Retrieval-Augmented Generation),到 OpenAI 引领的 Function Call,再到现在 Anthropic 抛出的 MCP(Model Context Protocol),每⼀代⽅案都在试图解答⼀个问题:模型如何以更⾃然的⽅式获得外部世界的帮助(与外部世界交互)?

1. 第一阶段:复制粘贴代码/文档等上下文内容到AI客户端会话窗口

想想在chatgpt刚出来的时候,我们大多数人的用法是不是会把一些需要用到的上下文内容,比如代码/文档复制粘贴到AI对话窗口,最后把AI返回的结果复制粘贴回自己的代码编辑器/文档里面,这样反复来回调试几次

graph TB
    G1[AI客户端1] <--> D[用户]
    G2[AI客户端2] <--> D
    G3[AI客户端3] <--> D
    D --> B[浏览器]
    D --> C[文件系统]
    D --> E[数据库]
    D --> F[代码]

    style B fill:#f0f0ff,stroke:#9999ff
    style C fill:#f0f0ff,stroke:#9999ff
    style D fill:#f0f0ff,stroke:#9999ff
    style E fill:#f0f0ff,stroke:#9999ff
    style F fill:#f0f0ff,stroke:#9999ff
    style G1 fill:#f0f0ff,stroke:#9999ff
    style G2 fill:#f0f0ff,stroke:#9999ff
    style G3 fill:#f0f0ff,stroke:#9999ff

2. 第二阶段:AI客户端去开发各种工具并使用Function Call调用

由于复制粘贴太麻烦了,这些AI客户端开始就想办法,不需要用户自己去复制粘贴上下文内容,而是AI客户端使用function call来进行调用各种工具

image.png

3. 第三阶段:AI客户端遵循mcp协议开发工具,共享工具库

由于不同的AI客户端在调用工具时,同一种的工具每次都需要重新开发一遍,不同的AI客户端无法共享其他家已经开发好的工具,这个时候大家发现了cursor里面使用的mcp协议,完美地解决了这个问题

使用mcp统一协议之后,大家可以共建一套工具库,然后AI客户端使用这个mcp标准协议,就可以共享这些工具库来进行调用了

image.png

了解了MCP出现的前因后果,接下来我们再来详细看看什么是MCP

What MCP?

官方定义:modelcontextprotocol.io/introductio…

MCP is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications. Just as USB-C provides a standardized way to connect your devices to various peripherals and accessories, MCP provides a standardized way to connect AI models to different data sources and tools.

可以看到官方的定义中将MCP比喻成USB接口,使用如下的一张图可以更加形象地表示:

图中MCP就好比USB接口,可以外接各种MCP Server包括远程服务和本地数据源服务,这些MCP Server就好比Type-C线,可以接入到这个USB接口。 MCP Client客户端就可以调用这些MCP Server,到这里你就对MCP有一个大致形象化的了解了。

至于图中的MCP Host以及MCP Host跟MCP Client是什么关系?我们可以继续往下看。

Noah-MCP-1024x576.png

MCP Quickstart

实践是检验真理的唯一标准,让我们来快速体验一下MCP

推荐使用 Cherry Studio来快速接入MCP Server,这个软件免费可用,调试体验非常方便

1、官网下载Cherry Studio

www.cherry-ai.com/download

2、配置模型API Key

打开Cherry Studio,配置模型的API密钥,我这里配置的是 深度求索提供商 的模型,你也可以配置其他家的比如说火山引擎,火山引擎之前有免费的额度也可以使用

配置完API密钥之后,点击开启,深度求索右侧会显示【ON】

image.png

3、使用内置的MCP Server

刚开始快速入门,可以先使用Cherry Studio里面自带的MCP Server

点击【MCP服务器】-> 【搜索MCP】

image.png

比如添加一个对爬取网页内容的fetch mcp server,这个是Cherry Studio自带的,点击【+】添加

image.png

添加完成之后,点击【返回】到MCP服务器列表中,可以看到刚添加的mcp server,然后查看这个mcp server的详情

image.png

查看 fetch mcp server 可以使用的工具列表

image.png

在聊天助手对话框选择fetch mcp server

image.png

使用文章开头提到的mcp新闻网页快速测试:

请使用中文总结这篇新闻:https://www.anthropic.com/news/model-context-protocol

image.png

我们再详细看一下调用的mcp server 工具:fetch_txt,可以正常爬取到新闻内容,成功调用

image.png

到这里,我们已经快速体验了mcp server的使用

接下来,我们尝试使用社区的mcp server

4、使用社区的mcp server

推荐几个mcp market市场:

github.com/modelcontex…

mcp.so/

www.modelscope.cn/mcp

这里我们还是使用fetch mcp server:github.com/modelcontex…

查看它的配置方法:

image.png

这里电脑安装一下uvx

pip install uvx

删掉之前添加的内置fetch mcp server

image.png

点击【添加服务器】添加一个空白的MCP服务器

image.png

点击进入这个MCP服务器,更新名称、添加描述,将command填入命令栏,将args填入参数栏,注意每个参数占一行,这里只有一个参数直接添加就行,然后这里选择国内的包管理源,点击【保存】,保存成功后自动会开启此MCP Server

image.png

使用社区版本的fetch mcp server

image.png

请使用中文总结这篇新闻:https://www.anthropic.com/news/model-context-protocol

可以成功调用社区版本的mcp server fetch工具

image.png

到这里你已经基本学会如何使用mcp server了,纸上得来终觉浅,赶紧下载Cherry Studio快速体验一下吧

下篇文章会带领大家编写一个简单的MCP Server,最后再来讲讲MCP原理,这样大家就可以从浅入深逐步了解MCP Server啦 :)


欢迎关注我的微信公众号:[佛喜酱的AI实践],分享AI实战经验,一起探索AI的可能性:)