MCP到底是什么

Hello 大家好,我是程序员Knight,最近MCP协议变得火热,公司中也在互相讨论,那么MCP究竟是什么呢?我们该如何使用MCP呢?接下来就让我们一探究竟。

MCP是什么?

MCP(Model Context Protocol, 模型上下文协议)是由人工智能公司(Anthropic)提出并开源的一种标准化通信协议,它主要用来解决AI模型与外部数据源、工具以及系统之间的连接问题。如果我们从OSI模型来看MCP的话,MCP处于OSI的应用层,其通过JSON-RPC的消息进行交互、会话管理、数据查询)。其对应OSI模型如下:

javascript 复制代码
OSI模型层级       MCP相关协议/组件
------------------------------------------------------------------------------------------------------------------
应用层         MCP协议(JSON-RPC)、HTTP、SSE
表示层         JSON数据格式编码
会话层         Mcp-Session-Id(会话管理)
传输层         TCP(远程通信场景)
网络层         IP
数据链路层     以太网/Wi-Fi
物理层         光纤/电缆等

在有了MCP的基础了解后,让我们再一起看看MCP的核心架构: MCP主要由三个核心组件构成:

  • MCP主机:发起请求的应用程序,负责向MCP客户端发送指令,例如大模型应用、VScode插件(Cline)
  • MCP客户端:作为中间桥梁,转发请求到MCP服务端并返回响应。
  • MCP服务端:轻量服务器,标准化功能结构,具备本地/云端的调用与部署。 架构图如下:

传输层(Transport Layer):处理真实请求。

  1. 本地请求:Stdio transport:
    • 通过标准 stdInput/stdOutput 来沟通
    • 适用于本地进程通信
  2. 远端请求,分为两种情况:
    • 客户端到服务端(Client to Server):通过HTTP Post请求
    • 服务端到客户端(Server to Client):通过服务端事件(Server-Sent Events) 所有的通信机制都基于JSON-RPC 2.0来通信,消息体采用UTF-8编码格式,确保跨平台的兼容性。

MCP的使用

在MCP介绍的官网上提供了不同语言的SDK用来集成现有的服务器,并且提供客户端与服务端的例子,我在之后也会出一篇专题文章来详细探索MCP的服务应用。在本篇中,我先着重介绍下,如何通过VSCode插件Cline与MCP来提高效率。

  1. 首先我们打开VSCode下载Cline,Cline是一个编辑器的AI助手,
  2. 打开Cline MCP控制台
  3. 添加MCP服务器,在Github仓库中我们可以找到现在已有的MCP服务器, 本次教程讲使用最火热的github
  4. 接下来我们根据其提供的下载方式进行在Cline中的配置。(采用 npx的方式)
  1. 接下来我们可以在 cline 对话框中以文本语言的方式来进行想要做的操作,如果有对应MCP服务器,会直接使用对应的工具来帮助我们完成操作。比如查找我当前所有的仓库指令:

希望读完这篇文章,能帮助你更好的理解MCP的作用,我在之后也会花时间来研究更多的MCP用处,在Github仓库中有更多提升效率的服务器。以后也让我们一起探索MCP的实际应用~

相关推荐
Simon_lca6 分钟前
突破合规瓶颈:ZDHC Supplier to Zero(工厂零排放 - 进阶型)体系全攻略
大数据·网络·人工智能·分类·数据挖掘·数据分析·零售
卧蚕土豆19 分钟前
【有啥问啥】Claude Code 安装与使用教程
人工智能
A黄俊辉A22 分钟前
vue css中 :global的使用
前端·javascript·vue.js
刀法如飞26 分钟前
AI编程时代,为什么35岁以上程序员会更吃香?
人工智能·后端·ai编程
小码哥_常35 分钟前
被EdgeToEdge适配折磨疯了,谁懂!
前端
yukai0800838 分钟前
【203篇系列】050 关于量化的一些思考
人工智能
小码哥_常1 小时前
从Groovy到KTS:Android Gradle脚本的华丽转身
前端
灵感__idea1 小时前
Hello 算法:复杂问题的应对策略
前端·javascript·算法
罗小罗同学1 小时前
哈工大团队联合德累斯顿工业大学联合发布医学AI智能体综述,讲述计算病理如何从图像分类任务演变成自主诊段工作流
人工智能·分类·数据挖掘·医学图像处理·医学人工智能·医工交叉·医学ai
wincheshe1 小时前
AI Agent 开发学习 --- 框架开发实践(三)
人工智能·学习