MCP 与工具协议知识体系概览
问题
什么是 Model Context Protocol(MCP)?为什么需要统一的 AI 工具协议?
答案
MCP(Model Context Protocol)是 Anthropic 于 2024 年 11 月发布的开放协议,旨在为 AI 模型提供标准化的外部上下文和工具接入方式。它类似于 AI 时代的 USB-C ——让 LLM 应用以统一方式连接各种数据源和工具。
一、为什么需要 MCP?
在 MCP 之前,每个 AI 应用都需要单独实现与外部工具的集成:
二、核心概念导航
| 概念 | 文档 | 说明 |
|---|---|---|
| 协议架构 | MCP 协议架构 | Host/Client/Server 三层架构 |
| 核心原语 | Tools / Resources / Prompts | 三种核心能力 |
| 传输层 | 传输层与通信机制 | stdio / SSE / Streamable HTTP |
| Server 开发 | MCP Server 开发实战 | TypeScript/Python SDK,完整示例 |
| 生态与应用 | MCP 生态与应用场景 | 常用 Server、IDE 集成、企业应用 |
三、MCP 核心架构
| 角色 | 说明 | 示例 |
|---|---|---|
| Host | AI 应用,管理 Client | Claude Desktop、VS Code |
| Client | 协议客户端,1:1 连接 Server | Host 内嵌 |
| Server | 提供 Tools/Resources/Prompts | GitHub Server、DB Server |
四、三种核心原语
| 原语 | 控制方 | 用途 | 类比 |
|---|---|---|---|
| Tools | 模型调用 | 执行操作(API 调用、计算) | POST 请求 |
| Resources | 用户/应用选择 | 读取数据(文件、数据库) | GET 请求 |
| Prompts | 用户触发 | 预定义交互模板 | API 文档 |
五、学习路径
常见面试问题
Q1: 一句话解释 MCP 是什么?
答案:MCP 是 AI 工具调用的标准化协议,让 LLM 应用以统一方式连接外部数据源和工具,类似 AI 的 USB-C 接口。
Q2: MCP 和 Function Calling 的区别?
答案:
- Function Calling 是 LLM 厂商提供的工具调用能力(如 OpenAI 的 function_call),定义了模型如何选择和调用工具
- MCP 是工具提供方的标准化协议,定义了 AI 应用如何发现和连接工具
- 二者互补:模型通过 Function Calling 决策,通过 MCP 连接工具