首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

漫画:什么是MCP协议?

  • 25-04-17 22:02
  • 4093
  • 10998
juejin.cn

自从2023年3月,OpenAI公司的GPT-4模型诞生以来,市面上的AI大模型如雨后春笋一般涌现出来。

无论是国外ChatGPT、Claude、Gemini,还是国内的DeepSeek、通义千问、文心一言,都是智能水平非常高的AI模型,用户可以向这些AI模型提出五花八门的问题,并且获得高质量的回答。

不过,尽管这些AI模型都很强大,但用户却只能在小小的聊天窗口里和它们进行对话。比如用户让AI写一篇文章,AI写出文章以后,用户需要手工把文章复制粘贴到本地或者自媒体平台,并且手动发布;再比如用户让AI写一段代码,AI生成代码以后,用户需要手工把代码复制粘贴到本地的IDE,并手工调试和执行。

这些AI模型,就好比是一个个聪明的大脑,却不具备能够感知外界的五官,也不具备能够行动的手和脚。

所谓Function Calling,是OpenAI公司于2023年6月推出的一项革命性功能,它允许AI模型在对话过程中识别用户请求中的特定需求,并"调用"预设的外部函数或工具来获取更准确的信息或执行特定任务。简单来说,它让AI从"只能回答问题"进化到"可以实际操作工具"。

如果我们把AI模型比作是人类的大脑,那么计算机当中的数据库、浏览器、应用、服务就像是人类的手、脚、眼睛和耳朵。

大脑想要控制身体各个部位,需要神经系统来传递电信号:

而AI模型想要调用外部的资源和服务,则需要function calling来传递消息:

在2024年流行的各种智能体(Agent),就是基于Funcation calling技术实现的。

在过去,function calling并没有统一的规范,同一个Agent往往需要访问数据库、网络、文件、应用等等不同的资源,不同开发者所开发的function call彼此又并不兼容,这使得Agent开发的成本非常高。

如何避免这种低效的重复发明轮子的现象呢?在2024年末,AI模型Claude所属的研发公司Anthropic提出了一项开源协议,名为MCP协议(Model Context Protocol)。

这项协议通过客户端-服务器架构与JSON-RPC 2.0等标准通信协议,实现了大型语言模型与外部数据源、工具的无缝集成。

在人与人之间,存在着很多的交流合作。假如每个人都使用不同的语言来讲话,张三说英语,李四说德语,王五说法语,赵六说日语......那大家就没法正常沟通合作了。

但是,如果我们让张三、李四、王五、赵六统一用汉语讲话,大家就可以高效地交流想法,团结一致办大事。

在计算机网络的世界中同样如此。假如每一个程序都采用不同的通信格式,彼此之间互不兼容,那么程序之间协作的效率就会非常低。

但如果程序之间的通信拥有统一的格式和规范,就可以实现高效通信,从而大大节省了开发成本。

目前在计算机领域有很多成熟的协议,包括HTTP协议、FTP协议、TCP/IP协议等等,这些协议都在各自的领域发挥着作用。

MCP Client:用户或AI模型的请求发起方,负责格式化任务指令(比如自然语言命令)并发送给MCP Server。

MCP Server:协议的中枢,负责路由请求、管理上下文、调用工具,并返回执行结果。

其中MCP Client通常并不是独立运行的,而是嵌入在AI模型相关的工具当中,比如Claude桌面应用、IDE等等。内嵌MCP Client的应用被称为MCP Host。

MCP Client、MCP Server、MCP Host、AI模型与外部资源,这几大角色之间的协作关系如下图所示:

许多人把自己开发的MCP Server上传到了包括Github在内的技术社区,大家可以从下面这个地址里找到许多好用的MCP Server:

github.com/modelcontex…

注:本文转载自juejin.cn的程序员小灰的文章"https://juejin.cn/post/7493720445751050278"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

109
人工智能
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top