目录

前言

一、什么是 MCP?

二、MCP 核心角色

三、MCP Server 三大能力

1. Tools(工具)—— 可执行动作

2. Resources(资源)—— 只读数据

3. Prompts(提示模板)—— 复用提示词

四、MCP 工作流程

五、三种传输方式

六、典型使用场景

七、MCP 的核心优势

✅ 一次开发,多端复用

✅ 隔离安全

✅ 轻量化

八、MCP 的局限

九、和普通 Function‑Calling 的区别

十、快速开始

环境准备

教程导航

十一、总结


前言

如果你正在开发 AI 应用,或者使用 Claude、Cursor 等 AI 工具,你一定遇到过这样的烦恼:

  • Claude 想读取你电脑上的文件,你需要手动复制粘贴;

  • Cursor 想执行代码,你需要切换到终端;

  • 换了一个大模型,之前写的工具调用代码全部作废;

这些问题,MCP 协议正是为了解决它们而生。


一、什么是 MCP?

MCP(Model Context Protocol) 是由 Anthropic 在 2024 年底开源的一套开放协议,基于 JSON‑RPC 2.0。

简单理解:MCP 就是 AI 生态的 USB‑C 通用接口

它标准化了大模型访问本地文件、数据库、第三方 API 的方式,彻底解决了不同大模型工具调用接口碎片化的问题。

一次开发 MCP Server,所有兼容 MCP 的 AI 客户端(Claude、Cursor 等)都能直接使用。


二、MCP 核心角色

MCP 采用经典的 C/S 架构,包含三个角色:

角色说明示例
MCP HostAI 宿主应用,内置大模型,负责业务交互Claude Desktop、Cursor
MCP Client内嵌在 Host 内部的通信连接器转发请求、接收结果
MCP Server轻量服务程序,封装真实能力,不包含 AI 推理文件读写、数据库查询、API 调用

💡 MCP Server 本身不做推理,只负责执行具体操作并返回数据。


三、MCP Server 三大能力

MCP Server 对外提供三种能力:

1. Tools(工具)—— 可执行动作

可以执行写文件、调用 API、发送邮件、爬虫等有副作用的操作。

python

@mcp.tool()
def write_file(path: str, content: str) -> str:
    with open(path, 'w') as f:
        f.write(content)
    return f"已写入 {path}"

2. Resources(资源)—— 只读数据

提供文档、代码仓库、数据库记录等只读上下文,供模型读取。

python

@mcp.resource("file://docs/readme.md")
def get_readme() -> str:
    return open("README.md").read()

3. Prompts(提示模板)—— 复用提示词

预定义常用提示模板,客户端直接复用。

python

@mcp.prompt()
def code_review(code: str) -> str:
    return f"请对以下代码进行审查:\n{code}"

四、MCP 工作流程

一张图看懂 MCP 的完整调用链路:

text

用户提问 → Host(Claude) → LLM 决策 → MCP Client → MCP Server → 执行操作 → 返回结果 → LLM 整理 → 输出回答

具体步骤:

  1. MCP Server 启动时,向 Client 上报 Tools、Resources、Prompts 清单;

  2. 用户提问,Host 将问题 + 可用工具列表传给大模型;

  3. LLM 判断需要调用外部能力,生成调用指令;

  4. Client 按 MCP 协议请求对应的 MCP Server;

  5. Server 执行操作(读写文件、查数据库、调 API 等);

  6. 原始结果回传给 Client,LLM 整理后输出最终回答。


五、三种传输方式

传输方式适用场景
Stdio(标准输入输出)本地进程通信,最常用,本地 MCP Server 首选
SSE(Server‑Sent Events)HTTP 单向推送,适合远程服务
Streamable HTTP完整 HTTP 双向流式,适合云端部署

六、典型使用场景

场景说明
本地文件操作AI 安全访问电脑目录,无需手动复制粘贴
企业知识库AI 对接内部数据库,不用为每个模型单独开发插件
IDE 智能编程Cursor 读取项目代码、执行脚本、自动修复
Agent 智能体统一对接各类第三方服务,一次开发多端复用

七、MCP 的核心优势

✅ 一次开发,多端复用

一套 MCP Server,Claude、Cursor、以及其他兼容客户端直接使用,省去重复适配。

✅ 隔离安全

大模型不能直接操作本机,所有操作都经过 MCP Server 做权限管控。

✅ 轻量化

专注能力封装,不用内置大模型,部署简单。


八、MCP 的局限

局限说明
无 AI 推理能力MCP Server 仅做能力封装,不包含模型
生态早期主要围绕 Claude,其他模型陆续适配中
远程安全公网部署需要自行处理鉴权和安全防护

九、和普通 Function‑Calling 的区别

对比项Function‑CallingMCP
协议性质大模型厂商私有格式独立开放协议
解耦程度工具绑定特定模型工具与模型完全解耦
复用性每个模型需重新适配一次开发,所有 MCP 客户端通用
部署方式随模型调用工具可独立部署

MCP 让工具服务和大模型彻底解耦,这才是真正的“标准化”。


十、快速开始

环境准备

bash

# 安装依赖
uv sync

# 验证安装
uv run python tutorial/01-getting-started/01_install.py

教程导航

模块内容文件
入门安装验证、第一个服务器、STDIO 客户端/服务端tutorial/01-getting-started/
服务器Tools、Resources、Prompts、上下文、中间件、组合tutorial/02-servers/
客户端客户端基础、传输协议、客户端操作tutorial/03-clients/
部署HTTP 部署、生产环境部署tutorial/04-deployment/

十一、总结

MCP 的出现,标志着 AI 工具调用从“私有协议”走向“开放标准”。

  • 对开发者:一次开发,多端复用

  • 对用户:AI 更安全地访问本地数据

  • 对生态:统一的工具接口标准

无论你是 AI 应用开发者,还是技术爱好者,MCP 都值得你花时间去了解和使用。

更多推荐