什么是模型上下文协议(MCP) | Cohere
模型上下文协议(MCP)是一个开放标准,帮助AI应用连接企业系统,简化数据访问和操作执行。本文详解MCP的工作原理、与API、RAG、函数调用及代理的区别、常见用例和安全考虑。
企业AI系统正变得越来越强大,但若无法访问正确的数据、工具和工作流,其能力将受到限制。模型上下文协议(Model Context Protocol,简称MCP)通过为工程团队提供一种标准方式,将AI应用连接到经授权的企业系统,从而弥补了这一差距。
什么是MCP及其重要性
MCP是一个开放标准,帮助AI应用访问外部系统(如数据库、文档存储库、业务应用和工作流平台)中的数据并执行定义的操作。MCP本身不是模型、代理或数据库,而是位于AI堆栈的应用和集成层中的协议,减少了为AI应用与所需业务系统构建单独集成的需要。
随着组织从孤立的AI试点转向需要与实时企业系统协同工作的应用,MCP变得尤为重要。通过为团队提供构建这些集成的通用方式,MCP使AI应用更易于扩展、维护和适应企业需求的变化。
MCP的工作原理
MCP采用客户端-服务器架构,涉及主机、客户端、服务器和传输机制。在此架构中,AI应用充当主机,MCP客户端将主机连接到MCP服务器。一个主机可以同时连接多个MCP服务器,每个服务器连接由一个独立的MCP客户端管理。
主要组件包括:
- 主机:用户与之交互的AI应用或环境,如助手、集成开发环境(IDE)或内部企业AI工具。
- 客户端:主机内部负责维护与特定MCP服务器连接的组件。
- 服务器:暴露选定上下文或功能的程序,通常来自外部系统,例如数据库、文档存储库、SaaS应用或工作流平台。
- 传输机制:客户端与服务器之间的通信方法,如用于本地连接的stdio或用于远程连接的Streamable HTTP。
MCP服务器可以暴露三类主要功能:
- 资源:AI应用可使用的上下文信息,如文件、记录、模式或系统特定数据。
- 工具:AI应用可调用的定义函数,例如查询数据库、调用API或更新业务系统。
- 提示:服务器提供的可重用模板或结构化指令,用于特定交互或工作流。
一旦主机连接到配置的MCP服务器并发现其能力,AI应用即可在需要外部上下文或操作时使用相关服务器。MCP客户端向该服务器发送结构化请求,服务器返回请求的上下文或执行定义的操作,AI应用随后在回答或工作流中使用响应。
MCP与API、RAG、函数调用及代理的比较
MCP与API、检索增强生成(RAG)、函数调用和代理相关,但每个概念解决的是AI应用在信息访问、工具使用或任务完成方面的不同问题。
- API:API让软件系统暴露数据或功能。MCP不替代API;MCP服务器可以调用现有API,并以AI应用可发现和使用的格式呈现选定能力。
- RAG:RAG帮助AI系统在生成响应前检索相关信息。MCP本身不是检索方法,但可为AI应用提供访问知识库、文档存储库、数据库及其他上下文来源的标准方式。MCP还可支持更广泛的工作流,包括工具使用和操作导向任务。
- 函数调用:函数调用让模型或AI应用请求预定义函数。MCP不是函数调用机制本身;它标准化了工具和函数在MCP服务器上的暴露方式,以便兼容应用发现并使用它们。
- 代理:代理常利用模型、工具、记忆和编排逻辑来完成任务。MCP不是代理框架,但可为代理提供访问所需工具和系统的标准方式。
常见企业MCP用例
MCP用例通常出现在AI应用需要访问企业上下文、执行定义操作或跨业务系统协调两者时。常见示例包括:
- 客户支持:支持团队可使用启用MCP的助手访问工单历史、账户记录、订单状态、产品文档和内部策略,随后汇总案例上下文、回答客户问题或创建/更新支持工单。
- 销售与客户管理:销售团队可使用AI助手检索账户详情、汇总近期客户互动、检查CRM记录或根据销售数据起草跟进信息。
- 财务报告:财务团队可使用AI应用从授权数据库、电子表格或报告工具中检索相关指标,汇总变化并协助准备定期报告。
- IT事件管理:技术团队可使用运营工具或代理访问监控工具、日志、事件平台和内部运行手册,协助调查告警、比较新旧事件、汇总可能原因或创建后续工单。
在这些示例中,AI应用负责推理、汇总或工作流逻辑,而MCP提供应用与关联企业系统之间的连接层。
MCP安全与实施考虑
MCP可使AI应用更容易连接到企业系统,但不会默认使这些连接安全。由于MCP服务器可以向AI应用提供数据和工具能力,团队需要决定每个服务器应提供什么、谁可以使用以及如何控制访问。
企业团队应特别注意:
- 访问控制:定义哪些用户、应用和工作流可以访问每个MCP服务器,应用最小权限原则,并决定访问应为只读还是允许操作。
- 身份验证与授权:确保MCP连接经过身份验证,且用户或应用只能访问其授权的能力。
- 服务器信任:在将第三方、开源或供应商提供的MCP服务器连接到敏感系统之前进行审查。
- 工具与操作安全:将写操作、工作流触发、记录更新和消息发送能力视为比只读上下文访问更危险,并要求对敏感或不可逆操作进行人工审批。
- 日志记录与监控:跟踪使用的MCP服务器、调用的工具、请求的数据、执行的操作以及是否出现错误或异常使用模式。
- 部署与维护:决定MCP服务器是本地运行还是远程运行,是自行托管还是由供应商管理,并随着内部系统、API和安全要求的变化计划更新。
关键点是MCP可以降低集成复杂性,但不能消除对精心设计的安防和运营治理的需求。
评估企业AI的MCP?
北(North)帮助组织将代理、工具、权限和监控整合到一个受管控的工作空间中,包括基于角色的访问控制(RBAC)和工具使用可见性。
联系我们:了解受管控的AI工作流。
联系销售
关于MCP的常见问题
MCP对企业使用足够安全吗?
MCP可以安全地用于企业环境,但不是默认安全的。安全性取决于团队如何配置身份验证、授权、权限、服务器信任、日志记录、监控以及对敏感操作的审批流程。
企业需要构建自己的MCP服务器吗?
不一定。企业可以使用现有的、供应商提供的或开源的MCP服务器,只要这些服务器满足安全和功能要求。自定义MCP服务器在需要连接专有系统、强制组织特定权限或以更可控方式暴露内部工作流时最为有用。
MCP服务器应本地运行还是远程运行?
MCP服务器可以本地或远程运行。本地服务器常见于开发者工具和基于工作站的工作流。远程服务器通常更适合集中管理的企业系统,但需要更强的身份验证、授权、监控和部署控制。