MCP及其工作原理简单介绍

134 阅读3分钟

什么是MCP

MCP(Model Context Protocol)是一个开放的、通过用的协议,标准化应用如何向LLM提供上下文信息。 简单来说,就像HTTP协议允许不同网站和浏览器根据相同的规则交换信息一样,MCP就像AI世界的HTTP协议。MCP使不同的AI模型能够以标准化的方式连接到各种数据来源和工具。这种标准化使开发者能够更容易地构建AI应用,而不必为每个模型或数据来源创建专门的接口。

为什么需要MCP

LLM功能强大,但有几个关键的限制:

  • 知识限制和更新挑战:LLM基于训练数据,其内容局限于训练数据中包含的信息。例如,GPT-4的知识截止于2023年4月。训练LLM需要庞大的计算资源和时间,通常需要六个月或更长时间才能完成一个新版本。所以模型的知识总是“过时的”,而更新版本的成本极高。
  • 缺乏专业领域知识:LLM是使用公开可用的通用数据训练,它们无法深入理解特定业务领域中的专业数据和信息。
  • 沒有统一访问外部数据的标准:目前,有许多方案发可以为LLM提供附加信息,如RAG(检索增强生成)、本地知识库、互联网搜索等。不同的开发团队提供不同的集成解决方案,这导致系统之间的集成成本很高。具有专业领域数据的系统难以与LLM无缝集成。每次集成都需要非标开发,缺乏一个通用的、标准化的解决方案。

而MCP提供了一个标准化的协议,允许LLM以一致的方式访问外部信息和工具,解决了上述LLM的限制。

  • 丰富的预构建集成:MCP提供了许多现成的服务器集成,包括文件系统、数据库(Postgresql,SQLite)、开发工具(Git、Github、Gitlab)、网络工具、生产力工具(Slack、Google Maps)等。这意味着不需要从零开始构建这些集成。
  • 灵活地切换LLM供应商:有了MCP,可以标准化与各个大模型的对接,可以随意灵活地切换应用对接的大模型。
  • 构建复杂的AI工作流:MCP允许在LLM之上构建复杂的代理工作流。

MCP如何工作

MCP的概念中,有三个核心角色: MCP服务器,提供工具和数据访问方式。 MCP客户端,嵌入在LLM中并与MCP服务器通信。 MCP主机,集成LLM和客户端的应用,如claude桌面、Cursor等。

image.png

MCP服务器

MCP服务器是一个程序,提供工具和数据访问能力供LLM使用。与传统的远程API服务器不同,MCP服务器可以作为本地应用运行在用户设备上,也可以部署到远程服务器。 每个MCP服务器都提供一组特定的工具,负责从本地数据或远程服务中检索信息。当LLM确定在处理任务时需要使用某个工具时,它会使用MCP服务器提供的工具来获取所需数据并返回给LLM。

image.png

MCP客户端

MCP客户端是连接LLM和MCP服务器的桥梁。它的职责:

  • 接受来自LLM的请求
  • 转发请求至相应的MCP服务器
  • 将MCP服务处理的结果返回给LLM

image.png

MCP主机

像Claude桌面、IDEs(Cursor等)或想通过MCP访问数据的AI工具。这些应用为用户提供与LLM交互的接口,同时集成MCP客户端以连接MCP服务器,使用MCP服务器提供的工具来扩展LLM功能。

image.png

MCP工作流

MCP服务器、MCP客户端、MCP主机三者组成了一个基于MCP的AI应用。

image.png 简单的工作流模型如下:

image.png

总结

以上就是MCP简单的概念介绍和基于MCP的工作流简单说明。