背景:

MCP 这个概念大概是 2025 年上半年火起来的,每天都活跃在我所浏览的一些文章及评论区中。突然发现我对它仅有粗略的理解,我决定深入学习并记录一下。

一、什么是 MCP?

1.1 🤔 开始之前的思考

在深入了解 MCP 之前,让我们先思考几个问题:

  • 🔍 你有没有试过让 ChatGPT 帮你查询数据库?
  • 🛠️ 你有没有想过让 AI助手帮你操作 Excel 文件?
  • 🌐 你有没有希望 AI 能够调用你公司内部的 API?

如果答案是 “有”,那么你很可能遇到了这样的困扰:AI模型很聪明,但它无法直接操作外部工具

1.2 MCP 的定义

MCP(Model Context Protocol),即 “模型上下文协议”,是一个开放、标准化的协议,由 Claude 的母公司 Anthropic 于 2024 年底开元发布的。简单来说,MCP 就是 AI 大模型的标准化工具箱,大模型可以利用这些工具与外界互动、获取信息并且完成具体任务(就像 USB-C 让不同设备能够通过相同的接口连接一样)。MCP 的目标是创建一个通用标准,使 AI 应用程序的开发和集成变得更加简单和统一。

从上图可以看出,MCP 就是以更标准的方式让 LLM Chat 使用不同工具。

1.3 MCP 结构

MCP 由三个核心组件构成:HostClientServer。让我们通过一个实际场景来理解这些组件如何协同工作:

  1. Host:Claude Desktop 作为 Host,负责接收你的提问并与 Claude 模型交互。
  2. Client:当 Claude 模型决定需要访问你的文件系统时,Host 中内置的 MCP Client 会被激活。这个 Client 负责与适当的 MCP Server 建立连接。
  3. Server:在这个例子中,文件系统 MCP Server 会被调用。它负责执行实际的文件扫描操作,作为你的桌面目录,并返回找到的文档列表。

整个流程是这样的:

这种架构设计使得 Claude 可以在不同场景下灵活调用各种工具和资源,而开发者只需专注于开发对应的 MCP Server,无需关心 Host 和 Client 的实现细节。


二、MCP 的使用

下面我们通过一个简单的例子来深入了解 MCP。

2.1 uv 的安装

uv 是一款高性能的 Python 包管理工具,可以提供比传统 pip 更快的包安装和依赖管理体验。

在使用 MCP 之前,我们需要先安装 uv ,大家可以使用如下命令检查电脑上是否安装了:

uv --version
  • 如果提示 uv 命令不存在,则需要安装。
  • 如果出现了 uv 的版本号,则说明已安装,如下所示:

如果未安装 uv,我们可以使用如下命令进行安装:

# Linux/macOS
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

确保 uv 安装完毕之后,我们需要使用如下命令创建虚拟空间:

# 创建虚拟环境并激活
uv venv

虚拟空间创建完毕之后,就可以去 MCP 广场挑选我们需要的 MCP 工具了。

2.2 MCP 广场

跟大家推荐两个常用的 MCP 广场:

这里我们使用 ModelScope MCP 广场,在搜索框中输入 mysql 搜索,点击下面搜索到的 MySQL MCP 服务器,如下图所示:

2.3 MCP 的配置

其实 MCP 配置采用的是 键值对 模式,其中:

  • key插件名称
  • value 是插件的 执行命令参数个性化配置 等。

在 MCP 广场的插件详情页面,我们可以在右侧看到在 uv 下的配置文件,如下图所示:

页面中的 mcpServers 就是我们的大模型配置对象,对象下面的各个属性就代表了不同的插件。所以我们需要的部分为 mcpServers 对象下的 mysql 对象部分,这部分才是插件的内容。

2.4 MCP 的依赖安装

很多新手接触 MCP 的一大误区在于认为在 JSON 文件里面配置好了 MCP 之后,大模型就会自动下载 MCP 的依赖包(就像我们 IDE 里面的插件一样),其实并不是!!

我们需要手动安装 MCP 的依赖包,一般安装方法会直接在 MCP 服务器的详情页面说明,如下所示:

如果电脑上没有 pip 命令,我们可以在前面使用 uv,如下所示:

uv pip install mysql-mcp-server

安装之后,需要再根据具体 MCP 服务器的需要进行相关环境变量的配置。(如果我们已经在 MCP 配置里面指定了具体的变量值,就不需要环境变量了,如下图所示)

2.5 Charry Studio

这里我们以 Charry Studio 为例,具体说明 MCP 的使用。Charry Studio 是目前市面上最流行的 大模型 工具,免费开源,内部还可以集成各种 MCP 和大模型 API,推荐大家用一下,具体下载地址如下:

下载安装完 Charry Studio 之后,我们打开页面,在点击右上角的设置:

我们点击 +添加服务器

选择 从 JSON 导入

将如下内容,复制粘贴到框内,点击确定即可。

(具体的 mysql_mcp_server 安装路径和数据库信息需要根据个人情况修改。)

{
  "mcpServers": {
    "mysql": {
      "args": [
        "--directory",
        "/Users/acgkaka/.venv/bin",
        "run",
        "mysql_mcp_server"
      ],
      "command": "uv",
      "env": {
        "MYSQL_HOST": "localhost",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "root",
        "MYSQL_PASSWORD": "12345678",
        "MYSQL_DATABASE": "my_db"
      }
    }
  }
}

可以看到我们的 MCP 服务器已经添加成功了,我们可以点击右上角的开关进行打开。

(打开时会检测 MySQL 数据库的连接信息,如果连接失败会无法打开)

打开成功之后,如下所示:

2.6 测试结果

做好以上步骤之后,我们就可以在大模型里面使用了。

我们先在 Charry Studio 中配置好自己的大模型 API Key,例如我这里使用的是 DeepSeek,点击 点击这里获取密钥,会自动打开 DeepSeek 的页面。

由于 Deep Seek API Key 只有在第一次创建的时候才能看到,我们这里可以先创建一个。

创建好之后,将 API Key 复制到 Charry Studio 中就可以正常使用了。

例如我们让 DeepSeek 帮我们查询一下 数据库中表的数据,大模型会自动调用 MCP 服务器去查询数据库,生成相应的 SQL,然后执行之后得到数量为 174 的结果。

到这里你已经学会如何使用 MCP 了,赶紧去 MCP 广场看看有没有可以解决你痛点的 MCP 工具吧~

整理完毕,完结撒花~🌻





参考地址:

1.MCP (Model Context Protocol),一篇就够了。https://zhuanlan.zhihu.com/p/29001189476

2.模型上下文协议——MCP,https://mcp.meetcoding.cn/

3.MCP是啥?技术原理是什么?一个视频搞懂MCP的一切。Windows系统配置MCP,Cursor Cline使用MCP,https://www.bilibili.com/video/BV1AnQNYxEsy/

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐