釘釘飛書(shū)企微同周開(kāi)源CLI工具,MCP生態(tài)三件套助力AI Agent落地

三大廠(chǎng)同周開(kāi)源CLI,MCP生態(tài)的“三件套”終于齊了
想用AI Agent打通釘釘/飛書(shū)/企微?以前你得啃三套API文檔,現(xiàn)在可能只需要一行命令。
上周,釘釘、飛書(shū)、企業(yè)微信幾乎同時(shí)開(kāi)源了各自的CLI工具。這不是巧合——它意味著MCP(Model Context Protocol)生態(tài)正從“協(xié)議規(guī)范”走向“開(kāi)發(fā)者可落地”的臨界點(diǎn)。
今天拆解三個(gè)東西:CLI、MCP Server、Skill,以及它們?nèi)绾谓M成AI Agent落地的“三件套”。
一、CLI:MCP Server的“一鍵啟動(dòng)器”
先說(shuō)痛點(diǎn):MCP Server雖然標(biāo)準(zhǔn)化了AI與外部服務(wù)的通信協(xié)議,但部署門(mén)檻不低——你得配置環(huán)境變量、處理認(rèn)證、管理進(jìn)程。對(duì)很多開(kāi)發(fā)者來(lái)說(shuō),光這一步就勸退了。
CLI的出現(xiàn),本質(zhì)上是把部署復(fù)雜度壓縮成一行命令。
# 以前:手動(dòng)配置MCP Server連接釘釘
# 現(xiàn)在:
npx @dingtalk/cli mcp start --token YOUR_TOKEN三大廠(chǎng)開(kāi)源的CLI都做了同一件事:預(yù)置了認(rèn)證流程、連接池管理、錯(cuò)誤重試。你不需要理解OAuth的每一個(gè)細(xì)節(jié),CLI幫你封裝好了。
以釘釘CLI為例,它的核心能力:
// 釘釘CLI提供的MCP Server啟動(dòng)邏輯(簡(jiǎn)化版)
const { DingtalkMCPServer } = require('@dingtalk/mcp-server');
const server = new DingtalkMCPServer({
appId: process.env.DINGTALK_APP_ID,
appSecret: process.env.DINGTALK_APP_SECRET,
// CLI自動(dòng)處理token刷新
autoRefreshToken: true
});
// 暴露標(biāo)準(zhǔn)化的MCP工具
server.tool('send_message', {
description: '發(fā)送釘釘消息',
parameters: {
chatId: { type: 'string', required: true },
content: { type: 'string', required: true }
}
}, async ({ chatId, content }) => {
// 實(shí)際調(diào)用釘釘API
return await dingtalkClient.messages.send({ chatId, content });
});
server.start({ port: 3001 });關(guān)鍵點(diǎn):CLI不是替代MCP Server,而是讓MCP Server的啟動(dòng)和管理變得“無(wú)感”。開(kāi)發(fā)者可以把精力放在業(yè)務(wù)邏輯上,而不是基礎(chǔ)設(shè)施上。
二、Skill:跨平臺(tái)復(fù)用的“能力單元”
如果說(shuō)CLI解決了“怎么啟動(dòng)”的問(wèn)題,Skill解決的是“怎么復(fù)用”。
Skill的本質(zhì):把一個(gè)完整的業(yè)務(wù)能力(比如“發(fā)送審批通知”)封裝成標(biāo)準(zhǔn)化的MCP工具描述,包含輸入輸出schema、依賴(lài)聲明、版本管理。
// 一個(gè)典型的Skill定義
{
"name": "approval_notification",
"version": "1.2.0",
"description": "發(fā)送審批通知到指定平臺(tái)",
"platforms": ["dingtalk", "feishu", "wecom"],
"parameters": {
"platform": { "type": "string", "enum": ["dingtalk", "feishu", "wecom"] },
"userId": { "type": "string" },
"approvalId": { "type": "string" },
"message": { "type": "string" }
},
"dependencies": ["@dingtalk/cli", "@feishu/cli", "@wecom/cli"]
}跨平臺(tái)復(fù)用的關(guān)鍵:Skill定義了“做什么”,而具體“怎么做”由各平臺(tái)的CLI/MCP Server實(shí)現(xiàn)。同一個(gè)Skill,調(diào)用釘釘時(shí)走釘釘?shù)腁PI,調(diào)用飛書(shū)時(shí)走飛書(shū)的API——對(duì)上層Agent來(lái)說(shuō),接口完全一致。
實(shí)際開(kāi)發(fā)中,你可以這樣組合Skill:
// Agent調(diào)用Skill的示例
const { SkillRunner } = require('@mcp/skill-runner');
const runner = new SkillRunner();
// 同一個(gè)Skill,不同平臺(tái)
await runner.run('approval_notification', {
platform: 'dingtalk', // 切換平臺(tái)只需改這一行
userId: 'user123',
approvalId: 'approval_456',
message: '請(qǐng)審批:Q2預(yù)算申請(qǐng)'
});三、“三件套”實(shí)戰(zhàn):構(gòu)建跨平臺(tái)自動(dòng)化工作流
現(xiàn)在把CLI、MCP Server、Skill串起來(lái),看一個(gè)真實(shí)場(chǎng)景:跨平臺(tái)審批聚合。
需求:用戶(hù)在釘釘、飛書(shū)、企微提交的審批,統(tǒng)一匯總到一個(gè)AI Agent,Agent自動(dòng)分類(lèi)、打標(biāo)、轉(zhuǎn)發(fā)給對(duì)應(yīng)負(fù)責(zé)人。
架構(gòu):
[釘釘CLI] → [釘釘MCP Server] ↘
[飛書(shū)CLI] → [飛書(shū)MCP Server] → [統(tǒng)一審批聚合Agent] → [智能分發(fā)]
[企微CLI] → [企微MCP Server] ↗實(shí)現(xiàn)步驟:
Step 1:?jiǎn)?dòng)三個(gè)MCP Server
# 終端1
npx @dingtalk/cli mcp start --port 3001
# 終端2
npx @feishu/cli mcp start --port 3002
# 終端3
npx @wecom/cli mcp start --port 3003Step 2:配置Agent連接多個(gè)MCP Server
// agent-config.yaml
mcpServers:
dingtalk:
url: http://localhost:3001
skills: ["approval_notification", "get_approval_list"]
feishu:
url: http://localhost:3002
skills: ["approval_notification", "get_approval_list"]
wecom:
url: http://localhost:3003
skills: ["approval_notification", "get_approval_list"]Step 3:Agent業(yè)務(wù)邏輯
// 聚合Agent核心邏輯
class ApprovalAggregator {
async processApproval(platform, approvalData) {
// 1. 統(tǒng)一格式
const normalized = this.normalize(platform, approvalData);
// 2. AI分類(lèi)(調(diào)用Claude/AI Agent平臺(tái))
const category = await this.classifyWithAI(normalized.content);
// 3. 根據(jù)分類(lèi)路由到負(fù)責(zé)人
const handler = this.getHandler(category);
// 4. 通過(guò)對(duì)應(yīng)平臺(tái)CLI發(fā)送通知
await this.mcpClients[handler.platform].callSkill(
'approval_notification',
{
userId: handler.userId,
message: `新審批 [${category}]: ${normalized.title}`
}
);
}
}四、商業(yè)化路徑:從工具到服務(wù)
這套“三件套”不只是技術(shù)方案,它打開(kāi)了幾個(gè)商業(yè)化方向:
方向1:Skill市場(chǎng)
把高頻場(chǎng)景封裝成付費(fèi)Skill。比如“跨平臺(tái)考勤匯總”、“多平臺(tái)客戶(hù)消息聚合”,定價(jià)按調(diào)用次數(shù)或訂閱制。
方向2:垂直行業(yè)Agent
基于三件套快速搭建行業(yè)解決方案。比如零售行業(yè)的“多平臺(tái)庫(kù)存同步Agent”,教育行業(yè)的“家校多平臺(tái)通知Agent”。
方向3:托管服務(wù)
幫企業(yè)部署和維護(hù)這套架構(gòu),收取技術(shù)服務(wù)費(fèi)+年度運(yùn)維費(fèi)。
一個(gè)可復(fù)制的賺錢(qián)案例:
某開(kāi)發(fā)者用這套架構(gòu)做了“多平臺(tái)客服聚合Agent”,把釘釘、飛書(shū)、企微的客戶(hù)咨詢(xún)統(tǒng)一接入,AI自動(dòng)回復(fù)常見(jiàn)問(wèn)題,復(fù)雜問(wèn)題轉(zhuǎn)人工。部署成本約2000元/月(云服務(wù)器),向中小企業(yè)收費(fèi)3000-5000元/月,目前已服務(wù)23家企業(yè),月利潤(rùn)約7萬(wàn)元。
下一步行動(dòng)
- 今天:選一個(gè)平臺(tái)(建議從釘釘開(kāi)始,文檔最全),用CLI啟動(dòng)你的第一個(gè)MCP Server
- 本周:封裝一個(gè)你常用業(yè)務(wù)場(chǎng)景的Skill,測(cè)試跨平臺(tái)調(diào)用
- 本月:找一個(gè)垂直場(chǎng)景,用三件套搭建MVP,驗(yàn)證付費(fèi)意愿
CLI讓MCP Server觸手可及,Skill讓能力可復(fù)用,三件套讓AI Agent真正落地。現(xiàn)在入場(chǎng),正是時(shí)候。