摘要:MCP 全称是 Model Context Protocol,也就是模型上下文协议。可别小瞧它,它可不是 “另一个类似 API 的东西”,要是你这么想,那说明还没真正 get 到它的精髓。
MCP 全称是 Model Context Protocol,也就是模型上下文协议。可别小瞧它,它可不是 “另一个类似 API 的东西”,要是你这么想,那说明还没真正 get 到它的精髓。
说起传统 API,大家应该不陌生。它就像一套固定的工具套装,通过固定和预定义的端点来提供功能,像常见的 /products(产品相关接口)、/orders(订单接口)、/invoices(发票接口)这些。但这也带来了不少麻烦。比如说,你想给 API 添加新功能,就得新建端点或者修改现有端点。这一改,使用这个 API 的客户端也得跟着改,牵一发而动全身。要是再碰上更改端点所需参数数量这种事,那就更头疼了,不把使用 API 的所有客户端都 “得罪” 一遍,根本改不了。为了解决这个问题,大家引入了 “版本控制”,可搞过版本控制的人都知道,维护起来简直是噩梦,不仅耗时费力,还特别容易出错。
还有文档问题。咱们开发客户端要用 API 的时候,得去找专门的文档。但很多时候,文档要么和 API 是分开的,找起来麻烦,要么干脆就没有,这让开发者们很是抓狂。
MCP 的出现,就像是给这些难题找到了新解法。MCP 服务器把功能公开成一个个具有语义描述的 “工具”,这可太实用了!每个工具都能自我描述,里面详细包含了工具的功能、每个参数的含义、预期输出,还有约束和限制这些关键信息。这意味着什么?意味着咱们再也不用到处找单独的文档了,工具界面本身就是一份详细的文档,是不是超方便!
更厉害的是,MCP 在应对变化方面有着独特的优势。想象一下,你在服务器上改了某个工具所需的参数数量,要是用传统 API,客户端肯定得乱套。但在 MCP 这里,完全不用担心!客户端能动态适应这些变化,就像有智能 “自适应系统” 一样。而且,当你添加新工具时,客户端还能自动发现并在合适的时候用上它,完全不需要手动修改,这对开发者来说,简直是 “减负神器”。
另外,MCP 还能根据不同的上下文来设置工具的可用性。比如说,MCP 服务器可以设置一个工具,只有那些先登录的客户端才能使用,这在提升安全性和用户体验方面都非常实用。
在 AI 飞速发展的当下,AI+API 已经成为很多应用的标配,但 AI+MCP 的组合显然更胜一筹。MCP 的这些特性,让它在灵活度、易用性和适应性上都远超传统 API,能更好地满足 AI 复杂多变的应用场景需求。
Anthropic 推出 模型上下文协议(Model Context Protocol,MCP),旨在让 AI 模型更加强大。
MCP 是一个 开放标准(同时也是一个开源项目),它让 AI 模型(如 Claude)可以连接数据库、API、文件系统等各种工具,而 无需为每次新集成编写自定义代码 。
MCP 采用 客户端-服务器 模型,由 三个核心组件 组成:
Host(宿主):AI 应用(如 Claude)提供 AI 交互环境,使其能够访问不同的工具和数据源。宿主运行 MCP 客户端。
MCP 客户端:这是 AI 模型内部的一个组件(如 Claude 内部的 MCP 客户端),负责与 MCP 服务器通信。例如,如果 AI 需要从 PostgreSQL 获取数据,MCP 客户端会将请求格式化为结构化消息,并发送给 MCP 服务器 。
MCP 服务器:充当 AI 模型与外部系统(如 PostgreSQL、Google Drive 或 API)之间的 中间桥梁。例如,当 Claude 需要分析 PostgreSQL 中的销售数据时,PostgreSQL 的 MCP 服务器就会在 Claude 与数据库之间 充当连接器 。
MCP 的五个核心构建块(Primitives)
MCP 由 五个基础构件 组成,分别分布在 客户端 和 服务器端:
客户端(Client):
Roots(根):用于 安全访问文件 。
Sampling(采样):让 AI 协助完成任务,比如 生成数据库查询语句 。
服务器(Server):
Prompts(提示):用于 引导 AI 执行特定任务 。
Resources(资源):AI 可参考的数据对象 。
Tools(工具):AI 可以调用的功能,例如 运行数据库查询 。
你是否已经尝试过 Anthropic 的 模型上下文协议(MCP)?欢迎分享你的探索和想法!
DeepSeek资料下载方式
本文,完。觉得本篇文章不错的,记得随手点个赞、收藏和转发三连,大家感兴趣的可以关注下,后续我再研究点新东西分享给大家⭐~
来源:AIGC研究社