MCP(Model Context Protocol)协议介绍
创作时间:
作者:
@小白创作中心
MCP(Model Context Protocol)协议介绍
引用
CSDN
1.
https://blog.csdn.net/weixin_38358700/article/details/144087381
MCP(Model Context Protocol)是一种开放协议,可实现LLM应用程序与外部数据源和工具之间的无缝集成。无论是构建智能IDE、扩展接口,还是创建AI工作流程,MCP都提供了一种标准化方法,将LLMs与其所需的上下文连接起来。本文将详细介绍MCP的各个组件及其功能,并通过实例说明其工作原理。
如上图所示,MCP的主要组件包括:
- MCP Hosts: 通过MCP访问资源的程序,例如Claude Desktop、IDE或AI工具。
- MCP Clients: 与服务器保持1:1连接的协议客户端。
- MCP Servers: 每个轻量级程序都通过标准化模型上下文协议公开特定功能。
- Local Resources: MCP服务器可以安全访问的计算机资源(数据库、文件、服务)。
- Remote Resources: MCP服务器可以连接到的互联网上可用的资源(例如,通过API)。
其中,MCPServer是核心组件,它实现了本地资源或远端资源的交互,并且实现了MCP协议。Host通过调用不同的MCPServer来访问各种资源,例如GitHub相关或SQLite相关。
原理
当使用MCP与Claude Desktop交互时,具体流程如下:
- Server Discovery: Claude Desktop在启动时连接到配置好的MCP服务器。
- Protocol Handshake: 当询问数据时,Claude Desktop:
- 确定哪个MCP服务器可以提供帮助(在本例中为SQLite)
- 通过协议协商能力
- 从MCP服务器请求数据或操作
- Interaction Flow:
- Security:
- MCP服务器仅公开特定的、受控的功能
- MCP服务器在本地运行,它们访问的资源不会暴露在互联网上
- 需要用户确认敏感操作
不过,这种架构也存在一个问题:MCPServer是如何部署到本地的?如果一开始就集成到安装包里面,那后续要扩展,是否需要动态从仓库中下载?
已有的MCPServer
在官方给出的仓库里面,已经包含了10余种Server,包括git、github、sqlite等,不过目前来看,数量还是比较少的。所以理论上,如果要获取更多服务,还是要面向自己的业务编写Server。
如何创建自己的MCPServer
以下是用Python生成一个MCPServer的示例,总体来说还是比较方便。
- 前置工作
- 创建工程:MCP已经提供了工程创建器,可以通过“create-mcp-server”直接创建模板工程。这里使用uv包管理器。
- 创建环境:需要创建一个访问服务的Key。当要访问的服务需要验证时,就需要添加访问Key。
- 创建服务
在模板weather_service/src/weather_service/server.py文件中,添加具体代码。后续只要实现MCP的具体接口即可。
总结
MCP是一个全新的协议,在AI领域也需要一个统一的协议去抽象不同工具、数据的调用。MCP如果能继续发展完善,将有可能成为AI领域的LSP。此外,对工具的调用,让我们容易想到另一种方式——Function Call,以下是它和MCP的使用建议:
- 对于需要复杂上下文管理的场景,优先考虑MCP
- 对于需要明确功能调用的场景,继续使用Function Call
- 在大型项目中考虑两者结合使用
目前来看,可以将MCP、FunctionCall、视觉驱动三者结合起来,进而增大AI的交互边界,为用户带来更便捷的体验。
热门推荐
走进中国石窟的“百科全书”——炳灵寺石窟
数字化转型赋能构建新型电力系统
本是为借钱,结果更缺钱?民警为您揭露网络金融贷款诈骗套路!
新能源车“上路”三大难点怎么破
文化中国行·悠悠邕事|新华路:承载南宁独家记忆
38.2℃的热度:体温解读与发热应对策略
304不锈钢管在建筑行业的应用
中医养生的科学之道:李辛大师用中医智慧,解读现代健康问题
广州近视眼手术医生推荐?教你如何选医生!李国保、余克明、吴君舒
候鸟老人:如何选择最佳的迁徙地点与生活方式
退伍老兵张良荣:3次特等功、3次一等功,1次中等功!向英雄致敬
探讨福利国家的优势与挑战:如何改善社会福祉
暑期出行,这些物品携带需注意!
改革开放40年住房变迁:城镇人均住房面积从6.7平升至36.6平
瓜子对身体的好处和坏处有哪些
因茶而兴的紫砂壶
匠心独运,文化深植 —— 在《牧神记》动画中感受传统文化的魅力
小白也能学会!UNet医学图像分割实战指南(附源码和中文论文)
00后大学生的“搬砖”副业:揭秘球鞋差价交易的高额利润
东西丢了很烦躁很焦虑是怎么回事怎么办
邴姓起名思路8个,邴姓起名大全
恶魔城月下夜想曲隐藏秘籍有什么 隐藏秘籍指令介绍
使用依洛尤单抗(Evolocumab)的注意事项有哪些

完成多少个引体向上才算大神?看看你在哪个级别
以太坊创始人V神(Vitalik Buterin)的传奇人生
幼驯染是什么意思
面包虫成蛹了怎么办
面包虫生长的5个过程及繁殖技巧
选择省心又实用智能马桶的全攻略:功能对比与品牌推荐
只需5步,教你怎么安慰好焦虑症伴侣