
文章目录
- 1. 一句话理解
- 2. 类比理解
- 3. 架构区别
- 4. 为什么 MCP 火了
- 5. Claude Code 为什么大量使用 MCP
- 6. 二者关系
- 7. Agent 时代的典型架构
- 8. 通俗的理解
- 9. Claude Code 的真实情况
- 10. 最终记忆口诀
- 疑问:CLI 能 git,MCP 也能 GitHub,那到底区别在哪?
CLI 和 MCP 经常一起出现,但它们根本不是同一个层面的东西。
可以理解成:
CLI 是“操作方式”
MCP 是“能力接口标准”
1. 一句话理解

假设你雇了一个 AI 程序员。
CLI 相当于:
给 AI 一个键盘和终端
AI 可以执行:
ls
cd project
git status
python train.py
Claude Code、Gemini CLI、OpenAI Codex CLI 都属于这种模式。
MCP(Model Context Protocol)相当于:
给 AI 发工作证,让它能进入各种系统
例如:
- GitHub
- Notion
- Jira
- Slack
- 数据库
- 浏览器
AI 不再只能敲命令。
还能直接调用:
GitHub.get_pull_request()
Notion.search_page()
Jira.create_ticket()
Database.query()
2. 类比理解
把 AI 当员工。
没有 MCP,AI 只有一台电脑。
它只能:
git clone ...
grep ...
cat ...
像一个实习生。
有 MCP,AI 获得各种系统权限。
它可以:
读取 Jira 需求
查看 GitHub PR
查询数据库
读取 Notion 文档
发送 Slack 消息
像一个正式员工。
3. 架构区别
CLI
┌─────────┐
│ AI │
└────┬────┘
│
▼
Terminal
│
▼
Linux命令
AI 通过 Shell 操作世界。
MCP
┌─────────┐
│ AI │
└────┬────┘
│
▼
MCP Client
│
┌───┼─────────┐
▼ ▼ ▼
GitHub Notion Database
MCP MCP MCP
Server Server Server
AI 通过 MCP 调用外部系统。
4. 为什么 MCP 火了
过去 Agent 经常这样:
def github_search():
...
每家模型厂商:
- OpenAI 一套
- Anthropic 一套
- Google 一套
工具接口完全不同。
MCP 想解决:
一次开发
到处使用
类似:
- USB-C
- HTTP
- OpenAPI
统一工具调用协议。
MCP 最早由 Anthropic 提出,现在已经被大量 AI Agent 框架支持。
5. Claude Code 为什么大量使用 MCP
Claude Code 本质上:
CLI + MCP
结构如下:
Claude Code
│
├── Terminal
│
├── Git
│
├── Filesystem
│
└── MCP Servers
│
├── GitHub
├── Notion
├── Slack
└── Browser
所以它既能:
git diff
又能:
读取 GitHub Issue
这两种能力同时存在。
6. 二者关系
很多人误以为:
CLI vs MCP
其实不是竞争关系。
而是:
CLI = 操作入口
MCP = 扩展能力
关系更像:
浏览器 vs 插件
或者:
手机 vs APP
手机不是 APP。
APP 也不是手机。
但二者一起才能发挥价值。
7. Agent 时代的典型架构

当前最流行的 Agent 架构基本都是:
LLM
│
┌────────┴────────┐
▼ ▼
CLI MCP
│ │
▼ ▼
Linux命令 外部系统
-
CLI 负责本地操作
- 写代码
- 编译
- 运行
- Git
-
MCP 负责外部连接
- GitHub
- Jira
- Notion
- Slack
- 数据库
所以很多人会说:
CLI 是 Agent 的手脚,MCP 是 Agent 的神经网络接口。
前者让 AI 能干活,后者让 AI 能接入整个数字世界。
8. 通俗的理解

可以把 AI 想象成一个机器人同学。
(1)场景一:只有 CLI
老师说:
帮我整理教室。
机器人同学只能自己动手。
它会:
打开抽屉
整理书本
擦黑板
扫地
这就像 CLI。
CLI(命令行)就是:
AI 自己动手操作电脑。
例如:
ls
mkdir
cp
python train.py
相当于机器人:
开门
搬桌子
拿书
扫地
都是自己干。
(2)场景二:有了 MCP
老师又说:
顺便看看图书馆有没有《西游记》,再问问校长明天放不放假。
机器人傻眼了。
因为:
- 图书馆不在教室
- 校长办公室也不在教室
它进不去。
这时候给机器人发了几张通行证:
图书馆通行证
校长办公室通行证
广播室通行证
有了这些证件:
查询图书馆
联系校长
发送广播
都可以了。
这就是 MCP。
(3)再举个游戏例子
假设 AI 在玩《我的世界》。
CLI 相当于:
挖矿
砍树
造房子
自己动手。
MCP 相当于:
打开仓库
查看地图
联系队友
访问服务器
连接外部系统。
9. Claude Code 的真实情况
Claude Code 就像一个机器人程序员。
它有 CLI 能自己敲命令:
git status
python train.py
vim main.py
相当于:
写作业
整理书包
做实验
MCP 还能访问外部工具:
GitHub
Notion
Jira
Slack
相当于:
图书馆
老师办公室
学校广播站
一个完整故事
假设老师说:
修复第 35 个 Bug,然后告诉开发组。
没有 MCP
AI:
我不知道 Bug 35 是什么。
因为 Bug 在 Jira 里面。
只有 MCP
AI:
我看到了 Bug。
但不会改代码。
CLI + MCP
AI:
第一步
通过 MCP:
读取 Jira
发现:
Bug #35
登录页面崩溃
第二步
通过 CLI:
grep login
vim login.py
修改代码。
第三步
通过 CLI:
pytest
git commit
测试并提交。
第四步
通过 MCP:
更新 Jira 状态
发送 Slack 消息
告诉大家:
Bug 已修复
10. 最终记忆口诀
记住这一句就够了:
CLI = 自己动手干活
MCP = 连接外部世界
再简单一点:
CLI 是手和脚
MCP 是各种通行证
AI 只有手脚(CLI),只能在自己房间里干活。
AI 有了通行证(MCP),才能去图书馆、办公室、仓库、数据库等各种地方拿信息。
所以现在最强的 Agent 基本都是:
大模型
+
CLI
+
MCP
也就是:
聪明的大脑
+
手脚
+
通行证
这才像一个真正能工作的 AI 程序员。
疑问:CLI 能 git,MCP 也能 GitHub,那到底区别在哪?
这是很多人刚接触 MCP 时最困惑的地方:
CLI 能 git,MCP 也能 GitHub,那到底区别在哪?
其实它们操作的根本对象不一样。
CLI 操作 Git 仓库
MCP 操作 GitHub 服务
Git 的例子最明显
(1)假设你想看一个 PR
CLI 方式
AI 需要:
git fetch
git checkout pr-123
git diff
git log
一步步操作。
像这样:
去仓库
拿文件
打开文件
比较差异
MCP 方式
直接:
github.get_pull_request(123)
立刻得到:
标题
作者
评论
Review状态
修改内容
(2)再看一个 Issue
假设:
Issue #35
登录页面崩溃
CLI
git grep login
grep "#35" .
到代码里找。
MCP
github.get_issue(35)
直接返回:
Issue内容
讨论记录
负责人
标签
(3)一个现实例子
你在公司。
领导说:
帮我看看这个 PR 为什么没过。
CLI
AI:
git clone ...
git checkout ...
git diff ...
自己分析代码。
它能看到:
代码变了什么
但看不到:
Review意见
审批状态
讨论记录
MCP
AI:
GitHub.get_pull_request()
直接看到:
Alice:
这里有空指针风险
Bob:
单元测试没过
Charlie:
请补文档
(4)更准确地说
CLI 操作的是:
本地仓库
.git
代码文件
日志
MCP 操作的是:
GitHub 服务
PR
Issue
Review
Comment
Workflow
Organization
(5)一个特别经典的区别
假设:
PR #456
CLI 能看到:
– a = b
+ a = c
知道代码改了啥。
MCP 能看到:
Alice:
这个改动导致线上事故
Bob:
不要合并
知道人为什么这么改。
(6)用现实世界理解
CLI 像什么?
像拿到一本书。
自己看
自己翻
自己找
MCP 像什么?
像能直接问作者。
这段为什么这么写?
作者:
因为第三章埋了伏笔。
(7)Claude Code 实际上怎么干
很多时候是两者一起用。
例如:
第一步(MCP)
读取 GitHub Issue
得到:
用户反馈登录崩溃
第二步(CLI)
grep login .
找到代码。
第三步(CLI)
pytest
验证修复。
第四步(MCP)
更新 Issue 状态
通知团队。
所以更准确的说法是:
CLI 看代码
MCP 看平台
或者:
CLI 操作 Git 仓库
MCP 操作 GitHub 服务
虽然都跟 Git 有关,但关注层级完全不同:
CLI -> Repository(仓库)
MCP -> Collaboration(协作平台)
这也是为什么现在很多 Agent 架构里会同时保留:
Git CLI
+
GitHub MCP
因为它们不是重复,而是互补。一个负责“改代码”,一个负责“理解团队正在干什么”。







