mcp协议是什么?用装一次 MCP 的时间彻底搞懂它

最近在研究MCP, 所以最近自己装了一个 Excel MCP,踩了 5 个坑才跑通。回头才发现,问题出在没搞懂 MCP 的本质。

这篇文章我会把我踩的坑、搞懂的概念,全分享出来,看完会让你少走很多弯路,如果感觉有帮助,麻烦帮忙点点赞,关注一下。


一、为什么你需要 MCP

用 AI 写代码的同学都有这个感受:AI 只能跟你聊,干不了活。

想让 AI 操作 GitHub?写一套集成代码。想连 Slack?再写一套。想读本地 Excel?再写一套。

这就是痛点:每加一个新工具,就要跟所有服务重新对接

N 个工具 × M 个服务 = N×M 套代码。

MCP 把这个复杂度从 N×M 降到 N+M:

左边任意一个 AI 客户端,通过 MCP 协议,就能调用右边任意一个服务。加一个服务,所有客户端都能用。

一个协议,搞定所有工具。


二、5 分钟装一个 MCP

理论讲完了,动手装一个。以 Excel MCP 为例——不需要装 Excel,装完就能让 AI 直接操作你的表格。

第一步:装 uv

pip install uv

验证:

uv--version

第二步:测试能跑

uvx excel-mcp-server stdio

挂起不报错 = 正常。Ctrl+C退出。

第三步:接入 Claude Code

claude 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 传输

三个关键点:

  1. --scope user不能省,不然换个目录就失效
  2. --分隔符必须有,不然 Claude 不知道哪部分是启动命令
  3. 装完必须重启,不然 Claude 读不到新配置

Windows 用户注意:这条命令不需要cmd /c,因为uvx是原生可执行文件。只有npx才需要cmd /c包装。


四、本地 MCP 和远程 MCP 有什么区别

MCP 本身不区分本地/远程,它只定义了传输层——数据怎么在 AI 和 Server 之间传。

本地(stdio)

AI 客户端 ──启动进程──→ MCP Server(你电脑上的进程) ←──stdin/stdout──
  • Server 是你电脑上的独立进程
  • 数据走进程间通信,不经过网络
  • 能读你本地文件
  • 断网也能用

远程(HTTP)

AI 客户端 ──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.so
  • PyPI 搜索
  • Awesome MCP