mcpagetn

1. MCP是什么


MCP(Model Context Protocol)是由Anthropic公司于2024年11月25日通过技术白皮书《Introducing the Model Context Protocol》正式提出的开源协议。该协议通过客户端-服务器架构JSON-RPC 2.0等标准通信协议,实现大型语言模型(LLM)与外部数据源、工具的无缝集成。MCP通过统一协议替代传统”MXN”式开发模式,使AI应用可通过单一接口访问文件、数据库、API、第三方工具等异构资源,降低开发复杂度300%以上。这种设计被类比为”AI领域的USB-C接口”——通过标准化协议实现跨平台兼容性。


MCP(Model Context Protocol)定义与技术特性

1.1. 实现数据互联互通


MCP能够连接本地或云端数据库、文件系统及各类API等丰富资源,使模型可实时读写数据,实现流畅交互,拓宽信息获取与利用边界。同时,MCP允许AI模型调用数据库、API、文件系统等各类外部工具,例如调用数据库查询工具获取特定数据 。

1.2 支持灵活工具调用


MCP赋予AI模型访问和操作外部资源的能力。例如,它能读取本地文件系统中的文件,或调用外部API获取数据。该协议支持AI灵活调用外部工具,如执行常见的Git提交操作、完成复杂的SQL查询任务等,显著增强了AI执行多样化任务的能力,拓展了其功能应用范围 。



1.3 强化上下文感知与生成


MCP能够提供提示信息,助力AI模型更好地理解上下文。比如,在AI模型处理数据前,MCP可给出一些预处理建议。通过预设模板(Prompts),MCP能够引导模型生成高度契合具体场景需求的响应内容,让模型回复更具针对性、专业性与实用性,进而提升用户体验和交互效果。




2. MCP 的架构设计

MCP架构


2.1 MCP Host(主机)


MCP Host 是承载 AI 模型的各类应用程序(例如 Claude DesktopCursor 等)的核心载体。它肩负着多项关键职责:一方面负责接收用户输入的信息,并将 AI 给出的响应清晰、直观地展示给用户;另一方面,它深度集成了 MCP Client 组件,为整个 MCP 生态系统搭建起基础框架。

以用户使用 Claude Desktop 提问的场景为例:当用户在界面上输入问题时,MCP Host 作为中转枢纽,会将这个请求准确无误地传递给内部嵌入的 AI 模型(如 Claude)。而一旦处理过程中涉及到外部资源的调用,MCP Host 会迅速激活 MCP Client,开启与外部资源的交互流程,确保整个交互过程流畅且高效。


2.2 MCP Client(客户端)


MCP Client 紧密内嵌于 Host 环境之中,是实现 Host 与 MCP Server 之间高效通信的核心组件。它在整个 MCP 架构里扮演着桥梁的关键角色,主要致力于建立与 MCP Server 的一对一专属连接,并妥善处理协议通信、用户授权以及权限控制等关键事务。

MCP Client 的主要作用体现为两个方面:
安全认证:为保障通信的安全性与合法性,MCP Client 严格采用先进的认证机制,例如 OAuth 认证方式。通过这种严格的认证流程,确保每一个发起的请求都来自合法的源,有效防止非法访问与恶意攻击,为系统的稳定运行筑牢安全防线。
请求标准化:为了实现不同系统、不同模块之间的无缝交互,MCP Client 承担着将用户输入的信息或者 AI 模型产生的需求,精准无误地转换为 MCP 协议规定格式的重任。它通常会借助如 JSON-RPC 这样的标准协议格式来发送请求,使得信息在传输过程中得以标准化呈现,从而大大提高了系统间的兼容性和交互效率。



2.3 MCP Server(服务端)


MCP Server 属于轻量级的服务程序,肩负着为 AI 系统提供对各类数据源、工具或 API 进行访问的重要使命。在实际应用过程中,它能够执行各种具体的操作任务,包括但不限于读取数据库中的数据、调用 Git 命令进行版本控制等,是 MCP 架构中实现实际功能操作的关键环节。

总体来看,MCP Server 的主要作用体现在三个方面:
提示模板:MCP Server 会预先精心定义一系列工作流模板(Prompts)。这些模板犹如详细的操作指南,能够巧妙地引导 AI 模型根据不同的使用场景,生成高度契合需求的精准响应,极大提升了交互的准确性和有效性。

资源高效管理:为每一个重要的资源(如文件、数据库等),MCP Server 都会分配一个独一无二的 URI(统一资源标识符)。通过这种清晰明确的标识方式,系统能够轻松实现对资源的快速定位,并进行高效的读取或写入操作,确保资源管理的有序性和准确性。

工具灵活调用:MCP Server 会将各类可执行的函数对外开放,例如常用的 SQL 查询语句、Git 操作命令等。这使得 AI 模型能够根据实际需求,动态灵活地调用这些工具,极大地拓展了 AI 系统的功能边界,为复杂任务的处理提供了有力支持 。


2.4 MCP的安全机制设计


采用分层设计实现三重隔离:
客户端(Client):即MCP-Client内嵌于LLM应用(如Claude Desktop),负责协议解析与安全认证;
服务器(Server):即MCP-Server独立运行于本地或云端,通过OAuth等机制实现细粒度权限控制;
资源沙箱:敏感数据仅在本地处理,避免云端暴露。
进一步的,MCP Desktop可以看作是Agent的一个工具集或扩展集。它提供了与MCP服务器交互的界面和功能,使得Agent能够更方便地调用外部资源和工具,完成复杂的任务。具体来说:


3.MCP的具象化理解



3.1 翻译官角色


MCP 宛如一位出色的“翻译官”。在跨语言交流场景中,翻译官起着不可或缺的作用,能帮助不同语言背景的人顺畅沟通。与之类似,MCP 在 AI 领域扮演着类似的关键角色,致力于搭建起 AI 模型(例如广为人知的 Claude)与外部数据源和工具之间的沟通桥梁。
在实际的交互过程中,MCP 承担着复杂的“翻译”工作。一方面,它能把外部资源所使用的特定“语言”,像数据库查询语言以及 API 调用指令等,精准无误地转化为 AI 模型能够轻松理解的清晰指令;另一方面,它还可以将 AI 模型输出的信息,转换为外部资源可以接受的格式,从而实现双向的无障碍交流,确保整个系统的高效协作

3.2 万能插座角色


MCP 还可以被视作一个功能强大的“万能插座”。在日常生活里,USB-C 接口凭借其标准化的设计,让各种各样的电器都能轻松连接到电脑上,为设备间的互联互通提供了极大便利。同样地,MCP 为外部工具和数据源与 AI 模型之间搭建了类似的标准化连接通道。借助这一特性,开发者无需为每个工具或数据源单独开发适配程序,只需利用 MCP 提供的统一标准化接口,就能便捷地将各类外部工具和数据源接入 AI 模型。这不仅大大降低了开发难度和工作量,还显著提升了系统的集成能力和灵活性,为构建多样化的 AI 应用提供了坚实基础 。





4. MCP与Agent的关系


MCP(Model Context Protocol,模型上下文协议)是一个开放标准协议,主要用于规范AI应用程序与外部数据或工具之间的通信。它采用客户端-服务器架构,提供统一的接口来连接各种数据源和工具,用于标准化大语言模型(LLM)与外部数据源和工具的连接方式。Agen是一个智能系统,能够自主运行以实现特定目标。它利用MCP提供的功能描述来理解上下文,并在各种平台/服务中自动执行任务。MCP与Agent之间的关系可以理解为协同工作的两个独立实体。MCP Desktop可以看作是Agent的一个工具集或扩展集。它提供了与MCP服务器交互的界面和功能,使得Agent能够更方便地调用外部资源和工具,完成复杂的任务。

4.1 MCP和Agent的共同点


目标一致:MCP 和 Agent 的目标都是让 AI 更加智能、更加实用。它们都为 AI 模型提供了与外部世界交互的能力,从而扩展了 AI 模型的应用场景。
依赖关系:Agent 可以利用 MCP 提供的标准化接口来调用外部工具和服务,从而实现更复杂的任务。


4.2 MCP和Agent的区别


1. 定位与层次:
MCP是协议层的基础设施,它关注的是如何标准化 AI 模型与外部世界的交互方式。它是 AI 生态中的“桥梁”和“粘合剂”。MCP提供了标准化的接口,使得Agent能够方便地调用各种外部工具和数据源。MCP就像一个“万能插座”,将不同的工具和数据源连接到Agent上。

Agent:是应用层的实体,它利用 MCP 等能力来执行具体任务。它是 AI 应用中的“智能工人”和“决策者”。Agent利用MCP提供的接口,自主决策并执行任务。Agent可以根据上下文和模型的推理,判断是否需要调用某个服务,然后使用function calling执行函数。

2. 功能与特性:
MCP主要提供上下文管理、工具调用和数据访问等能力。它让 AI 模型能够“看到”和“操作”外部世界。
Agent则具备自主决策、任务拆解、动态调整策略等更高级别的功能。它能够根据用户的需求和上下文信息来制定执行计划,并调用相应的工具和服务来完成任务。
3. 交互方式:
MCP采用被动服务模式,仅在接收到请求时返回数据。它不会主动发起交互,而是等待 AI 模型或外部系统的调用。MCP本身不能主动执行任务,需要Agent或客户端来调用它。MCP服务器需要Agent的请求才能执行相应的操作。
Agent则具备高自主性,不仅可以主动调用工具和服务,还能与用户进行双向交互。它能够根据用户的需求和反馈来调整执行计划,并实时向用户报告任务进展情况。Agent可以通过MCP协议与外部数据源和工具进行交互,从而扩展其功能和能力。

4.3 MCP和Agent如何协同


MCP:就像是一个工具箱,里面装满了各种工具(如爬虫、数据库查询等)。AI 模型可以通过 MCP 来调用这些工具,但具体如何使用这些工具来完成任务,则需要由 Agent 来决定。

Agent可以被看作是一个“智能工人”。它具备自主决策和执行任务的能力。例如, Agent可以根据用户的需求,自动选择合适的工具和数据源来完成特定的任务。Agent也可以被看作是一个“项目经理”。它负责协调和管理各种资源和工具,确保任务能够高效地完成。例如,一个旅游规划 Agent 可以利用 MCP 调用航班查询、酒店预订、天气 API 等服务,为用户规划个性化的旅行行程。


协同工作的具象化示例:

假设你正在使用Claude进行一个复杂的项目管理任务,需要从多个外部数据源获取数据,并进行分析和整合。流程围绕Agent(Claude)利用MCP服务器完成从多个外部数据源获取数据并进行整合分析的任务展开,涉及任务分解、MCP服务器配置、服务调用、数据处理及结果输出等多个关键步骤。

1. 任务分解
初始阶段,Agent(Claude)接收用户发起的任务请求,此任务旨在从多个外部数据源采集数据并加以整合分析。随后,Agent 会将这个复杂的任务细化为多个子任务,具体涵盖从数据库 A 中提取数据、通过 API B 检索数据以及从文件系统 C 中读取文件等操作。

2. 配置 MCP 服务器
用户需在 Claude 平台上为各个外部数据源配置对应的 MCP 服务器。例如,专门配置一个 MCP 服务器来建立与数据库 A 的连接,再配置一个用于对接 API B,另外配置一个用于访问文件系统 C 。这些 MCP 服务器各自承担着与特定外部数据源通信的重任,并为 Agent 提供标准化接口,以便 Agent 能够顺利调用。

3.调用 MCP 服务
在执行任务过程中,Agent 依据任务的具体需求,借助MCP协议与相应的MCP服务器展开通信。比如,Agent 向负责数据库A的MCP服务器发送查询指令,从而获取所需数据。MCP服务器接收到请求后,会执行一系列操作,从对应的外部数据源中提取数据,并把结果返回给 Agent。

4.数据处理
当Agent接收到各MCP服务器返回的数据后,便开始进行整合与分析工作。例如,Agent 会对来自数据库 A 和 API B 的数据进行细致比对,进而生成一份综合报告。此外,Agent 还能够充分利用 MCP 提供的提示信息,对数据处理流程进行优化,以此提升处理效率。

5.结果输出
在完成数据处理后,Agent 会将最终的分析结果以合适的形式呈现给用户,如生成一份内容详实的报告或者直观易懂的图表。用户可以通过 Claude 平台查看这些结果并进行深入分析,从而顺利完成项目管理任务。

MCP 与 Agent 的角色定位
通过上述整套流程,MCP 充当了“工具箱”与“翻译官”的角色,为 Agent 赋予了与外部数据源和各类工具交互的能力。而 Agent 则相当于“智能工人”与“项目经理”,借助 MCP 所提供的工具资源,高效且妥善地完成复杂任务 。


5.MCP技术演进与生态影响


自发布以来,MCP以每月超50项社区贡献的速度快速发展,截至2025年3月已覆盖20+行业场景,包括:
企业级应用:Block通过MCP实现业务数据与AI助手的实时交互,决策效率提升50%;
开发者生态:GitHub涌现”MCP Marketplace”等平台,支持一键部署社区贡献的服务器扩展;
技术标准竞争:与OpenAI Function Calling形成差异化路径,通过中立协议生态构建”AI安卓”体系。

当前MCP已从初创协议发展为连接百万级终端的开放标准,其发展速度印证了Anthropic创始人迈克·克里格的预言:”MCP将成为智能体时代的’数字神经网络'”。

One thought on “mcpagetn

  • 2026-03-05 at 20:54
    Permalink

    codex –oss
    codex –oss -m
    使用上下文长度超过约 25k 的模型(和服务器/模型设置)。像 Claude Code 这样的工具会消耗大量上下文。

    Reply

回复 kind 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注