首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >AI新手村:MCP

AI新手村:MCP

原创
作者头像
dsy
发布2025-05-12 14:29:18
发布2025-05-12 14:29:18
2750
举报

MCP 的产生背景

受限于训练数据的实时性、隐私数据等因素,大型语言模型(LLM)的能力并非包罗万象。为了扩展其功能边界,通常需要借助外部工具。这些工具可以以 API 的形式接入,也可以是私有向量数据库。大型语言模型可以通过对提示词(Prompt)进行匹配识别,或者依赖于各家厂商自定义的 Function call 结构化匹配,从而在众多已注册的工具中选择最合适的进行调用。

大模型调用外部工具的方法
大模型调用外部工具的方法

更进一步,我们的任务通常难以通过单一工具独立解决,而往往需要在理解上下文的基础上,协调多个工具按序执行。这就催生了 Agent(智能体)的概念,作为负责协调和管理的模块。我们常用的代码编辑器 Cursor 就是一个代码领域的 Agent,它可以根据用户的需求在大模型的协助下编写相应的代码,如果发现缺少代码运行环境,可以在用户授权的情况下,调用相关工具进行安装和测试。

Agent和其他模块的交互
Agent和其他模块的交互

尽管上述方案能够扩展大型模型的能力,但问题在于不同大型模型之间的具体实现方式存在差异。即使是同一个大型模型,其对不同类型工具的调用方式也可能不同。MCP(Model Context Protocol,模型上下文协议)的出现,正是为了解决这种不规范的情况。通过遵循同一套标准,所有接入大型模型的工具能够实现标准化对接,从而大幅降低了工具与大型模型集成的复杂度和工作量。例如,对于最常用的网络搜索服务,只需编写一个符合 MCP 标准的服务,即可供所有支持 MCP 协议的大型模型使用。

MCP 的引入
MCP 的引入

MCP结构

具体来看,MCP 主要包含两个核心部分:MCP Client 和 MCP Server。MCP Client 代表用户使用的应用(例如 Cursor, Claude),其职责包括:

  • 为大语言模型提供 MCP 协议的概述,保证交互的一致性
  • 向 MCP Server发起请求,并把结果返回给大模型

MCP Server 作为连接 LLM 外部能力的服务中介,其职责包括:

  • 提供了标准化的 JSON-RPC 接口以供工具或资源访问
  • 将所有 API 转化为 MCP 兼容的格式
  • 处理身份校验
  • 定义对外提供的能力

资源、提示词和工具是 MCP 可以对外提供的三种主要能力类型。

MCP 结构
MCP 结构

MCP 的核心在于,可以把 LLM 提供的上下文内容结构化,结合过去的记忆、现有的工具和当前状态,逐步完成上下文中要求的任务目标。

例子

安装 Node,并确保 npx 命令可用。

访问网址https://mcp.composio.dev/,找到你想集成的服务(这里以 Gmail 为例),点击 Generate 按钮,复制生成的命令,打开本地命令行工具,粘贴并回车执行。

配置页面
配置页面

打开 Cursor 的MCP 设置页面,可以看到添加的 Gmail 服务。

cursor 设置
cursor 设置

在对话框中,使用 Agent 模式,提问“昨天收到的 gmail 邮件”,其回复如下图所示。

Agent 回复
Agent 回复

One More Thing

除了 Composio 平台,Smithery (https://smithery.ai/) 也是一个优秀的 MCP 平台,值得您了解和尝试。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • MCP 的产生背景
  • MCP结构
  • 例子
  • One More Thing
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档