mcp协议是什么?用装一次 MCP 的时间彻底搞懂它
最近在研究MCP, 所以最近自己装了一个 Excel MCP踩了 5 个坑才跑通。回头才发现问题出在没搞懂 MCP 的本质。这篇文章我会把我踩的坑、搞懂的概念全分享出来看完会让你少走很多弯路如果感觉有帮助麻烦帮忙点点赞关注一下。一、为什么你需要 MCP用 AI 写代码的同学都有这个感受AI 只能跟你聊干不了活。想让 AI 操作 GitHub写一套集成代码。想连 Slack再写一套。想读本地 Excel再写一套。这就是痛点每加一个新工具就要跟所有服务重新对接。N 个工具 × M 个服务 N×M 套代码。MCP 把这个复杂度从 N×M 降到 NM左边任意一个 AI 客户端通过 MCP 协议就能调用右边任意一个服务。加一个服务所有客户端都能用。一个协议搞定所有工具。二、5 分钟装一个 MCP理论讲完了动手装一个。以 Excel MCP 为例——不需要装 Excel装完就能让 AI 直接操作你的表格。第一步装 uvpip install uv验证uv--version第二步测试能跑uvx excel-mcp-server stdio挂起不报错 正常。CtrlC退出。第三步接入 Claude Codeclaude mcp add excel--scope user--uvx excel-mcp-server stdio第四步验证claude mcp list看到excel说明接上了。重启 Claude Code问一句你能操作 Excel 吗验证。踩坑记录问题原因解决uvx找不到PATH 没刷新关掉 PowerShell 重开装到错误的项目下没加--scope user加--scope user才是全局装完没显示没重启 Claude Code完全退出再打开三、那条命令到底啥意思claude mcp add excel --scope user -- uvx excel-mcp-server stdio拆开来理解claude mcp add excel→ 给 Claude 注册一个叫 “excel” 的服务--scope user→ 全局生效不写就只在当前项目有效--→ 分隔符后面是启动命令uvx excel-mcp-server stdio→ 用 uvx 跑这个包走 stdio 传输三个关键点--scope user不能省不然换个目录就失效--分隔符必须有不然 Claude 不知道哪部分是启动命令装完必须重启不然 Claude 读不到新配置Windows 用户注意这条命令不需要cmd /c因为uvx是原生可执行文件。只有npx才需要cmd /c包装。四、本地 MCP 和远程 MCP 有什么区别MCP 本身不区分本地/远程它只定义了传输层——数据怎么在 AI 和 Server 之间传。本地stdioAI 客户端 ──启动进程──→ MCP Server你电脑上的进程 ←──stdin/stdout──Server 是你电脑上的独立进程数据走进程间通信不经过网络能读你本地文件断网也能用远程HTTPAI 客户端 ──HTTP请求──→ 远程服务器别人托管的 ←──HTTP响应──Server 跑在别人服务器上数据走网络必须联网一句话判断资源在哪Server 就在哪。你要干嘛选哪个读本地 Excel本地操作本地代码仓库本地调 GitHub API两种都行本地跑 配 Token不想装任何环境远程用别人托管的GitHub MCP、Slack MCP 虽然调远程 API但进程本身跑在你电脑上所以是本地 MCP。判断标准是进程谁启不是连哪里。五、MCP 通信模型你装了多个 MCP Server 之后架构是这样的记住几个事实Client 只有一个内置在 Claude Code 里不是独立进程Server 有 N 个你装了多少个就有多少个独立进程Server 之间不通信必须通过 Client 中转数据格式统一JSON-RPC 2.0生命周期打开 Claude → 读配置 → 启动所有 Server → 建立长连接 → 关 Claude → 所有 Server 终止。一句话总结本地 MCP 你电脑上的插件进程远程 MCP 别人托管的 API。选哪个看你的文件在哪个机器上。下一篇我会写10 个最实用的 MCP Server 推荐从安装到真实使用场景。关注「AI笔记Pro」不错过。你装 MCP 踩过什么坑评论区聊聊。附录速查表收藏这篇下次装 MCP 直接翻。Claude Code MCP 命令命令作用claude mcp list列出已配置的服务器claude mcp add添加服务器claude mcp remove删除服务器claude mcp get查看单个服务器详情分享几个查询MCP的网站常见的MCP都能找到官方仓库MCP.soPyPI 搜索Awesome MCP