建网站 选安全网页设计代码单元格内容怎么居中
目录
一、MCP 诞生的背景与要解决的问题
二、MCP 的核心概念与工作原理
工作流程(以 Claude 询问今日天气为例):
三、MCP 的主要功能
四、MCP 的核心优势与价值
五、MCP 与其他技术的区别
六、现状与未来展望
总结
MCP 是一个由 Anthropic 主导开发的开放协议,旨在标准化大型语言模型(LLM)与外部工具、数据源和计算资源之间的连接方式。它的核心思想是让模型能够安全、可控地“看到”和“使用”外部系统,从而极大地扩展模型的能力,而不需要为此重新训练模型。
你可以把它想象成 LLM 世界的 USB 协议 或 应用商店:它定义了一套标准接口,使得任何开发者都能为模型创建“外设”(工具和数据源),而模型则可以即插即用地使用它们。
一、MCP 诞生的背景与要解决的问题
在 MCP 出现之前,让 AI 模型使用外部功能主要有两种方式,但它们都存在局限性:
1.函数调用(Function Calling):
-  问题:需要将工具的功能和参数格式预先“硬编码”到给模型的系统提示(System Prompt)中。每增加、修改或删除一个工具,都需要重新调整提示词和代码,缺乏灵活性和可扩展性。 
2.插件系统(Plugin Systems):
-  问题:通常是某个特定模型或平台(如 OpenAI ChatGPT Plugins)独有的。为一个平台开发的插件无法直接用在另一个平台上,造成了生态割裂和开发者的重复劳动。 
MCP 的目标就是解决上述问题:
-  标准化:提供一套与模型无关的通用协议。 
-  解耦:将工具/数据源的开发与模型本身分离开。 
-  安全性:提供明确的权限控制和安全边界。 
-  可扩展性:轻松地添加新的工具和数据源,而无需修改模型代码。 
二、MCP 的核心概念与工作原理
MCP 的架构主要包含三个核心组件:
-  MCP 客户端(Client): -  通常指大型语言模型及其运行的界面(如 Claude Console, Third-party AI apps)。 
-  客户端的职责是发起请求,例如“请查询一下数据库X”、“请执行工具Y”。 
 
-  
-  MCP 服务器(Server): -  这是一个独立的进程,负责管理具体的工具(Tools) 和资源(Resources)。 
-  例如,一个“数据库服务器”可以提供“执行SQL查询”的工具;一个“文件系统服务器”可以提供“读取文件”的资源。 
-  服务器可以由任何人开发,只要它遵循 MCP 协议。 
 
-  
-  MCP 协议(Protocol): -  定义客户端和服务器之间如何通信的规范。它基于 JSON-RPC 2.0 over SSE(Server-Sent Events) 或 stdio。 
-  规定了通信的消息格式、可调用的方法(如 tools/list,tools/call,resources/read)和数据类型。
 
-  
工作流程(以 Claude 询问今日天气为例):
-  初始化:Claude(客户端)启动时,会连接到用户预先配置好的“天气服务”MCP 服务器。 
-  发现:Claude 向服务器发送 tools/list请求,询问:“你有什么能力?”服务器回复:“我有一个叫get_weather的工具,它需要location参数。”
-  请求:当你问 Claude “旧金山今天天气如何?”时,Claude 决定调用这个工具。它向服务器发送 tools/call请求,参数为{“name": "get_weather", "arguments": {"location": "San Francisco"}}。
-  执行:天气服务器收到请求后,执行内部逻辑(例如调用一个第三方天气API),获取旧金山的天气数据。 
-  响应:服务器将天气数据按照标准格式返回给 Claude。 
-  回复:Claude 接收到结构化的天气数据,组织成自然语言回复给你:“旧金山今天晴间多云,气温在15-20摄氏度之间。” 
这个过程对用户是完全透明的,你只需要和 Claude 对话,它会在背后自动完成与 MCP 服务器的所有交互。
三、MCP 的主要功能
MCP 主要定义了两种类型的扩展:
-  工具(Tools): -  允许模型执行一个动作。 
-  示例:执行代码、发送邮件、在日历上创建事件、控制智能家居、下单购物。 
-  对应 tools/call方法。
 
-  
-  资源(Resources): -  允许模型读取(或订阅)外部数据源的内容,将其作为上下文信息。 
-  示例:读取本地文件、查询数据库、获取实时股票价格、连接公司内部的Wiki或CRM系统。 
-  对应 resources/read或resources/subscribe方法。
 
-  
四、MCP 的核心优势与价值
-  突破模型固有局限: -  让模型能够访问训练截止日期之后的新信息(实时数据)。 
-  让模型能够处理其未见过的大量私有或专有数据(公司内部文档),而无需昂贵的微调。 
-  赋予模型执行动作的能力,从“只会说”变成“能说能做”。 
 
-  
-  强大的安全性与可控性: -  用户完全控制模型可以连接哪些服务器。模型不能随意访问未经授权的资源。 
-  通信通常发生在本地或受信任的网络环境中,敏感数据不必发送到第三方API。 
-  实现了最小权限原则,例如一个“计算器工具”服务器只能做数学计算,无法访问你的文件。 
 
-  
-  繁荣的生态系统: -  对开发者友好:只需编写一次 MCP 服务器,理论上所有支持 MCP 的模型和应用(如 Claude, Cline, MCP Hub)都能使用它。 
-  开源与开放:协议本身开源,鼓励社区贡献和创新。现在已经有了大量开源的 MCP 服务器实现,用于连接 GitHub, Jira, PostgreSQL, 本地文件系统等。 
-  对企业级应用至关重要:企业可以为其内部系统(数据库、API、知识库)开发自定义的 MCP 服务器,让员工能通过自然语言安全地与这些系统交互。 
 
-  
-  降低成本和提高效率: -  无需为了每一个新功能去微调或重新训练大模型。 
-  开发一次,多处使用。 
 
-  
五、MCP 与其他技术的区别
-  vs. Function Calling:MCP 是外部的、动态发现的协议;而 Function Calling 通常是内嵌在模型API中的、需要预先定义的。 
-  vs. ChatGPT Plugins:Plugins 是 OpenAI 特定的封闭生态;MCP 是开放、跨模型的协议。 
-  vs. LangChain/ToolCalling:LangChain 是一个用于构建链的高层次框架,它本身可以利用 MCP 作为其底层工具调用的一种方式。MCP 是更底层的协议标准。 
六、现状与未来展望
-  当前支持:MCP 由 Anthropic 大力推动,已在其产品 Claude Desktop 应用中全面集成。用户可以通过编辑一个简单的配置文件( claude_desktop_config.json)来添加自己需要的 MCP 服务器。
-  社区发展:一个名为 MCP Hub 的社区项目正在兴起,类似于一个“服务器商店”,让用户可以轻松发现和安装各种功能的 MCP 服务器。 
-  未来方向:MCP 正在迅速成为 AI 应用架构中连接模型与外部世界的事实标准。预计未来几乎所有主流的 AI 助手和应用都会原生支持 MCP,使其成为AI基础设施的关键组成部分。 
总结
MCP(Model Context Protocol)是一个革命性的开放协议,它通过标准化 LLM 与外部工具和数据源的交互方式,安全、高效地打破了AI模型的“信息茧房”和“无能之困”。它不仅是技术上的进步,更是生态和理念上的开放,为构建真正强大、实用且可控的AI应用奠定了坚实的基础。
