大型语言模型(LLM)的能力并非无所不能,而MCP协议(Model Context Protocol,模型上下文协议)的诞生,正是为了统一接口标准、降低集成门槛,推动AI工具生态迈向更高效、更开放的未来。本篇教程将带你从零开始,系统了解MCP的核心概念与架构,并通过实战案例快速上手。
MCP 的诞生背景
大型语言模型的能力边界与外部工具需求
由于训练数据的时效性、隐私保护等因素制约,大型语言模型(LLM)的能力并非面面俱到。为了拓展其应用边界,通常需要借助外部工具来弥补不足。这些工具可以以API接口的形式接入,也可以是私有化的向量数据库。大型语言模型可以通过对提示词(Prompt)进行模式匹配,或者依赖各家厂商自定义的 Function call 结构化匹配机制,从而在众多已注册的工具中筛选出最合适的进行调用。

从单一工具到智能体(Agent)的演进
更进一步来看,我们的任务往往难以通过单一工具独立完成,而通常需要在理解上下文的基础上,协调多个工具按序执行。这一需求催生了 Agent(智能体) 的概念,作为负责协调与调度的核心模块。我们常用的代码编辑器 Cursor 就是一个典型的代码领域 Agent,它能够根据用户的指令,在大模型的辅助下生成相应代码,若发现缺少运行环境,还可经用户授权后调用相关工具进行安装与测试。

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

常见问题:
- Q:MCP 和普通的 API 有什么区别?
A:普通 API 通常由各家厂商自定义格式,LLM 在调用时需要额外进行适配;而 MCP 提供了统一的 JSON-RPC 接口标准,所有支持 MCP 的 LLM 均可直接调用,无需重复开发适配代码。 - Q:MCP 只适用于大型模型吗?
A:MCP 最初是为大语言模型设计的,但其标准化的接口理念同样适用于其他类型的 AI 系统或需要工具集成的场景,具备良好的通用性。
小提示:在开始使用 MCP 之前,建议先确认你的 LLM 应用(如 Claude、Cursor)是否原生支持 MCP 协议,或者是否可以通过插件、配置等方式启用该功能。
MCP 架构解析
具体而言,MCP 主要包含两个核心组成部分:MCP Client 和 MCP Server。
MCP Client
MCP Client 代表用户所使用的应用程序(例如 Cursor、Claude),其主要职责包括:
为大语言模型提供 MCP 协议的概述,确保交互过程的一致性
向 MCP Server 发起请求,并将获取的结果返回给大模型
MCP Server
MCP Server 作为连接 LLM 与外部能力的中介服务,其核心职责包括:
提供标准化的 JSON-RPC 接口,便于工具或资源的访问
将各类 API 转化为 MCP 兼容的格式
处理身份验证与权限校验
定义对外提供的能力范围
三大能力类型
资源、提示词和工具 是 MCP 可以对外提供的三种主要能力类型。

MCP 的核心价值在于,它能够将 LLM 所提供的上下文内容进行结构化处理,结合历史记忆、现有工具和当前状态,逐步完成上下文中所要求的任务目标。
小提示:如果你正在开发自己的 MCP Server,建议从“工具”类型入手,因为大多数外部服务(如搜索、数据库、邮件)天然适合以工具的形式对外暴露。
常见问题:
- Q:MCP Client 和 MCP Server 必须部署在同一台机器上吗?
A:不需要。MCP 基于 JSON-RPC 协议,通常通过标准输入输出(stdio)或 HTTP 进行通信,Client 和 Server 可以部署在不同的机器上,只要网络可达即可正常交互。 - Q:如何将自定义工具注册到 MCP Server?
A:编写一个符合 MCP 规范的 JSON-RPC 服务(例如使用 Python 的 FastMCP 库),然后通过配置文件或代码将其注册到你的 MCP Server 中即可。
实战:在 Cursor 中集成 Gmail
下面通过一个完整的操作示例,展示如何借助 Composio 平台快速为 Cursor 添加 Gmail 服务。
前置条件
- 安装 Node.js,并确保 npx 命令可用。
操作步骤
- 访问网址 https://mcp.composio.dev/,找到你想集成的服务(此处以 Gmail 为例)。
- 点击 Generate 按钮,复制生成的命令。
- 打开本地命令行工具,粘贴命令并回车执行。

在 Cursor 中验证
- 打开 Cursor 的 MCP 设置页面,即可看到已添加的 Gmail 服务。
- 在对话框中切换至 Agent 模式,输入“昨天收到的 gmail 邮件”,其回复效果如下图所示。

小提示:如果 Cursor 中未显示 MCP 设置,请确认你的 Cursor 版本是否支持 MCP(需 0.44 及以上版本)。另外,首次使用 Gmail 服务时,可能需要授权登录你的 Google 账号。
常见问题:
- Q:执行命令后报错“npx not found”怎么办?
A:请检查 Node.js 是否安装成功,并确保 npx 所在的路径已加入系统环境变量。也可以尝试通过npm install -g npx手动安装。 - Q:Gmail 服务添加后,Cursor 中仍然无法使用?
A:请重启 Cursor 或刷新 MCP 配置。有时需要重新启动 Agent 会话才能加载新添加的工具。
更多 MCP 资源推荐
除了 Composio 平台之外,Smithery (https://smithery.ai/) 也是一个出色的 MCP 平台,值得你深入了解和尝试。它提供了丰富的预构建 MCP 工具,并支持自定义配置,能够进一步降低集成门槛,加速开发流程。
小提示:如果你希望自行开发 MCP Server,推荐参考官方文档中的 Quick Start 示例(使用 Python 或 TypeScript 编写),深入理解资源、提示词和工具三种能力的具体实现方式。
通过本教程,你已经系统掌握了 MCP 协议的背景、架构以及实际集成方法。无论是为了简化工具对接,还是构建更强大的 Agent 应用,MCP 都将成为你拓展 LLM 能力边界的得力助手。现在,不妨选择一个你常用的服务,亲自动手尝试吧!
