欢迎光临
我们一直在努力

【CLI】CLI vs MCP: A Simple Guide

在这里插入图片描述

文章目录

  • 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

因为它们不是重复,而是互补。一个负责“改代码”,一个负责“理解团队正在干什么”。

赞(0)
未经允许不得转载:171主机测评 » 【CLI】CLI vs MCP: A Simple Guide
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址