初识模型上下文协议-MCP

前言

大语言模型(Large Language Model,简称LLM )是当前人工智能(AI)领域最具代表性的技术之一,本质是基于海量文本数据训练、能理解人类语言、生成类人文本、具备逻辑推理能力的深度学习模型。它的核心价值是 "打通人机语言交互的壁垒",让机器从 "被动响应指令" 升级为 "主动理解意图、生成高质量语言内容",是 ChatGPT、文心一言等主流 AI 产品的技术核心。

模型上下文协议(Model Context Protocol,简称MCP )是 AI 领域新兴的技术规范 ,旨在解决大语言模型(LLM)与外部系统交互时 的 "上下文管理标准化" 问题。它就像 AI 应用的 "通用接口",让不同的工具、数据源和模型能够无缝协作,核心目标是统一 "向 LLM 提供信息" 的方式,提升 AI 应用开发的效率和灵活性。

举个简单的例子来说明MCP的作用。

假设你在使用 AI 助手管理公司的产品库存系统:

没有 MCP 的情况 ❌

你:帮我查一下上个月销量最好的 5 个产品、

AI:抱歉,我无法访问您的数据库。我只能基于训练数据提供一般性建议。

使用 MCP 的情况 ✅

你:帮我查一下上个月销量最好的 5 个产品

AI:[通过 MCP 连接到数据库服务器] → MCP 客户端调用数据库工具 → 执行 SQL 查询 → 获取实时数据 → 根据数据库查询结果,输出上个月销量最好的 5 个产品

MCP 的主要目的

MCP 旨在为大型语言模型(LLM)应用提供标准化接口,使其能够:

  • 连接外部数据源和工具
  • 动态获取所需的上下文信息
  • 克服仅依赖训练数据的局限性
  • 执行更广泛的任务

用一张图解释就是:

MCP 优势

  • 标准化接口:一次开发,所有 AI 应用共享
  • 动态数据访问:AI 可以获取最新、实时的数据
  • 打破信息壁垒:连接企业内部系统、数据库、API 等
  • 集成复杂度降低:服务器端开发一次,所有 AI 应用都能使用
  • 方便功能扩展:MCP前通过在AI应用中硬编码的方式实现部分功能,扩展困难

MCP 的技术架构

MCP 采用模块化的客户端-服务器架构,包含三个核心组件:

  1. 主机进程(Host):运行大模型的应用程序,连接用户界面
  2. MCP 客户端(Client):负责发送请求和接收响应,处理协议转换
  3. MCP 服务器(Server):通过标准化的 MCP 协议,提供各类工具的能力

MCP 的传输机制

MCP 官方主要支持的是 stdio 和 SSE(Server-Sent Events) 两种传输机制。

Stdio(标准输入输出)传输

MCP 默认的通信方式,主要用在本地服务上,所有的通信都在本地进程间

消息格式

每条消息都是一行 JSON-RPC 2.0 格式,以换行符分隔:

json 复制代码
// 客户端通过 stdin 发送:
{"jsonrpc":"2.0","id":1,"method":"tools/list"}\n

// 服务器通过 stdout 返回:
{"jsonrpc":"2.0","id":1,"result":{"tools":[...]}}\n

优缺点

优点 缺点
极低延迟:进程间通信,无网络开销 仅限本地:客户端和服务器必须在同一台机器
高安全性:不暴露网络端口 单客户端:一个服务器只能服务一个客户端
简单实现:无需网络配置 难以调试:需要查看进程间通信
跨平台:所有操作系统都支持 stdio 资源隔离差:子进程崩溃可能影响主进程

SSE(Server-Sent Events)传输

主要用在远程通信服务上,这个服务本身有在线的API,比如访问你的谷歌邮件、天气情况等。

优缺点

优点 缺点
远程访问:跨网络通信,客户端可在任何地方 网络延迟:依赖网络质量
多客户端:一个服务器可同时服务多个客户端 复杂性高:需要配置网络、CORS、认证等
实时推送:服务器可主动推送事件 连接不稳定:网络问题可能导致断连
Web 友好:浏览器原生支持 SSE 浏览器限制:每个域最多 6 个 SSE 连接
可监控:可通过网络工具调试 安全考虑:需要 HTTPS、认证、授权

MCP 的工作流程

当用户发出请求时:

  1. MCP 解析请求并调用相应的工具
  2. 工具访问资源后将结果返回给客户端
  3. 客户端将结果传递给大模型
  4. 大模型结合上下文生成自然语言输出

如何获取 MCP Server

如果想查找当前存在的MCP Server,可到如下网址查看:

  1. MCP官方资源
  2. MCP热门资源
  3. Smithery
  4. Glama
  5. Cursor
  6. MCP.so
  7. 阿里云百炼

Cursor 中使用 MCP

有两种方式:

  1. 项目级配置(推荐 ):在项目根目录创建.cursor/mcp.json
  2. 全局配置:在用户主目录创建:
    • Windows: C:\Users\你的用户名.cursor\mcp.json
    • macOS/Linux: ~/.cursor/mcp.json
相关推荐
数据智能老司机14 小时前
构建多智能体系统——使用工具
llm·agent·mcp
大模型真好玩2 天前
LangChain1.0速通指南(三)——LangChain1.0 create_agent api 高阶功能
人工智能·langchain·mcp
清灵xmf2 天前
Memory MCP(记忆服务器)
cursor·mcp·memory mcp
MaybeAI2 天前
构建可靠的 AI 工作流:我们在 MCP 架构下的实践与经验
ai·工作流·mcp·ai自动化·工作流自动化·无代码工作流·maybeai
励志成为糕手3 天前
VSCode+Cline部署本地爬虫fetch-mcp实战
ide·vscode·爬虫·ai·mcp
小虎AI生活3 天前
王炸!新一代 AI 浏览器,GitHub 上 16.4k 高星的开源项目
ai编程·mcp·codebuddy
檀越剑指大厂4 天前
【MCP系列】飞书MCP使用
mcp
二进制_Leo5 天前
深入理解 Model Context Protocol (MCP)
mcp
deephub5 天前
FastMCP 入门:用 Python 快速搭建 MCP 服务器接入 LLM
服务器·人工智能·python·大语言模型·mcp
大模型真好玩5 天前
LangChain1.0速通指南(二)——LangChain1.0 create_agent api 基础知识
人工智能·langchain·mcp