MCP协议让AI不再“与世隔绝”

什么是MCP? MCP(Model Context Protocol,模型上下文协议)是由 Anthropic 公司于 2024 年 11 月 26 日 推出的一项技术协议。 其主要目的是解决 AI 助手与外部数据源隔离的问题,使 AI 能够连接并访问外部资源。

什么是MCP?

MCP(Model Context Protocol,模型上下文协议)是由 Anthropic 公司于 2024 年 11 月 26 日 推出的一项技术协议。其主要目的是解决 AI 助手与外部数据源隔离的问题,使 AI 能够连接并访问外部资源。

关键点:

  • MCP 不是用户隐私协议,而是一种技术协议,类似于 WiFi 或蓝牙。
  • 它定义了 AI 助手与外部资源之间的通信规则。

image.png

MCP 的三大核心组件:

  • MCP 主机:你与 AI 互动的应用程序,比如 Claude Desktop,相当于 AI 的“大本营”。
  • MCP 服务器:专门的小程序,提供特定功能(如访问文件或调用 API),就像为 AI 服务的“专业导游”。
  • MCP 客户端:连接主机和服务器的桥梁,确保通信顺畅,通常无需用户直接操作。

为什么需要 MCP?

传统的 AI 助手(如 Deepseek 等预训练模型)通常存在知识截止日期的限制,无法直接访问外部最新信息。MCP 的出现正是为了突破这一限制,通过定义通用的通信规则,让 AI 助手能够连接到外部资源,获取更多实时信息和功能。

MCP的作用:

  • 统一接口:LLM 只需理解 MCP,无需学习各种 API。
  • 可插拔架构:新功能只需添加 MCP 服务器。
  • 工作流自动化:多个服务器可串联成复杂流程。

MCP的传输模式

MCP 支持多种传输模式,主要有 stdio 和 SSE 两种模式,下面我们分别介绍。

stdio 模式概念

stdio(标准输入输出)模式是 MCP 的一种基本传输方式,它通过标准输入输出流与 MCP 服务器进行通信。

特点:

  • MCP 客户端通过子进程启动 MCP 服务器。
  • 通过标准输入(stdin)向服务器发送请求。
  • 通过标准输出(stdout)接收服务器的响应。
  • 适合在本地开发环境中使用,无需额外的网络配置。

优缺点:

  • 优点:设置简单,无需额外的网络配置。
  • 缺点:只能在本地使用,不适合分布式环境。

SSE 模式

SSE(Server-Sent Events)模式是一种基于 HTTP 的单向通信机制,允许服务器向客户端推送数据。

特点:

  • MCP 服务器以独立进程运行,监听 HTTP 请求。
  • 客户端通过 HTTP 连接到服务器。
  • 服务器可以持续向客户端推送事件和数据。
  • 适合在分布式环境中使用,支持多客户端连接。

优缺点:

  • 优点:支持分布式部署,可以被多个客户端同时访问。
  • 缺点:配置相对复杂,需要额外的网络设置。

image.pngimage.png

MCP能干什么?

image.pngimage.png

可以看出,通过这种设计,MCP 让 AI 助手从单纯的对话工具,进化成能操作现实世界的强大助手。

MCP server 客户端配置

目前支持 MCP-Server 的客户端有 CursorClaudeCline 等。从 Windows 使用体验来说,Cursor(0.47.8)需要保持 cmd 窗口常开,体验较差,而 Claude 依赖 Claude 大模型,因此更推荐使用 VSCode 的 Cline 插件,可以通过 OpenRouter + deepseek-chat/free 免费使用。

配置步骤:

  1. 安装 Cline 插件:通过最新版本的 VSCode 安装 Cline 插件。

image-20250324083411655image-20250324083411655

  1. 注册并登录 OpenRouter:访问 (https://openrouter.ai),在右上角 Keys 处创建 API Keys。此 Key 只显示一次,请妥善保存。
  2. 配置 API Provider:在 Cline 设置处配置 API Provider,选择 OpenRouter,并填写刚刚设置的 Key,选择对应的大模型,可通过 free 关键词进行过滤。

完成上述配置后即可通过 Cline 配置 MCP-Server。

MCP-SERVER配置

在 Cline 右上角点击 MCP Servers 进行配置,通过点击 Configure MCP Servers 打开 MCP-Server 配置文件 cline_mcp_setting.json,此时就可以按需添加 MCP-Server 了。

image-20250324084419184image-20250324084419184

示例配置文件:

复制
{
  "mcpServers": {
    "filesystem": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "E:\\personal\\javadaily"
      ]
    },
    "sequential-thinking": { 
      "command": "cmd", 
      "args": [ 
        "/c",
        "npx",
        "-y", 
        "@modelcontextprotocol/server-sequential-thinking" 
      ] 
    }
  },
  "spring-ai-mcp-server": {
    "command": "cmd",
    "args": [
        "/c",
        "java",
        "-Dspring.ai.mcp.server.stdio=true",
        "-Dspring.main.web-application-type=none",
        "-Dlogging.pattern.cnotallow=",
        "-jar",
        "D:\\GitSpace\\JavaSpace\\mozi-mcp\\mozi-mcp-server\\target\\mozi-mcp-server.jar"
    ],
    "env": {
      "appId":"12121212",
      "appSecret":""
    },
    "enabled": true
  },
  "fetch": {
    "command": "uvx",
    "args": [
      "mcp-server-fetch"
    ]
  }
}

大模型如何选择工具?

大模型基于以下几点决定调用哪个工具:

  1. 具描述分析:每个工具在初始化时都提供了详细的描述和参数要求。大模型会分析这些描述来了解工具的具体功能、使用场景和限制。
  2. 任务需求匹配:大模型会将用户请求分解为具体任务,然后寻找最直接匹配这些任务的工具。例如,创建文件时,大模型会寻找专门用于文件创建的工具。
  3. 上下文理解:大模型会考虑整个对话的上下文和具体操作的环境,选择最适合当前情境的工具。

工作流程:

  1. 用户在客户端提出请求。
  2. 客户端将请求发送给大模型。
  3. 大模型理解请求并决定使用哪些工具。
  4. 大模型调用 MCP 服务提供的 API。
  5. MCP 服务执行操作并返回结果。
  6. 大模型解析结果并提供响应。
  7. 客户端显示响应给用户。

效果演示

在网页上随便找一篇文章,让 CLine 使用 fetch 工具爬取并生成对应的 Markdown 文件。

示例指令:

帮我 fetch https://juejin.cn/post/7457366224823124003 这篇文章并在 javadaily 下生成 Markdown 文件。

image-20250324093252381image-20250324093252381

相关资讯

FC 2022 | 基于博弈论分析的非同质化代币证券化与回购市场

本文是 FC 2022入选论文《ABSNFT: Securitization and Repurchase Scheme for Non-Fungible Tokens Based on Game Theoretical Analysis》的解读。该论文为北京大学前沿计算研究中心算法博弈论实验室2021年暑期夏令营的科研结果,指导老师为北京大学前沿计算研究中心邓小铁教授和苏州科技大学程郁琨教授。文章提出了一种将区块链上的非同质化代币(Non-Fungible Token, NFT)进行证券化与回购的方案,并基于博弈论对该方案进行理论分析。

OpenAI 增强内容合作,签署使用英国《金融时报》资料库训练 AI 模型

感谢OpenAI 近日和英国新闻媒体《金融时报》签署协议,利用后者的资料库内容训练人工智能模型。OpenAI 此前已经与美联社等四家媒体达成了类似协议。IT之家从双方协议中获悉,英国《金融时报》将其内容授权给 OpenAI,帮助后者开发生成式人工智能技术,可以创建接近于人类创作的文本、图像和代码等。根据双方的合作内容,ChatGPT 用户能够看到精选的摘要、引述以及《金融时报》新闻的链接,此外可以就某条新闻展开聊天。英国《金融时报》已成为 ChatGPT Enterprise 的客户,为所有《金融时报》员工购买访问

OpenAI 回应“封嘴”离职条款:从未回收过任何员工股权

OpenAI 首席执行官阿尔特曼在 X (推特)上就此前“封嘴”离职条款传闻进行回应:公司从来没有收回任何人的既得股权,哪怕人们没有签署离职协议(或不同意非贬低协议),也不会采取上述做法。阿尔特曼表示,“这是我的责任,是我在管理 OpenAI 过程中为数不多的几次真正尴尬的事情之一。我不知道会发生这种事,但我本应该知道。”在过去一个月左右的时间里,该团队已经开始修复标准离职文件。如果任何签署了这些旧协议的前雇员对此感到担心,他们可以联系我,我们也会解决这个问题。对此感到非常抱歉。在 OpenAI 此前的离职文件中,