MCP全称为Model Context Protocol,是一种专为大模型开放的统一开放接口。

开源地址:https://github.com/openai/openai-agents-python

MCP介绍

**MCP的核心框架一共由模型、上下文、协议三个关键部分组成:**模型是系统的逻辑核心,定义了数据的结构、决策的逻辑以及系统如何解释信息。模型是系统的基础,决定了系统如何处理和理解数据。

  1. 在传统软件开发中,模型可以通过面向对象编程模型、数据库架构或AI/ML模型来实现。
  2. 在AI应用中,模型可能是理解语言的神经网络、处理图像的深度学习模型,或者是进行预测分析的机器学习算法。
  3. 在企业软件中,模型可能是指导客户互动的实体关系模型。

上下文为模型提供了运行的环境,决定了模型在不同条件下的行为。包括用户交互、环境因素和系统状态等变量。

协议是通信的桥梁定义了系统内不同组件之间的交互规则。确保了模型和上下文之间的通信,使得上下文的变化能够正确影响模型。协议确保了分布式环境中的数据一致性、安全性和效率。

  1. 协议管理微服务之间的数据交换。
  2. AI组件之间的交互。
  3. Web应用中的API通信。

MCP和Agent的联系

MCP为Agent提供了标准化的方式来接入各种工具和数据源,极大地减少了Agent与不同工具集成时的复杂性,并且由于MCP定义了清晰的协议,Agent可以轻松地接入新的工具和服务,而无需对Agent的核心逻辑进行大量的修改,这使得Agent能够快速适应新的应用场景和需求。

MCP还为Agent带来了动态工具发现的能力,每次Agent运行时,SDK会调用MCP服务器的方法,动态获取当前可用的工具列表。这种机制赋予了Agent极高的灵活性和适应性,如果工具列表发生变化,Agent可以立即感知并调整其行为,从而更好地应对动态的环境和需求。

MCP支持对工具列表进行缓存,Agent可以在多次运行中复用工具列表,减少每次运行时调用工具的延迟,能够显著提升Agent的自动化效率。同时Agent仅在需要时调用MCP服务器的工具,而不是在初始化时加载所有工具。这种按需调用的方式可以减少资源消耗,提高系统的整体性能。

MCP服务示例

Firecrawl MCP服务:提供数据抓取、网页爬虫、深度研究、提取结构化数据等

Browserbase MCP服务:创建浏览器会话、导航至指定 URL、截取屏幕截图等。

Brave MCP:本地搜索、网络搜索等。