MCP 是什么?AI 编程工具接入实战入门(2026)
这一两年用 AI 编程工具的人,几乎都绕不开一个缩写:MCP。给 Claude Code 接一个能读数据库的 MCP 服务器、给 Cursor 装一个能查 GitHub 的 MCP……到底 MCP 是什么?它解决了什么问题、又该怎么用?这篇文章用大白话讲清 MCP 的来龙去脉、工作原理,并手把手演示如何给 Claude Code 和 Cursor 接入一个 MCP 服务器,看完你就能自己动手。
MCP 是什么:AI 世界的「USB-C 接口」
MCP 全称 Model Context Protocol(模型上下文协议),是 Anthropic(Claude 的母公司)在 2024 年 11 月推出的一个开放标准。它要解决的问题很具体:让大模型能用一套统一的方式,去连接外部的数据和工具——读文件、查数据库、调 API、操作浏览器等等,而不必为每个工具、每个模型都单独写一套对接代码。
一句话定义
MCP 是一套开放协议,规定了「AI 应用」和「外部工具/数据源」之间该怎么对话。官方的比喻是:MCP 就像 AI 应用的 USB-C 接口——有了这个统一接口,任何模型都能即插即用地接上任何兼容的工具,不用再为每个组合做定制适配。
为什么需要 MCP:告别 N×M 的对接地狱
在 MCP 出现之前,想让 AI 用上某个外部能力,往往要为「某个模型 × 某个工具」单独写一段集成代码。有 N 个工具、M 个客户端,理论上就要写 N×M 套对接,重复劳动严重、还难以复用。MCP 把这件事标准化了:
- 工具方只需把能力封装成一个标准的 MCP 服务器,所有支持 MCP 的客户端都能用,不用重复对接。
- 客户端(编程工具)只要实现一次 MCP,就能接入整个 MCP 生态里成百上千个现成服务器。
- 协议开放、与厂商无关:Claude Code、Cursor、Windsurf、VS Code、Cline 等都已支持,换工具不用换服务器。
工作原理:主机、客户端、服务器三件套
MCP 采用经典的客户端—服务器架构,涉及三个角色。理解了这三者的关系,后面配置时就不会晕:
| 角色 | 是谁 | 干什么 |
|---|---|---|
| 主机 Host | 你用的 AI 应用,如 Claude Code、Cursor | 发起需求、承载大模型,决定要不要调用某个工具 |
| 客户端 Client | 主机内部与每个服务器一一对应的连接器 | 和某个 MCP 服务器保持 1 对 1 的连接、收发消息 |
| 服务器 Server | 一个轻量程序,如文件系统、GitHub、数据库服务器 | 对外暴露具体能力,等着被调用 |
MCP 服务器主要对外暴露三类东西:Tools(可被模型调用的动作,比如「查询数据库」「创建 issue」)、Resources(可读取的数据,比如文件内容、记录)、Prompts(预置的提示词模板)。其中 Tools 最常用,也是你日常感知最强的部分。
两种传输方式:stdio 与 Streamable HTTP
MCP 客户端和服务器之间怎么传消息?目前标准里有两种传输方式,选哪种取决于服务器跑在本地还是远程。
| 传输方式 | 适用场景 | 说明 |
|---|---|---|
| stdio(标准输入输出) | 本地工具 | 服务器作为本地子进程启动,通过标准输入输出通信,延迟低、最常见,本地工具基本都用它 |
| Streamable HTTP | 远程服务 | 通过单一 HTTP 端点连接远程服务器,支持 OAuth 2.1 授权,是远程部署的推荐方式 |
旧的 HTTP+SSE 已被弃用
早期 MCP 还有一种 HTTP+SSE 传输,已于 2025 年被官方弃用、改由 Streamable HTTP 取代,只为向后兼容保留一段过渡期。如果你看到老教程让你配 SSE,优先改用 Streamable HTTP。(具体弃用时间线以官方规范为准)
实战一:给 Claude Code 接一个 MCP 服务器
Claude Code 用 claude mcp 命令管理 MCP 服务器,最简单。基本语法是 claude mcp add [选项] <名字> -- <启动命令>,注意 -- 之后是真正用来启动服务器的命令。
# 添加一个本地 stdio 服务器(以官方文件系统服务器为例,允许 AI 读写指定目录)
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem ~/projects
# 添加一个远程 Streamable HTTP 服务器
claude mcp add --transport http my-server https://example.com/mcp
# 查看已配置的服务器 / 删除某个服务器
claude mcp list
claude mcp remove filesystemClaude Code 的 MCP 配置有三种作用域,决定配置写到哪、谁能用:
- local(默认):只在当前项目、当前机器生效,存在用户主目录的配置里。
- user:对当前机器上你的所有项目生效(全局)。
- project:写入项目根目录的 .mcp.json,可以提交到 Git,团队成员拉下来就共用同一套配置。
用 --scope project 时,Claude Code 会把配置写进项目根目录的 .mcp.json;想团队共享就选它。配完后在 Claude Code 里就能直接让模型调用这些工具了。
实战二:给 Cursor 接 MCP 服务器
Cursor 通过一个 mcp.json 配置文件管理 MCP。全局配置放在用户主目录的 ~/.cursor/mcp.json(Windows 是 %USERPROFILE%\.cursor\mcp.json);只想给某个项目用,就在项目根目录建 .cursor/mcp.json。格式是一个 mcpServers 对象,每个键是服务器名字:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/me/projects"]
}
}
}也可以走图形界面:打开 Cursor 设置(Cmd/Ctrl + ,),找到 MCP,点「Add New MCP Server」填名字和命令即可。两点容易踩坑:一是部分版本里「Enable MCP Servers」开关默认是关的,要先打开并重启 Cursor;二是 JSON 一定要合法,少个逗号或括号会让整份配置静默失效。
安全红线:只装可信来源的 MCP 服务器
MCP 服务器本质是在你机器上跑的程序,能读你的文件、调你的 API。来路不明的服务器可能被植入恶意指令(prompt injection),诱导 AI 泄露密钥或执行危险操作。务必只安装官方或可信开源项目的服务器,密钥统一放环境变量、不要硬编码进配置,涉及敏感数据的操作保持人工确认。
常见的 MCP 服务器有哪些
- 文件系统:让 AI 在你授权的目录里读写文件。
- GitHub / GitLab:查 issue、提 PR、读仓库代码。
- 数据库(PostgreSQL、SQLite 等):让 AI 直接查询你的数据。
- 浏览器自动化(如 Playwright):让 AI 打开网页、抓取内容、做端到端测试。
- 各类 SaaS(Notion、Slack、Sentry、Figma 等)官方陆续推出的 MCP 服务器。
想找现成服务器,可以去官方的 MCP servers 仓库,或社区维护的 MCP 服务器目录里按需挑选。
搞懂 MCP,相当于拿到了让 AI 编程工具「连接真实世界」的钥匙——它正在成为 Claude Code、Cursor 这类工具的标准底座。真正把它用好,还需要结合具体工具的工作流和项目实践去打磨。如果你想系统地学会用 AI 工具做出真正能落地的产品,欢迎来 IMAI 看看我们的体系化实战课程。
想系统学会用 AI 编程,从入门到做出真实产品?
查看系统课程