MCP的基础知识

一、了解MCP的基础知识

1.函数调用Function Calling

Function Calling是openai在2023年推出的一个非常重要的概念:Function Calling(函数调用)本质上就是提供了大模型与外部系统的交互能力,类似于给大模型安装了一个"外挂工具箱",当大模型自己无法直接回答问题时,他会主动调用预设的函数(如查询天气、计算数据、访问外部数据库)、获取实时的或者精准信息后再生成回复。

如果需要使用Function Calling功能,首先大模型要支持Function Calling功能。openAI在提出Function Calling时并没有提出函数调用的标准。

Function Calling的核心特点:

模型专属:不同模型的调用规则不同。

即时触发:解析用户意图后直接调用工具,简单直接。

协议碎片化:需要为每个模型单独开发适配层。

功能扩展难:新增工具需要重新调整接口。

2.MCP(model context protocol)模型上下文协议

MCP(model context protocol)模型上下文协议是由Anthropic公司推出的一个开放标准协议,目的是为了解决AI模型与外部数据源工具交互的问题。

MCP就像一个"通用插头"或者"USB接口",制定了统一的规范,不管连接数据库、第三方API,还是本地文件等各种外部资源,都可以通过这个"通用接口"来完成,让AI模型与外部工具或者数据源之间的交互更加标准化、可复用,最近,openai也宣布了对MCP提供了支持。

开发者按照 MCP 协议进行开发,无需为每个模型与不同资源的对接重复编写适配代码,可以大大节省开发工作量,另外已经开发出的 MCP Server,因为协议是通用的,能够直接开放出来给大家使用,这也大幅减少了开发者的重复劳动。

比如,你如果想开发一个同样逻辑的插件,你不需要在 Coze 写一遍,再去 Dify 写一遍,如果它们都支持了 MCP,那就可以直接使用同一个插件逻辑。

核心特点

  • 协议标准化:统一工具调用格式(请求/响应/错误处理)
  • 生态兼容性:一次开发即可对接所有兼容MCP的模型
  • 动态扩展:新增工具无需修改模型代码,即插即用

核心价值,解决三大问题

  • 数据孤岛 → 打通本地/云端数据源
  • 重复开发 → 工具开发者只需适配MCP协议
  • 生态割裂 → 形成统一工具市场

类比

  • USB-C 接口:手机/电脑/外设通过统一标准互联

二、MCP的基本使用

从上面 MCP 的架构图中我们可以看到,想要使用 MCP 技术,首先就是得找到一个支持 MCP 协议的客户端,然后就是找到符合我们需求到 MCP 服务器,然后在 MCP 客户端里调用这些服务。

2.1 MCP 客户端(Host)

在 MCP 官方文档中,我们看到已经支持了 MCP 协议的一些客户端/工具列表:

https://modelcontextprotocol.io/clients

从表格里,我们可以看到,MCP 对支持的客户端划分了五大能力,这里我们先简单了解即可:

  • Tools:服务器暴露可执行功能,供 LLM 调用以与外部系统交互。
  • Resources:服务器暴露数据和内容,供客户端读取并作为 LLM 上下文。
  • Prompts:服务器定义可复用的提示模板,引导 LLM 交互。
  • Sampling:让服务器借助客户端向 LLM 发起完成请求,实现复杂的智能行为。
  • Roots:客户端给服务器指定的一些地址,用来告诉服务器该关注哪些资源和去哪里找这些资源。

目前最常用,并且被支持最广泛的就是 Tools 工具调用。

对于上面这些已经支持 MCP 的工具,其实整体划分一下就是这么几类:

  • AI 聊天工具:如 5ire、LibreChat、Cherry Studio
  • AI 编码工具:如 Cursor、Windsurf、Cline
  • AI 开发框架:如 Genkit、GenAIScript、BeeAI

2.2 MCP Server

MCP Server 的官方描述:一个轻量级程序,每个程序都通过标准化模型上下文协议公开特定功能。

简单理解,就是通过标准化协议与客户端交互,能够让模型调用特定的数据源或工具功能。常见的 MCP Server 有:

  • 文件和数据访问类:让大模型能够操作、访问本地文件或数据库,如 File System MCP Server;
  • Web 自动化类:让大模型能够操作浏览器,如 Pupteer MCP Server;
  • 三方工具集成类:让大模型能够调用三方平台暴露的 API,如 高德地图 MCP Server;

下面是一些可以查找到你需要的 MCP Server 的途径:

第一个是官方的 MCP Server 集合 Github 仓库(https://github.com/modelcontextprotocol/servers),里面包含了作为官方参考示例的 MCP Server、被官方集成的 MCP Server 以及一些社区开发的第三方 MCP Server

另外一个是 MCP.sohttps://mcp.so/):一个三方的 MCP Server 聚合平台,目前收录了 5000+ MCP Server:

其提供了非常友好的展示方式,每个 MCP Server 都有具体的配置示例:

相关推荐
易连EDI—EasyLink4 分钟前
易连EDI–EasyLink实现OCR智能数据采集
网络·人工智能·安全·汽车·ocr·edi
冬奇Lab16 分钟前
RAG 系列(二):用 LangChain 搭建你的第一个 RAG Pipeline
人工智能·langchain·llm
学习论之费曼学习法30 分钟前
多模态大模型实战:用 GPT-4o API 打造 AI 助手,能看、能听、能说!
人工智能
昨夜见军贴061639 分钟前
IACheck与AI报告审核,开启供应商资质核验报告审核新篇章
人工智能
m0_726365831 小时前
Ai漫剧系统 几分钟,让AI 把一篇小说变成了一部漫剧成片:从剧本到视频的全流程系统实现
人工智能·语言模型·ai作画·音视频
AIwenIPgeolocation1 小时前
出海应用合规与风控平衡术:可信ID的全球安全实践
人工智能·安全
WordPress学习笔记1 小时前
镌刻中式美学的高端WordPress主题
大数据·人工智能·wordpress
直奔標竿1 小时前
Java开发者AI转型第二十七课!Spring AI 个人知识库实战(六)——全栈闭环收官,解锁前端流式渲染终极技巧
java·开发语言·前端·人工智能·后端·spring
科技社1 小时前
咪咕互娱亮相数字中国峰会:“精品游戏+轻量终端”组合,打开数字娱乐新想象
人工智能
数智化精益手记局2 小时前
拆解物料管理erp系统的核心功能,看物料管理erp系统如何解决库存积压与缺料难题
大数据·网络·人工智能·安全·信息可视化·精益工程