MCP-Skill-CLI三層架構詳解:三大廠開源CLI打通AI Agent落地最后一公里

三大廠同周開源CLI:MCP-Skill-CLI三層棧成型,Agent落地最后一公里打通了
想搭一個能自動處理飛書審批、同步釘釘日程、還能在企微群里發報表的AI Agent?以前你得對接三套SDK、處理三種鑒權、寫三遍業務邏輯。
現在,三大廠同時開源CLI,意味著MCP-Skill-CLI三層商用棧首次完整成型。今天拆解這套架構,給你一個可復制的"AI自動化賺錢"路徑。
一、先搞清楚這三層到底是什么
┌─────────────────────────────────────────────┐
│ 你的 AI Agent / 大模型 │
│ (Claude、GPT、本地模型等) │
└─────────────────┬───────────────────────────┘
│ MCP 協議(標準通信層)
▼
┌─────────────────────────────────────────────┐
│ Skill 插件層 │
│ 飛書Skill / 釘釘Skill / 企微Skill │
│ (封裝業務能力:審批、日程、消息、文檔) │
└─────────────────┬───────────────────────────┘
│ CLI 執行層
▼
┌─────────────────────────────────────────────┐
│ CLI(命令行工具) │
│ lark-cli / ding-cli / wecom-cli │
│ (本地執行、鑒權、日志、錯誤處理) │
└─────────────────────────────────────────────┘MCP(Model Context Protocol) 是Anthropic提出的開放協議,定義了大模型和外部工具之間的通信標準。你可以理解為"AI世界的USB接口"——模型不需要知道工具怎么實現,只需要按協議調用。
Skill 是業務能力的封裝。一個飛書Skill可能包含create_approval、send_message、query_calendar等原子操作。它是MCP協議的具體實現載體。
CLI 是這次開源的核心。它是執行層——Skill定義了"能做什么",CLI負責"怎么做"。鑒權、重試、日志、本地緩存,全部在CLI層處理。
三層分工清晰:MCP管通信,Skill管能力,CLI管執行。
二、為什么CLI是關鍵拼圖?
之前MCP生態有個尷尬問題:協議定了,Skill也寫了,但實際跑起來還是得自己處理token刷新、網絡重試、日志追蹤這些臟活。
CLI開源解決了三個核心痛點:
1. 鑒權標準化
# 以前:每個平臺自己寫OAuth流程
# 現在:一條命令搞定
lark-cli auth login --app-id cli_xxx --app-secret xxx
ding-cli auth login --app-key xxx --app-secret xxx
wecom-cli auth login --corp-id xxx --agent-id xxxCLI內置了完整的OAuth2流程,token自動刷新,開發者不用再處理access_token過期這種經典bug。
2. 調試可視化
# 實時查看Skill調用鏈路
lark-cli skill call create_approval \
--params '{"title":"報銷","amount":5000}' \
--verbose --trace-id abc123每個Skill調用都有trace-id,出了問題直接定位,不用翻日志猜。
3. 本地沙箱
CLI支持--dry-run模式,Skill調用不會真正執行,方便開發階段測試。
三、實戰案例:跨平臺數據流自動化,月省40小時
場景:某電商運營團隊,每天需要從釘釘審批流中提取采購數據→同步到飛書多維表格→在企微群發送當日匯總。
以前的做法:人工導出Excel,手動粘貼,每天花1.5小時,還經常出錯。
用MCP-Skill-CLI棧改造后:
# main.py - 跨平臺數據流編排
import subprocess
import json
from datetime import datetime
def get_ding_approvals():
"""從釘釘獲取今日審批數據"""
result = subprocess.run(
["ding-cli", "skill", "call", "query_approvals",
"--params", json.dumps({
"process_code": "PROC-采購審批",
"start_time": datetime.now().strftime("%Y-%m-%d"),
"status": "approved"
}), "--output", "json"],
capture_output=True, text=True
)
return json.loads(result.stdout)

def sync_to_lark(approvals):
"""同步到飛書多維表格"""
records = []
for item in approvals:
records.append({
"fields": {
"采購單號": item["business_id"],
"金額": item["amount"],
"申請人": item["applicant"],
"審批時間": item["approve_time"]
}
})
subprocess.run(
["lark-cli", "skill", "call", "batch_create_records",
"--params", json.dumps({
"app_token": "bascnXXX",
"table_id": "tblXXX",
"records": records
})]
)
return len(records)
def notify_wecom(count, total_amount):
"""企微群發送匯總"""
subprocess.run(
["wecom-cli", "skill", "call", "send_text_message",
"--params", json.dumps({
"chat_id": "wrXXXXXXXX",
"content": f"?? 今日采購審批匯總\n"
f"? 已審批單數:{count}\n"
f"?? 總金額:¥{total_amount:,.2f}\n"
f"? 數據已同步至飛書表格"
})]
)
if __name__ == "__main__":
approvals = get_ding_approvals()
count = sync_to_lark(approvals)
total = sum(item["amount"] for item in approvals)
notify_wecom(count, total)
print(f"? 完成:{count}條記錄,¥{total:,.2f}")部署步驟:
# 1. 安裝三個CLI
npm install -g @dingtalk/cli @lark/cli @wecom/cli
# 2. 分別登錄授權
ding-cli auth login --app-key xxx --app-secret xxx
lark-cli auth login --app-id xxx --app-secret xxx
wecom-cli auth login --corp-id xxx --agent-id xxx
# 3. 設置定時任務(每天18:00執行)
# crontab -e
0 18 * * * /usr/bin/python3 /opt/automation/main.py >> /var/log/auto-sync.log 2>&1效果:
| 指標 | 改造前 | 改造后 |
|---|---|---|
| 每日耗時 | 1.5小時 | 0(全自動) |
| 錯誤率 | 約5% | 0% |
| 月節省人力 | - | 40小時 |
| 按運營時薪50元算 | - | 月省2000元 |
四、商業化思路:把自動化能力打包賣
這個案例只是起點。基于MCP-Skill-CLI棧,你可以做三件事賺錢:
1. 賣自動化模板(最快變現)
把上面的跨平臺數據流封裝成一鍵部署模板,在龍蝦市場上架。定價99-299元/套,目標客戶是中小企業運營團隊。
2. 做垂直行業Agent(中期價值)
比如針對電商行業的"采購-庫存-財務"全鏈路Agent,接入更多Skill(ERP、財務系統),打包成SaaS服務,按月收費。
3. 提供定制開發服務(高客單價)
幫企業基于這套棧定制內部自動化流程,單個項目報價5000-20000元。
下一步行動
- 今天:去GitHub搜三大廠CLI倉庫,
star并本地安裝,跑通auth login - 本周:挑一個你團隊的重復性工作(審批同步、報表匯總、消息通知),用上面的代碼模板搭一個最小可行版本
- 本月:把你的自動化方案封裝成Skill模板,上架到龍蝦平臺,驗證市場需求
三層棧已經成型,工具鏈已經就位。現在缺的不是技術,是你動手的那一下。