当前位置: 首页 > news >正文

简单谈谈很火的MCP( Model Context Protocol,模型上下文协议)

MCP( Model Context Protocol,模型上下文协议)是由Anthropic推出的开放协议,并非独立的大模型,而是连接大模型与外部工具/数据源的标准化接口‌,旨在解决AI工具开发中接口不统一、跨模型共享困难等问题。‌

一、工作原理

MCP 协议采用了一种独特的架构设计,它将 LLM 与资源之间的通信划分为三个主要部分:客户端、服务器和资源。

MCP 遵循客户端-服务器架构(client-server),其中包含以下几个核心概念:

  • MCP 主机(MCP Hosts):发起请求的 LLM 应用程序(例如 Claude Desktop、IDE 或 AI 工具)。
  • MCP 客户端(MCP Clients):在主机程序内部,与 MCP server 保持 1:1 的连接。
  • MCP 服务器(MCP Servers):为 MCP client 提供上下文、工具和 prompt 信息。
  • 本地资源(Local Resources):本地计算机中可供 MCP server 安全访问的资源(例如文件、数据库)。
  • 远程资源(Remote Resources):MCP server 可以连接到的远程资源(例如通过 API)

由上述可知,MCP是将一些程序封装,用户输入自然语言让大模型去执行这些程序。

当用户提出一个问题时:

  1. 客户端(Claude Desktop / Cursor)将你的问题发送给LLM。
  2. LLM分析可用的工具,并决定使用哪一个(或多个)。
  3. 客户端通过 MCP Server 执行所选的工具。
  4. 工具的执行结果被送回给 LLM。
  5. LLM结合执行结果构造最终的 prompt 并生成自然语言的回应。
  6. 回应最终展示给用户!

二、MCP 、Agent、RAG 之间的联系

MCP 是模型上下文协议,为AI模型与外部工具提供了标准化的桥梁。简单来说就是MCP是一套规则,为外部调用的不同Tools提供接口,方便了与LLM的接入。Agent 通过决策选择所需的工具得到结果,然后反馈给LLM进行综合分析,重新组织结果反馈给用户。RAG 重要的知识库检索技术,只需提供对应的数据,反馈给LLM即可。

输入(用户)----->Agent ---(决策)需要的Tools--->MCP ---(调用Tools)---->结果  ------>LLM  ---->输出给用户。

MCP 为 Agent 提供基础设施

MCP 将外部工具封装为标准化接口,供 Agent 按需要调用。

比如,Agent 通过 MCP Server 访问 Postgres 数据库执行 SQL 查询。

Agent驱动MCP价值落地

MCP 本身无法主动运作,需依赖 Agent 发起请求。

比如,当 Agent 识别需要调用天气 API 的时候,通过 MCP Client 向对应 Server 发送结构化请求。

三、function call 

Function Calling 指程序或模型主动调用预定义函数的能力。对于大语言模型(LLM)而言,它是模型与外部工具/API交互的核心机制,使模型能超越纯文本生成,执行实际操作(如查天气、计算、数据库查询等)。

sequenceDiagram
    participant User
    participant LLM
    participant System

    User->>LLM: "提醒我明天上午10点开会"
    LLM->>System: 生成函数调用请求(JSON):
    {
      "function": "calendar.create_event",
      "parameters": {
        "title": "会议",
        "time": "xx.xxx.xxxxT10:00:00"
      }
    }
    System->>Calendar API: 执行实际函数
    Calendar API-->>System: 创建成功
    System-->>LLM: 返回结果
    LLM-->>User: "已创建明天10点的会议提醒"
主流实现方案
平台实现方式
OpenAI通过tools参数声明可用函数,模型返回tool_calls响应
Anthropic Claude使用tool_use块和结构化XML标签
LangChain通过Tool类封装函数,bind_functions()实现绑定
Google GeminiFunctionDeclaration定义工具,在content.parts中返回调用请求
  • MCP 作为模型调度层,可统一管理函数调用所需的模型资源

  • Agent 使用Function Calling作为基础能力单元

四、案例实践(vscode+cline+MCP-github)

1、安装vscode, 并在vscode中安装插件cline

2、安装nodejs

网址:Node.js — 在任何地方运行 JavaScript

3、配置cline

API -Provider 选择 Open Router

Model选择 deepseek/deepseek-chat:free

OpenRouter APl Key  获取点击   Get OpenRouter APl Key  跳转后点击Authorize,会自动填写。

4、配置 MCP -GitHub

点击install,会调用大模型自动进行步骤提示。

此处会让你点击运行代码。

此处需要点击所提供的网址,配置GitHub 的token.或者点击https://github.com/settings/tokens

进行。具体操作请自行探索。

此处需要将生成的token复制,发送给cline.

完成后会生成一个cline_mcp_settings.json文件,如:

如果是Mac电脑,配置结束,继续运行即可。

windows电脑需要修改配置文件。如下所示:

然后在窗口输入命令: 我的名字是xxx(github用化名),查询我的远程仓库有哪些?

最后给出汇总:
 

 其他的MCP可在MCP 仓库,参照使用。

参考

1、https://zhuanlan.zhihu.com/p/27327515233

MCP合集:Smithery - Model Context Protocol Registry

MCP 仓库:https://github.com/modelcontextprotocol/servers

安装操作:【MCP是啥?技术原理是什么?一个视频搞懂MCP的一切。Windows系统配置MCP,Cursor Cline使用MCP】https://www.bilibili.com/video/BV1AnQNYxEsy?vd_source=dd4b91f2d81783a0712b0e908952f9b0

相关文章:

  • 【Sql Server】在SQL Server中生成雪花ID(Snowflake ID)
  • HarmonyOS NEXT状态管理实践
  • Yolo_v8的安装测试
  • 以太坊主网 PoS 节点搭建指南
  • 天锐蓝盾终端安全防护——企业终端设备安全管控
  • 如何让 history 记录命令执行时间?Linux/macOS 终端时间戳设置指南
  • 嵌入式linux系统中对应的文件锁详细实现方法
  • AI-人工智能-实现将静态图片和视频合成为类似iPhone的Live Photo(动态照片)效果
  • iPhone mini,永远再见了
  • 量子力学:从经典物理危机到思维革命的新纪元
  • 6.Excel:通过 Power Query 处理从网上获取的数据
  • 西门子s7协议
  • 自然语言处理(15:RNNLM的学习和评价(整个第4章大总结))
  • Linux子系统 - USB描述符结构体
  • 深入探索Windows Hook技术:原理、内核级实现与高级应用
  • 压力测试未覆盖边界条件的后果有哪些
  • 常见的锁策略
  • angular获取roleFormGroup的control值
  • k8s scheduler几种扩展方式的关系及区别
  • RDMA的挑战与限制
  • 域名申请好了怎么做网站/高级搜索
  • 企业网站备案多少钱/青岛谷歌seo
  • 办公室设计装修咨询/广西seo经理
  • 怎么推广自己做的网站吗/泰安百度推广代理商
  • 免费建手机网站/网站网络优化外包
  • 韶关房地产网站建设/广州百度网站排名优化