主题
MCP
介绍
MCP(Model Context Protocol)就是一套让 AI 模型安全、标准化地调用外部能力的协议。
把它想成 AI 的"USB 接口标准":
- 以前每接一个工具都要单独适配。
- 有了 MCP,只要双方都按协议来,模型就能接入工具。
MCP 解决了什么问题
没有 MCP 时,常见痛点:
- 每个 AI 产品和每个工具都要单独对接,重复开发。
- 工具权限边界不清楚,安全风险高。
- 上下文传递不统一,模型容易"拿不到该拿的数据"。
有了 MCP 之后:
- 对接方式统一,接入工具更快。
- 工具能力可发现、可声明、可约束。
- Host 可以控制权限和调用范围。
核心角色
1. Host(宿主)
就是你在用的 AI 应用,比如编辑器、聊天客户端、IDE 助手。
2. MCP Client
Host 里负责和 MCP Server 通信的客户端模块。
3. MCP Server
把某一类能力暴露给模型的服务,比如:
- 文件读写
- 数据库查询
- Git 操作
- 调用公司内部 API
4. Tool / Resource / Prompt
MCP 常见能力可以理解成三类:
- Tool:可执行动作(比如创建文件、查 issue)。
- Resource:可读取的上下文资源(比如配置、文档、数据库只读内容)。
- Prompt:可复用的提示模板。
一个直观流程
text
用户提问
-> Host 交给模型
-> 模型判断需要调用工具
-> 通过 MCP Client 调 MCP Server
-> Server 执行并返回结果
-> 模型基于结果继续回答重点:模型不是直接乱调系统命令,而是在受控协议里调用已声明能力。
和 Function Calling 的关系
两者不是对立关系。
- Function Calling:更像"模型输出一个函数调用结构"。
- MCP:更像"工具生态和通信标准",包含能力发现、调用、上下文传输等。
简单说:Function Calling 偏调用格式,MCP 偏完整连接标准。
常见使用场景
- 在 IDE 里让 AI 直接读项目文件并改代码。
- 让 AI 查 GitHub issue、提取 PR 信息。
- 让 AI 查询内部知识库、工单系统。
- 让 AI 在安全边界内执行命令或自动化流程。
